Sencha touch 2 apps and scrolling issue in Chrome/Android

I was revisiting a conference app I developed in Sencha Touch 2.3 (ST from this point onwards), and realised that the scroll for a couple of lists have suddenly stopped working. This was really weird as the scroll used to work fine and nothing has changed on the code side. This made me think whether the issue persists in how Chrome is rendering the list. I checked the same thing in Safari and it was working fine, which made me realise that the issue has to do with Chrome and the way the WebView renders the app on Android. A bit more digging made me realise that Chrome 43+ has caused this issue. There are two solutions to the problem. 1. Upgrade to ST 2.4.2 which resolves the problem. 2. Use a couple of overrides which are available here: http://www.joshmorony.com/the-chrome-43-update-broke-sencha-touch-apps-heres-how-to-fix-it/ I have personally taken option 2, as I want to retain my app on ST 2.3.1. The solution has worked simply out of the box and a big thanks go to Josh Morony.

Sencha Touch 2.3, hasMany association, and duplication of store entries

If you are working with Sencha Touch 2.3 (ST from this point onwards), then you may have developed a love/hate relationship with the platform like myself. Some aspects of the framework are great, whereas some others are sadly atrocious. The lack of coherent document, and the wide variety of conflicting information also does not help. In a recent incident, I am using a hasMany association in the model and found a peculiar issue happening. To give you background of the issue, I have a model called Session which has a hasMany relationship with another model called Participant. Both models below: The Session model: Ext.define('MyApp.model.Session', { extend: 'Ext.data.Model', requires: ['MyApp.model.Participant'], config: { idProperty: 'id', fields: [ { name: 'id', type: 'int' }, { name: 'number', type: 'string' }, { name: 'time', type: 'string' }, { name: 'date', type: 'string' }, { name: 'day', type: 'string' }, { name: 'title', type: 'string' }, { name: 'abstract', type: 'string' }, { name: 'track', type: 'string' }, { name: 'room', type: 'string' }, { name: 'building', type: 'string' } ], hasMany: { model: 'MyApp.model.Participant', name: 'participants', primaryKey: 'id', foreignKey: 'session_id', associationKey: 'participants' } } }); The Participant model: Ext.define('MyApp.model.Participant', { extend: 'Ext.data.Model', config: {

Continue Reading

Site Footer

Sliding Sidebar

About Me

About Me

Strategy, Leadership, Innovation and Code Monkeyism

Social Profiles

Latest Tweets