Bug 134270

Summary: [Fullscreen][Mac] WKView is not firstResponder after entering fullscreen mode
Product: WebKit Reporter: Jer Noble <jer.noble>
Component: New BugsAssignee: Jer Noble <jer.noble>
Status: RESOLVED FIXED    
Severity: Normal CC: bunhere, cdumez, commit-queue, gyuyoung.kim, sergio
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch jhoneycutt: review+

Description Jer Noble 2014-06-24 14:56:10 PDT
[Fullscreen][Mac] WKView is not firstResponder after entering fullscreen mode
Comment 1 Jer Noble 2014-06-24 14:58:05 PDT
Created attachment 233745 [details]
Patch
Comment 2 Jon Honeycutt 2014-06-24 15:01:50 PDT
Comment on attachment 233745 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=233745&action=review

r=me

> Source/WebCore/ChangeLog:10
> +        the window's view heirarchy after the style changes, reset it to the firstResponder.

hierarchy

> Source/WebCore/platform/mac/WebCoreFullScreenWindow.mm:81
> +- (void)setStyleMask:(NSUInteger)styleMask
> +{
> +    NSResponder* savedFirstResponder = [self firstResponder];
> +
> +    [super setStyleMask:styleMask];
> +
> +    if ([self firstResponder] != savedFirstResponder
> +        && [savedFirstResponder isKindOfClass:[NSView class]]
> +        && [(NSView*)savedFirstResponder isDescendantOf:[self contentView]])
> +        [self makeFirstResponder:savedFirstResponder];
> +}

This would benefit from an inline comment explaining why it's done.
Comment 3 Jer Noble 2014-06-24 15:32:28 PDT
<rdar://problem/17043094>
Comment 4 Jer Noble 2014-06-24 15:39:07 PDT
Committed r170397: <http://trac.webkit.org/changeset/170397>