New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 660044 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Nov 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Chrome , Mac
Pri: 2
Type: Bug



Sign in to add a comment

<webview> Fix frame unfocusing hack.

Project Member Reported by aval...@chromium.org, Oct 27 2016

Issue description

http://crrev.com/408445 Fixed keyboard input for <webviews> but is an incomplete solution.

1. Implement correct switching between focused WebContents.
2. Remove IPC that unsets the focused frame.
 
It is not currently possible to move focus between an embedder and guest unless they each have more than a main frame. Focus change between web contents require a frame focus change in the target which is incorrect.
Project Member

Comment 2 by bugdroid1@chromium.org, Nov 17 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9993fca0084ba71c628918b384ac701fe6514e44

commit 9993fca0084ba71c628918b384ac701fe6514e44
Author: avallee <avallee@chromium.org>
Date: Thu Nov 17 06:16:50 2016

<webview>: Correctly shift focus between WebContents.

http://crrev.com/408445 Fixes some cases of keyboard input but required
a renderer initiated frame focus change in order to do so.

This change assumes that the browser is the primary driver of
WebContents level focus changes. The leftover FrameHost*::OnFrameFocused
is left so that an embedder can script aWebview.focus() to give focus.

BUG= 660044 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation

Review-Url: https://codereview.chromium.org/2451143003
Cr-Commit-Position: refs/heads/master@{#432781}

[modify] https://crrev.com/9993fca0084ba71c628918b384ac701fe6514e44/chrome/browser/apps/guest_view/web_view_interactive_browsertest.cc
[modify] https://crrev.com/9993fca0084ba71c628918b384ac701fe6514e44/chrome/test/data/extensions/platform_apps/web_view/focus/embedder.js
[modify] https://crrev.com/9993fca0084ba71c628918b384ac701fe6514e44/chrome/test/data/extensions/platform_apps/web_view/focus/inject_focus.js
[modify] https://crrev.com/9993fca0084ba71c628918b384ac701fe6514e44/content/browser/frame_host/frame_tree.cc
[modify] https://crrev.com/9993fca0084ba71c628918b384ac701fe6514e44/content/browser/renderer_host/render_widget_host_delegate.cc
[modify] https://crrev.com/9993fca0084ba71c628918b384ac701fe6514e44/content/browser/renderer_host/render_widget_host_delegate.h
[modify] https://crrev.com/9993fca0084ba71c628918b384ac701fe6514e44/content/browser/renderer_host/render_widget_host_impl.cc
[modify] https://crrev.com/9993fca0084ba71c628918b384ac701fe6514e44/content/browser/renderer_host/render_widget_host_impl.h
[modify] https://crrev.com/9993fca0084ba71c628918b384ac701fe6514e44/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/9993fca0084ba71c628918b384ac701fe6514e44/content/browser/web_contents/web_contents_impl.h

Project Member

Comment 3 by bugdroid1@chromium.org, Nov 17 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4efd8dc094dc1b000c8aa01ffe691e57732a8397

commit 4efd8dc094dc1b000c8aa01ffe691e57732a8397
Author: avallee <avallee@chromium.org>
Date: Thu Nov 17 17:48:59 2016

Remove FrameMsg_ClearFocusedFrame.

https://codereview.chromium.org/2451143003/ removes the dependency on
this message.

 - Remove FrameMsg_ClearFocusedFrame
 - Remove WebView::unfocusDocumentView
 - Remvoe RenderFrame::ClearFocusedFrame

BUG= 660044 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation

Review-Url: https://codereview.chromium.org/2455133005
Cr-Commit-Position: refs/heads/master@{#432906}

[modify] https://crrev.com/4efd8dc094dc1b000c8aa01ffe691e57732a8397/content/browser/frame_host/render_frame_host_impl.cc
[modify] https://crrev.com/4efd8dc094dc1b000c8aa01ffe691e57732a8397/content/browser/frame_host/render_frame_host_impl.h
[modify] https://crrev.com/4efd8dc094dc1b000c8aa01ffe691e57732a8397/content/common/frame_messages.h
[modify] https://crrev.com/4efd8dc094dc1b000c8aa01ffe691e57732a8397/content/renderer/render_frame_impl.cc
[modify] https://crrev.com/4efd8dc094dc1b000c8aa01ffe691e57732a8397/content/renderer/render_frame_impl.h
[modify] https://crrev.com/4efd8dc094dc1b000c8aa01ffe691e57732a8397/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/4efd8dc094dc1b000c8aa01ffe691e57732a8397/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/4efd8dc094dc1b000c8aa01ffe691e57732a8397/third_party/WebKit/public/web/WebView.h

Status: Fixed (was: Started)

Sign in to add a comment