Bug 127348

Summary: [GTK][WK2] WKTR doesn't handle eventSender.keyDown when full screen
Product: WebKit Reporter: Víctor M. Jáquez L. <vjaquez>
Component: WebKitGTKAssignee: Víctor M. Jáquez L. <vjaquez>
Status: NEW ---    
Severity: Normal CC: bugs-noreply, buildbot, rniwa
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
mcatanzaro: review-, buildbot: commit-queue-
Archive of layout-test-results from webkit-ews-16 for mac-mountainlion-wk2
none
Archive of layout-test-results from webkit-ews-03 for mac-mountainlion
none
Archive of layout-test-results from webkit-ews-01 for mac-mountainlion none

Description Víctor M. Jáquez L. 2014-01-21 07:58:02 PST
WKTR handles the full screen without using the port's API, but it uses it for the key press event (webkitWebViewBaseKeyPressEvent).

Nevertheless, the function webkitWebViewBaseKeyPressEvent(), to verify if the full screen mode is active, make use of the private attribute fullScreenModeActive: http://trac.webkit.org/browser/trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp#L606 - and that private attribute is set only through the GTK port's API.

Hence, when a test emits the event eventSender.keyDown (<Esc>, <f> or <F>) in full screen mode, the function webkitWebViewBaseKeyPressEvent() never catches it.
Comment 1 Víctor M. Jáquez L. 2014-01-21 08:23:45 PST
Created attachment 221750 [details]
Patch
Comment 2 Build Bot 2014-01-21 08:54:13 PST
Comment on attachment 221750 [details]
Patch

Attachment 221750 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/5250372637556736

New failing tests:
fullscreen/full-screen-escape.html
Comment 3 Build Bot 2014-01-21 08:54:15 PST
Created attachment 221751 [details]
Archive of layout-test-results from webkit-ews-16 for mac-mountainlion-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-16  Port: mac-mountainlion-wk2  Platform: Mac OS X 10.8.5
Comment 4 Build Bot 2014-01-21 09:46:10 PST
Comment on attachment 221750 [details]
Patch

Attachment 221750 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/6583774762500096

New failing tests:
fullscreen/full-screen-escape.html
Comment 5 Build Bot 2014-01-21 09:46:11 PST
Created attachment 221755 [details]
Archive of layout-test-results from webkit-ews-03 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-03  Port: mac-mountainlion  Platform: Mac OS X 10.8.5
Comment 6 Build Bot 2014-01-21 10:43:30 PST
Comment on attachment 221750 [details]
Patch

Attachment 221750 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/4896005958926336

New failing tests:
fullscreen/full-screen-escape.html
Comment 7 Build Bot 2014-01-21 10:43:32 PST
Created attachment 221761 [details]
Archive of layout-test-results from webkit-ews-01 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-01  Port: mac-mountainlion  Platform: Mac OS X 10.8.5
Comment 8 Michael Catanzaro 2016-01-02 09:19:58 PST
Comment on attachment 221750 [details]
Patch

Hey Víctor, I'm a bit confused by this patch. It adds a test, but doesn't change any code, so the test fails (at least it's failed on the Mac bots at the time you uploaded this patch). So I don't think this is ready for review, correct?
Comment 9 Víctor M. Jáquez L. 2016-01-08 12:15:54 PST
(In reply to comment #8)
> Comment on attachment 221750 [details]
> Patch
> 
> Hey Víctor, I'm a bit confused by this patch. It adds a test, but doesn't
> change any code, so the test fails (at least it's failed on the Mac bots at
> the time you uploaded this patch). So I don't think this is ready for
> review, correct?

Hi Michael,

Well, it is not a patch :) it is the test that should work when the patch is done. Or, in other words, it is the proof-of-concept of the bug: WKTR don't have (or didn't have) a mean to test that the full screen mode is activated or deactivated using the keyboard.