PDA

View Full Version : iOS 6.0 problem with keyboard in Ext.Msg.prompt



fairport
4 Oct 2012, 3:41 AM
We discovered today that using iOS 6.0 on both an iPhone & an iPad tapping the keyboard on a Prompt field in a message box does nothing! No text is being typed into the prompt !!

Wonder if there's a way around this.

For now we've done a if (Ext.is.iOS) .. and use a different bit of handling to work around it.

BTW, we're using Phonegap 2.0.0 as well

mitchellsimoens
9 Oct 2012, 5:33 AM
Using Sencha Touch 1.1.1 with my iPhone 4S running iOS 6 Ext.Msg.prompt is working for me. I did not wrap in Phonegap to see if this is a ST bug.

fairport
9 Oct 2012, 5:47 PM
mmm....

We _are_ using Phonegap (2.1.0)... and it was working fine prior to iOS 6.0
Both iPhones & iPads are affected.

... And we have discovered this afternoon that Chrome (Version 22.0.1229.92 m) also fails!

Safari 5.1.7 is OK though ! ?

We're in trouble Mitchell, because the pop-up data entry system in your grid works with this !

ghuntley
10 Oct 2012, 6:50 PM
I can vouch that this problem exists on iOS 6 w/ Sencha Touch v1.1.1 (release) and further confirm that this is reproducible within chrome v23.0.1271.26.

https://github.com/ghuntley/sencha-touch-111-ios6-testcase/blob/master/examples/testcase/index.js

Overview
- Popup dialog appears.
- User taps on input field.
- iOS keyboard appears.
- User inputs data using iOS keyboard.
- User inputted data is discard, input field is not updated to reflect input.

fairport
10 Oct 2012, 8:51 PM
Thank you!

Any clues on an override or fix for it?
I have managed a workaround for everything except for the grid editor

Please Note: My workaround was not actually a fix for this problem... I simply used a different technique to achieve the same outcome... which actually is nowhere near as good as using the Msg.prompt

fairport
11 Oct 2012, 10:04 PM
Mitchell... For what it's worth...
By commenting out this little bit of code in sencha-touch-debug.js
... around line 26308
the problem goes away



for (attrName in attribs) {
if (attribs.hasOwnProperty(attrName)) {
attrib = attribs[attrName];
config.input.dom.setAttribute(
attrName.toLowerCase(),
/* /^auto/i.test(attrName) ? */ (assert.test(attrib+'') ? 'on' : 'off' ) //: attrib
);
}
}

hotdp
19 Oct 2012, 1:47 AM
Still no overrides?

profunctional
27 Oct 2012, 4:50 AM
Same prob here. Only in ios6.

profunctional
27 Oct 2012, 5:08 AM
Ext.Msg.prompt doesn't work in Chrome either.

hotdp
27 Oct 2012, 5:25 AM
Ext.Msg.prompt doesn't work in Chrome either.

Here is an override:



var protoShow = Ext.MessageBox.prototype.show;

Ext.override(Ext.MessageBox, {
show : function(config) {
protoShow.call(this, config);
if (this.inputsEl && (config.multiLine || config.prompt)) {
config.input.dom.setAttribute('maxLength', 100);
}
return this;
}
});