Title: [121057] trunk/Source/WebKit/chromium
Revision
121057
Author
[email protected]
Date
2012-06-22 14:28:33 -0700 (Fri, 22 Jun 2012)

Log Message

[Chromium] Browser Plugin: Expose advanceFocus to WebKit API so that guests can advance focus of theirs embedders
https://bugs.webkit.org/show_bug.cgi?id=88827

Reviewed by Darin Fisher.

A browser plugin needs to be able to tells its embedder when the guest
is done tabbing through controls and wants its embedder to advance its
tab position.

* public/WebView.h:
(WebView):
(WebKit::WebView::advanceFocus):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::advanceFocus):
(WebKit):
* src/WebViewImpl.h:
(WebViewImpl):

Modified Paths

Diff

Modified: trunk/Source/WebKit/chromium/ChangeLog (121056 => 121057)


--- trunk/Source/WebKit/chromium/ChangeLog	2012-06-22 20:59:18 UTC (rev 121056)
+++ trunk/Source/WebKit/chromium/ChangeLog	2012-06-22 21:28:33 UTC (rev 121057)
@@ -1,3 +1,23 @@
+2012-06-22  Fady Samuel  <[email protected]>
+
+        [Chromium] Browser Plugin: Expose advanceFocus to WebKit API so that guests can advance focus of theirs embedders
+        https://bugs.webkit.org/show_bug.cgi?id=88827
+
+        Reviewed by Darin Fisher.
+
+        A browser plugin needs to be able to tells its embedder when the guest
+        is done tabbing through controls and wants its embedder to advance its
+        tab position.
+
+        * public/WebView.h:
+        (WebView):
+        (WebKit::WebView::advanceFocus):
+        * src/WebViewImpl.cpp:
+        (WebKit::WebViewImpl::advanceFocus):
+        (WebKit):
+        * src/WebViewImpl.h:
+        (WebViewImpl):
+
 2012-06-22  Jeff Timanus  <[email protected]>
 
         [Chromium] Change implementing a fast-path for copying GPU-accelerated Canvas2D instances to WebGL textures.

Modified: trunk/Source/WebKit/chromium/public/WebView.h (121056 => 121057)


--- trunk/Source/WebKit/chromium/public/WebView.h	2012-06-22 20:59:18 UTC (rev 121056)
+++ trunk/Source/WebKit/chromium/public/WebView.h	2012-06-22 21:28:33 UTC (rev 121057)
@@ -191,7 +191,11 @@
     // window space.
     virtual void scrollFocusedNodeIntoRect(const WebRect&) { }
 
+    // Advance the focus of the WebView forward to the next element or to the
+    // previous element in the tab sequence (if reverse is true).
+    virtual void advanceFocus(bool reverse) { }
 
+
     // Zoom ----------------------------------------------------------------
 
     // Returns the current zoom level.  0 is "original size", and each increment

Modified: trunk/Source/WebKit/chromium/src/WebViewImpl.cpp (121056 => 121057)


--- trunk/Source/WebKit/chromium/src/WebViewImpl.cpp	2012-06-22 20:59:18 UTC (rev 121056)
+++ trunk/Source/WebKit/chromium/src/WebViewImpl.cpp	2012-06-22 21:28:33 UTC (rev 121057)
@@ -2399,6 +2399,11 @@
     frame->view()->scrollElementToRect(elementNode, IntRect(rect.x, rect.y, rect.width, rect.height));
 }
 
+void WebViewImpl::advanceFocus(bool reverse)
+{
+    page()->focusController()->advanceFocus(reverse ? FocusDirectionBackward : FocusDirectionForward, 0);
+}
+
 double WebViewImpl::zoomLevel()
 {
     return m_zoomLevel;

Modified: trunk/Source/WebKit/chromium/src/WebViewImpl.h (121056 => 121057)


--- trunk/Source/WebKit/chromium/src/WebViewImpl.h	2012-06-22 20:59:18 UTC (rev 121056)
+++ trunk/Source/WebKit/chromium/src/WebViewImpl.h	2012-06-22 21:28:33 UTC (rev 121057)
@@ -195,6 +195,7 @@
     virtual void clearFocusedNode();
     virtual void scrollFocusedNodeIntoView();
     virtual void scrollFocusedNodeIntoRect(const WebRect&);
+    virtual void advanceFocus(bool reverse);
     virtual double zoomLevel();
     virtual double setZoomLevel(bool textOnly, double zoomLevel);
     virtual void zoomLimitsChanged(double minimumZoomLevel,
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to