title: keyboard events and resizing Cordova webview when keyboard is shown
body: <p>I have an application that needs to have two separate behaviours when the keyboard is shown:</p>
  
  <ul>
  <li>Certain controls need to be hidden, for which purpose a keyboard show/hide event is required (a requirement discussed in <a href="https://stackoverflow.com/questions/20081949/detecting-android-softkeyboard-show-hide-events">this question</a>, among others).</li>
  <li>I need the web view to resize so that controls which are aligned with the bottom of the view remain visible (a requirement discussed in <a href="https://stackoverflow.com/questions/31179470/how-to-resize-web-view-when-keyboard-appears-on-ios-cordova">this question</a>).</li>
  </ul>
  
  <p>The common suggestion for the former is to use the <code>ionic-plugin-keyboard</code> plugin (despite this not being an ionic app), which provides events <code>native.keyboardshow</code> and <code>native.keyboardhide</code> that work in both iOS and Android for this purpose.</p>
  
  <p>The common suggestion for the latter is to use the <code>cordova-plugin-keyboard</code> plugin, which provides both a preference that can be configured using <code>config.xml</code> and a method that controls the setting at runtime.  While this plugin also includes events for detecting keyboard changes, these events are apparently only available under iOS, but I need my application to run on both iOS and Android.</p>
  
  <p>Unfortunately, these two plugins are not compatible: both define the same javascript interface object (<code>cordova.plugins.Keyboard</code>), so only one can exist in a project at any time.</p>
  
  <p>How can I get both of these behaviours working at the same time?</p>