Thank you for reporting this bug. We will make it our priority to review this report.
-
Touch Premium Member
Chrome 60 on Android, wont load
Touch version tested: * Touch 2.4
Browser versions or Packager version tested against:
Chrome
Sencha Native
Device and OS tested against:
Android 8,7.X
What theme are you using for your application:
Cupertino Classic
Description:
When loading the web site you get, the 3 blue loading dots, and a console error "Cannot read property '1' of null"
Solution:
The Chrome 60 user agent string now contains OPR, Full string: "Mozilla/5.0 (Linux; Android 8.0.0; Pixel XL Build/OPR6.170623.012) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.116 Mobile Safari/537.36"
I have added a "ChomeMobile" condition to the Opera check so:
Code:
if (userAgent.match(/OPR/)) {
browserName = 'Opera';
browserMatch = userAgent.match(/OPR\/(\d+.\d+)/) || userAgent.match(/OPR\/\d+.\d+/);
browserVersion = new Ext.Version(browserMatch[1]);
}
becomes
Code:
if (browserName !== 'ChromeMobile' && userAgent.match(/OPR/)) {
browserName = 'Opera';
browserMatch = userAgent.match(/OPR\/(\d+.\d+)/) || userAgent.match(/OPR\/\d+.\d+/);
browserVersion = new Ext.Version(browserMatch[1]);
}
I hope this helps others
Adam
-
Ext JS Premium Member
How do you incorporate this fix in ST 2.4? Tried overriding by putting in app/overrides but it is not picked up.
-
Touch Premium Member
I'm not sure, I think i tried to override but was also unable.
I have just modified "touch\src\env\Browser.js"
Sorry i couldn't be of more help.
-
Ext JS Premium Member
Figured it out. Had to override the regular way (copying source file into app/override/env/Browser.js, applying fix, specifying override as normal) but also to explicilty include this overridden class into my main app.js ( require: '<APPNAME>.override.env.Browser').
Great find btw, thanks for posting it.
-

Originally Posted by
Spenna
specifying override as normal
@Spenna: Do you mind sharing your file app/override/env/Browser.js? I don't get how to override this kind of core file that is not an Ext JS class but a normal function. Thanks!