That was a good read. Thanks for sharing, Kerri. I'll definitely have to try it 
out sometime. 




Also, I'm sorry if I came off negatively. I do really appreciate all the 
Cordova team does. :)



—
Sent from Mailbox

On Fri, Apr 17, 2015 at 3:22 AM, Kerri Shotts <kerrisho...@gmail.com>
wrote:

> Well, it’s been a while, but I finally found some time to work up some 
> keyboard avoidance examples.
> Here’s a link to the post on the forum: 
> https://groups.google.com/d/msg/phonegap/1nRXfhI7JtQ/ENPL-MNIadYJ, and the 
> corresponding repository: 
> https://github.com/kerrishotts/cordova-keyboard-example.
> From: Kerri Shotts <kerrisho...@gmail.com>
> Reply: Kerri Shotts <kerrisho...@gmail.com>>
> Date: March 30, 2015 at 11:05:28 PM
> To: dev@cordova.apache.org <dev@cordova.apache.org>>
> Subject:  Re: Keyboard plugin  
> I noticed this, actually, when working on one of my last books — the fix (or, 
> hack, rather) was to install the plugin from a specific commit that didn’t 
> bail if it thought iOS shrunk the view. It was frustrating at the time, but I 
> have since changed my opinion of KeyboardShinksView = true, on iOS anyway: 
> that’s just not how most native apps on iOS work.
> Typically, the size of the view never changes when the keyboard appears — if 
> you have a view with a tab bar at the bottom of the view and the keyboard 
> pops up, the tab bar doesn’t animate upwards — it stays behind the keyboard 
> and never budges. Instead the content area compensates by allowing additional 
> scrolling. If you have a translucent keyboard (like from the home screen), 
> this is most apparent (you can still tell the content exists below the 
> keyboard.
> So although convenient, it might also be why Apple removed this behavior in 
> later iOS versions: because it’s not the way native apps usually behave.
> I’m exploring various options, but I’m getting the most native behavior by 
> using a combination of the ionic keyboard plugin with scrolling disabled 
> while the keyboard is visible. Because the height of the keyboard is passed 
> to the event handler, I can then adjust the size of any scroll containers 
> (either by adding padding or by adjusting their heights). This was broken in 
> an earlier version of the plugin (wrong heights returned), but as of the 
> current version of the plugin, the heights appeared to be reported correctly. 
> It’s a bit more work on the dev’s part, and the plugin doesn’t work perfectly 
> in all cases (having a hardware keyboard attached still returns an incorrect 
> height). But the feeling is so much closer to native. I’m working up some 
> examples that I’ll post soon that demonstrate how it works.
> So, my personal preference would be to keep this out of core — if a dev wants 
> the shrinkView behavior, they can use a plugin that supports it.
> From: Andrew Grieve <agri...@chromium.org>
> Reply: dev@cordova.apache.org <dev@cordova.apache.org>>
> Date: March 30, 2015 at 7:33:28 PM
> To: dev <dev@cordova.apache.org>>
> Subject:  Re: Keyboard plugin
> I definitely agree that KeyboardShrinksView makes a tonne more sense for
> apps (as opposed to webpages), and it's what we use on Android. Shame they
> reversed the decision (I didn't actually realize that).
> One reason to keep it as a plugin is that the logic seems to be hard to get
> right and so needs to be tweaked frequently. Plugins let you iterate faster
> than if it were built-in.
> Still, I think we're hoping to reduce the number of plugins that we
> maintain as a part of the core Cordova project, since we really don't do a
> great job at giving them the attention that they deserve (just have a look
> at all the unaddressed PRs against them).
> One of the intended goals (at least IMO) of moving plugins to npm and
> npm-style-naming, is to make less distinction between "core" cordova
> plugins and community-maintained plugins, so that the higher-quality
> community-maintained plugins get more usage.
> Interested in what others think.
> On Mon, Mar 30, 2015 at 1:07 PM, Connor Pearson <cjp...@gmail.com> wrote:
>> Hi All,
>>
>> It's been a while since the keyboard plugin was discussed. As I understand
>> it, the plugin was moved to Cordova labs after iOS 7 made
>> KeyboardShrinksView the default behavior. Since iOS 7.1 and 8 have reversed
>> this decision, could we revisit this?
>>
>> I've done some work to re-enable KeyboardShrinksView for iOS > 7.0 and fix
>> some bugs, but is there any support for continuing to maintain this plugin?
>> If not, is there any way to merge the KeyboardShrinksView preference back
>> into cordova-ios? I think it's more commonly used and much more stable than
>> the HideKeyboardFormAccessoryBar preference. As a Cordova user, our app
>> depends on the shrink view behavior. Any thoughts?
>>
>> Thanks,
>> Connor
>>

Reply via email to