WebKit Bugzilla
Attachment 341281 Details for
Bug 185617
: Keyboard focus should exit fullscreen.
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-185617-20180525075944.patch (text/plain), 7.02 KB, created by
Jeremy Jones
on 2018-05-25 07:59:45 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Jeremy Jones
Created:
2018-05-25 07:59:45 PDT
Size:
7.02 KB
patch
obsolete
>Subversion Revision: 231991 >diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog >index 3abbd15888ee227cd2c267ff839bc3e1edee6bea..f084763b9a992e1bdf08478a45bd9be05df4ee76 100644 >--- a/Source/WebKit/ChangeLog >+++ b/Source/WebKit/ChangeLog >@@ -1,3 +1,16 @@ >+2018-05-25 Jeremy Jones <jeremyj@apple.com> >+ >+ Keyboard focus should exit fullscreen. >+ https://bugs.webkit.org/show_bug.cgi?id=185617 >+ rdar://problem/34697938 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ While in element fullscreen, initiating keyboard focus should exit fullscreen. >+ >+ * WebProcess/WebPage/WebPage.cpp: >+ (WebKit::WebPage::elementDidFocus): >+ > 2018-05-18 Brian Burg <bburg@apple.com> > > [Cocoa] Add missing nullability annotations to _WKAutomationSessionDelegate >diff --git a/Source/WebKit/WebProcess/WebPage/WebPage.cpp b/Source/WebKit/WebProcess/WebPage/WebPage.cpp >index 84a43c919f74440b63724134e459c417e5bf98cb..1a5c338d10030c1d1b204c84fe424599ff211bb2 100644 >--- a/Source/WebKit/WebProcess/WebPage/WebPage.cpp >+++ b/Source/WebKit/WebProcess/WebPage/WebPage.cpp >@@ -4945,6 +4945,11 @@ void WebPage::elementDidFocus(WebCore::Node* node) > m_isAssistingNodeDueToUserInteraction |= m_userIsInteracting; > > #if PLATFORM(IOS) >+ >+#if ENABLE(FULLSCREEN_API) >+ node->document().webkitCancelFullScreen(); >+#endif >+ > ++m_currentAssistedNodeIdentifier; > AssistedNodeInformation information; > getAssistedNodeInformation(information); >diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog >index d872f0675d36a689129dc0937053e678a0edaab9..d52a2fc0f84ad1a56621af0a2e85e1414611b2dd 100644 >--- a/LayoutTests/ChangeLog >+++ b/LayoutTests/ChangeLog >@@ -1,3 +1,18 @@ >+2018-05-25 Jeremy Jones <jeremyj@apple.com> >+ >+ Keyboard focus should exit fullscreen. >+ https://bugs.webkit.org/show_bug.cgi?id=185617 >+ rdar://problem/34697938 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ While in element fullscreen, initiating keyboard focus should exit fullscreen. >+ >+ * TestExpectations: >+ * fullscreen/full-screen-exit-on-keyboard-focus-expected.txt: Added. >+ * fullscreen/full-screen-exit-on-keyboard-focus.html: Added. >+ * platform/ios-wk2/TestExpectations: >+ > 2018-05-18 Youenn Fablet <youenn@apple.com> > > NetworkLoadChecker should cancel its content extension retrieval task when being destroyed >diff --git a/LayoutTests/TestExpectations b/LayoutTests/TestExpectations >index 84cc00f7c0f3b253172e34170b7725cae5ececc4..ca799daa62d2f8bcf91c70746ab5a570d727710f 100644 >--- a/LayoutTests/TestExpectations >+++ b/LayoutTests/TestExpectations >@@ -110,6 +110,9 @@ http/tests/security/clipboard/drag-drop-html-cross-origin-iframe-in-same-origin. > quicklook [ Skip ] > http/tests/quicklook [ Skip ] > >+# Only iOS WebKit2 has this behavior >+fullscreen/full-screen-exit-on-keyboard-focus.html [ Skip ] >+ > # These tests are WebKit2-only > http/tests/appcache/decide-navigation-policy-after-delay.html [ Skip ] > http/tests/misc/will-send-request-with-client-provided-http-body.html [ Skip ] >diff --git a/LayoutTests/fullscreen/full-screen-exit-on-keyboard-focus-expected.txt b/LayoutTests/fullscreen/full-screen-exit-on-keyboard-focus-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..c728bc0a2712d834c2113d543f5fca6a77f03eb4 >--- /dev/null >+++ b/LayoutTests/fullscreen/full-screen-exit-on-keyboard-focus-expected.txt >@@ -0,0 +1,7 @@ >+This test requires UIScriptController to run. >+Click here for manual test. >+webkitfullscreenchange [object HTMLDivElement] >+Attempt to focus on editable content. >+webkitfullscreenchange null >+Done. >+ >diff --git a/LayoutTests/fullscreen/full-screen-exit-on-keyboard-focus.html b/LayoutTests/fullscreen/full-screen-exit-on-keyboard-focus.html >new file mode 100644 >index 0000000000000000000000000000000000000000..af8b43a56c25464dba69084174c42a41da2d494c >--- /dev/null >+++ b/LayoutTests/fullscreen/full-screen-exit-on-keyboard-focus.html >@@ -0,0 +1,83 @@ >+<!DOCTYPE html> >+ >+<html> >+<head> >+ <script> >+ >+ if (window.testRunner) { >+ testRunner.dumpAsText(); >+ testRunner.waitUntilDone(); >+ } >+ >+ function getUIScript() >+ { >+ return ` >+ (function() { >+ uiController.singleTapAtPoint(50, 50, function() { >+ uiController.uiScriptComplete("Done"); >+ }); >+ })();`; >+ } >+ >+ var mouseDownAction = null >+ >+ function doMouseDown() { >+ if (mouseDownAction) >+ mouseDownAction(); >+ mouseDownAction = null; >+ } >+ >+ function runOnMouseDown(fn) { >+ mouseDownAction = fn; >+ >+ if (window.testRunner && testRunner.runUIScript) >+ testRunner.runUIScript(getUIScript(), function(result) {}); >+ } >+ >+ function consoleWrite(text) >+ { >+ document.getElementById("target").innerHTML += text + "<br>"; >+ } >+ >+ function fullscreenChanged() { >+ consoleWrite("webkitfullscreenchange " + document.webkitFullscreenElement); >+ if (document.webkitFullscreenElement) { >+ document.getElementById('target').contentEditable="true"; >+ >+ setTimeout(function() { >+ consoleWrite("Attempt to focus on editable content."); >+ runOnMouseDown(function() {}); >+ }, 500); >+ } >+ if (document.webkitFullscreenElement == null) { >+ consoleWrite("Done.") >+ testRunner.notifyDone(); >+ } >+ } >+ >+ function runTest() >+ { >+ document.addEventListener('webkitfullscreenchange', fullscreenChanged, false); >+ >+ runOnMouseDown(function() { >+ document.getElementById("target").webkitRequestFullScreen(); >+ }); >+ } >+ >+ window.addEventListener('load', runTest, false); >+ </script> >+ <style> >+ #target { >+ height: 100vh; >+ width: 100vh; >+ background-color: silver; >+ } >+ </style> >+</head> >+<body Xonmousedown="doMouseDown()"> >+<div id="target" onmousedown="doMouseDown()"> >+ This test requires UIScriptController to run.<br> >+ Click here for manual test.<br> >+</div> >+</body> >+</html> >diff --git a/LayoutTests/platform/ios-wk2/TestExpectations b/LayoutTests/platform/ios-wk2/TestExpectations >index 00fcc7e9b2d4fcdd9ef4944187f9649f85d52097..c95053f6572834fc072b3d9992944dab4b8f9328 100644 >--- a/LayoutTests/platform/ios-wk2/TestExpectations >+++ b/LayoutTests/platform/ios-wk2/TestExpectations >@@ -65,6 +65,8 @@ http/tests/security/contentSecurityPolicy/manifest-src-allowed.html [ Pass ] > http/tests/security/contentSecurityPolicy/manifest-src-blocked.html [ Pass ] > applicationmanifest/ [ Pass ] > >+fullscreen/full-screen-exit-on-keyboard-focus.html [ Pass ] >+ > #////////////////////////////////////////////////////////////////////////////////////////// > # End platform-specific directories. > #//////////////////////////////////////////////////////////////////////////////////////////
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 185617
:
340330
|
341281
|
341295
|
341328
|
341332
|
341792