Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 281432c4 authored by Derek Sollenberger's avatar Derek Sollenberger
Browse files

Delay sending Plugin Draw event until the surface is ready.

bug: 5436630
Change-Id: Ib66859b94b60fc5ea2a8db5e2e40690a084d5b0a
parent 9dcd5afa
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -7415,6 +7415,10 @@ public class WebView extends AbsoluteLayout
        }
    }

    void sendPluginDrawMsg() {
        mWebViewCore.sendMessage(EventHub.PLUGIN_SURFACE_READY);
    }

    /**
     * Returns plugin bounds if x/y in content coordinates corresponds to a
     * plugin. Otherwise a NULL rectangle is returned.
+7 −0
Original line number Diff line number Diff line
@@ -1032,6 +1032,8 @@ public final class WebViewCore {

        static final int EXECUTE_JS = 194;

        static final int PLUGIN_SURFACE_READY = 195;

        // private message ids
        private static final int DESTROY =     200;

@@ -1587,6 +1589,10 @@ public final class WebViewCore {
                            nativeFullScreenPluginHidden(msg.arg1);
                            break;

                        case PLUGIN_SURFACE_READY:
                            nativePluginSurfaceReady();
                            break;

                        case ADD_PACKAGE_NAMES:
                            if (BrowserFrame.sJavaBridge == null) {
                                throw new IllegalStateException("No WebView " +
@@ -2826,6 +2832,7 @@ public final class WebViewCore {
    private native void nativeResume();
    private native void nativeFreeMemory();
    private native void nativeFullScreenPluginHidden(int npp);
    private native void nativePluginSurfaceReady();
    private native boolean nativeValidNodeAndBounds(int frame, int node,
            Rect bounds);