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

Commit b2601359 authored by Cary Clark's avatar Cary Clark
Browse files

add interface to return if (x/y) is a plugin

Use the nav cache to determine if a given
coordinate corresponds to a plugin.

Requires a companion change in external/webkit

bug:3331323
Change-Id: I07d7fdfd643768d600cd6ba81165fac8b553a77f
parent 0664c62c
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -6723,6 +6723,14 @@ public class WebView extends AbsoluteLayout
        }
    }

    /**
     * Returns true if x/y in content coordinates corresponds to a plugin.
     */
    boolean isPluginAt(int x, int y) {
        return nativePointInNavCache(x, y, mNavSlop) &&
                nativeCacheHitIsPlugin();
    }

    /*
     * Return true if the view (Plugin) is fully visible and maximized inside
     * the WebView.
@@ -8150,6 +8158,7 @@ public class WebView extends AbsoluteLayout
    }

    private native int nativeCacheHitFramePointer();
    private native boolean  nativeCacheHitIsPlugin();
    private native Rect nativeCacheHitNodeBounds();
    private native int nativeCacheHitNodePointer();
    /* package */ native void nativeClearCursor();