mirror of
https://github.com/apache/cordova-android.git
synced 2025-02-12 10:42:58 +08:00
Prevent NPE in case webview is lately initialized
(cherry picked from commit a9ebf50b86
)
This commit is contained in:
parent
8b3fa5c91e
commit
dd770ef303
@ -858,8 +858,8 @@ public class CordovaActivity extends Activity implements CordovaInterface {
|
|||||||
LOG.d(TAG, "Incoming Result");
|
LOG.d(TAG, "Incoming Result");
|
||||||
super.onActivityResult(requestCode, resultCode, intent);
|
super.onActivityResult(requestCode, resultCode, intent);
|
||||||
Log.d(TAG, "Request code = " + requestCode);
|
Log.d(TAG, "Request code = " + requestCode);
|
||||||
ValueCallback<Uri> mUploadMessage = this.appView.getWebChromeClient().getValueCallback();
|
if (appView != null && requestCode == CordovaChromeClient.FILECHOOSER_RESULTCODE) {
|
||||||
if (requestCode == CordovaChromeClient.FILECHOOSER_RESULTCODE) {
|
ValueCallback<Uri> mUploadMessage = this.appView.getWebChromeClient().getValueCallback();
|
||||||
Log.d(TAG, "did we get here?");
|
Log.d(TAG, "did we get here?");
|
||||||
if (null == mUploadMessage)
|
if (null == mUploadMessage)
|
||||||
return;
|
return;
|
||||||
@ -1079,9 +1079,7 @@ public class CordovaActivity extends Activity implements CordovaInterface {
|
|||||||
@Override
|
@Override
|
||||||
public boolean onKeyUp(int keyCode, KeyEvent event)
|
public boolean onKeyUp(int keyCode, KeyEvent event)
|
||||||
{
|
{
|
||||||
//Get whatever has focus!
|
if (appView != null && (appView.isCustomViewShowing() || appView.getFocusedChild() != null ) &&
|
||||||
View childView = appView.getFocusedChild();
|
|
||||||
if ((appView.isCustomViewShowing() || childView != null ) &&
|
|
||||||
(keyCode == KeyEvent.KEYCODE_BACK || keyCode == KeyEvent.KEYCODE_MENU)) {
|
(keyCode == KeyEvent.KEYCODE_BACK || keyCode == KeyEvent.KEYCODE_MENU)) {
|
||||||
return appView.onKeyUp(keyCode, event);
|
return appView.onKeyUp(keyCode, event);
|
||||||
} else {
|
} else {
|
||||||
@ -1099,10 +1097,8 @@ public class CordovaActivity extends Activity implements CordovaInterface {
|
|||||||
@Override
|
@Override
|
||||||
public boolean onKeyDown(int keyCode, KeyEvent event)
|
public boolean onKeyDown(int keyCode, KeyEvent event)
|
||||||
{
|
{
|
||||||
//Get whatever has focus!
|
|
||||||
View childView = appView.getFocusedChild();
|
|
||||||
//Determine if the focus is on the current view or not
|
//Determine if the focus is on the current view or not
|
||||||
if (childView != null && (keyCode == KeyEvent.KEYCODE_BACK || keyCode == KeyEvent.KEYCODE_MENU)) {
|
if (appView != null && appView.getFocusedChild() != null && (keyCode == KeyEvent.KEYCODE_BACK || keyCode == KeyEvent.KEYCODE_MENU)) {
|
||||||
return appView.onKeyDown(keyCode, event);
|
return appView.onKeyDown(keyCode, event);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
Loading…
Reference in New Issue
Block a user