Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(173)

Issue 2278283002: Implement Mac Pop-up Dictionary for OOPIF. (Closed)

Created:
4 years, 3 months ago by EhsanK
Modified:
4 years, 2 months ago
CC:
chromium-reviews, mlamouri+watch-content_chromium.org, creis+watch_chromium.org, yusukes+watch_chromium.org, mlamouri+watch-blink_chromium.org, shuchen+watch_chromium.org, nasko+codewatch_chromium.org, jam, dcheng, nona+watch_chromium.org, dglazkov+blink, darin-cc_chromium.org, blink-reviews, kinuko+watch, James Su, blink-reviews-api_chromium.org, site-isolation-reviews_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Implement Mac Pop-up Dictionary for OOPIF. Ctrl+Command+D pops up a dictionary at current mouse location for the underlying text. To implement this for OOPIF, the following changes where made: + Add a method to RenderWidgetHostInputEventRouter to return the RenderWidgetHost at the given location. + Move TextInputClientObserver logic to RenderFrameImpl + Pass both WebWidget and WebView to WebSubStringUtil so that it can query the string for both main frame and sub frames. Ideally, TextInputClientObserver should belong to RenderWidget. But due to protected inheritance of WebViewImpl form WebWidget, this would not work for main frame which still holds a WebViewImpl as its WebWidget. BUG=640355 Committed: https://crrev.com/330ba4235e6b32ccad99d48427bc8b7b2df16130 Cr-Commit-Position: refs/heads/master@{#420656}

Patch Set 1 #

Patch Set 2 : Fixed a Compile Error #

Patch Set 3 : Fixed Another Compile Error #

Patch Set 4 : Rebased #

Patch Set 5 : Fixed the x-axis error #

Patch Set 6 : Added Tests and Modified DEPS #

Total comments: 35

Patch Set 7 : Rebased #

Patch Set 8 : Addressing creis@ and erikchen@'s comments #

Patch Set 9 : Some small fixes #

Patch Set 10 : Addressing lfg@'s comment #

Total comments: 50

Patch Set 11 : Addressing creis@'s comments #

Patch Set 12 : Addressing kenrb@'s comments + fixing a problem for nested in-process <iframe>s #

Patch Set 13 : Rebased #

Total comments: 2

Patch Set 14 : Added a comment #

Patch Set 15 : Added 'site_per_process_mac_browsertest.mm' #

Patch Set 16 : Fixed a crash #

Patch Set 17 : Rebased #

Patch Set 18 : Moved ownership of TextInputClientObserver to RenderWidget #

Total comments: 3

Patch Set 19 : Get plugin from focused frame in widget #

Patch Set 20 : Rebased #

Total comments: 6

Patch Set 21 : Addressing lfg@'s comment #

Unified diffs Side-by-side diffs Delta from patch set Stats (+383 lines, -86 lines) Patch
M content/browser/renderer_host/render_widget_host_input_event_router.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2 chunks +10 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_input_event_router.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +10 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_mac.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +1 line, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_mac.mm View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 3 chunks +50 lines, -6 lines 0 comments Download
M content/browser/renderer_host/text_input_client_mac.mm View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +4 lines, -0 lines 0 comments Download
A content/browser/site_per_process_mac_browsertest.mm View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +126 lines, -0 lines 0 comments Download
M content/public/test/DEPS View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M content/public/test/content_browser_test_utils.h View 1 2 3 4 5 6 7 8 9 10 2 chunks +23 lines, -0 lines 0 comments Download
M content/public/test/content_browser_test_utils_mac.mm View 1 2 3 4 5 2 chunks +29 lines, -0 lines 0 comments Download
M content/renderer/render_view_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +0 lines, -10 lines 0 comments Download
M content/renderer/render_view_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 3 chunks +0 lines, -22 lines 0 comments Download
M content/renderer/render_widget.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 3 chunks +10 lines, -0 lines 0 comments Download
M content/renderer/render_widget.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 4 chunks +12 lines, -0 lines 0 comments Download
M content/renderer/text_input_client_observer.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +22 lines, -12 lines 0 comments Download
M content/renderer/text_input_client_observer.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 6 chunks +50 lines, -23 lines 0 comments Download
M content/test/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/web/WebFrameWidgetBase.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2 chunks +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/web/WebFrameWidgetImpl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/web/WebFrameWidgetImpl.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +8 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/web/WebViewFrameWidget.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/web/WebViewFrameWidget.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +5 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/web/mac/WebSubstringUtil.mm View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +6 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/web/tests/WebViewTest.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 4 chunks +4 lines, -4 lines 0 comments Download
M third_party/WebKit/public/web/mac/WebSubstringUtil.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +5 lines, -4 lines 0 comments Download

Messages

Total messages: 80 (46 generated)
EhsanK
kenrb@, creis: Could you please review this patch? I will add Mac and blink reviews ...
4 years, 3 months ago (2016-08-31 15:07:34 UTC) #23
Charlie Reis
On 2016/08/31 15:07:34, EhsanK wrote: > kenrb@, creis: Could you please review this patch? I ...
4 years, 3 months ago (2016-08-31 19:40:37 UTC) #24
EhsanK
Thanks Charlie. Maybe James could review the RWHIER part? wjmaclean@ Could you please review this ...
4 years, 3 months ago (2016-08-31 20:20:50 UTC) #26
wjmaclean
On 2016/08/31 20:20:50, EhsanK wrote: > Thanks Charlie. Maybe James could review the RWHIER part? ...
4 years, 3 months ago (2016-08-31 20:30:58 UTC) #27
EhsanK
Thanks James! I think there might have been no need of finding out the Widget ...
4 years, 3 months ago (2016-08-31 21:59:49 UTC) #28
Charlie Reis
Actually adding erikchen per Ehsan's previous message. Also +lfg for a question below, and for ...
4 years, 3 months ago (2016-08-31 22:50:03 UTC) #30
erikchen
https://codereview.chromium.org/2278283002/diff/100001/content/browser/renderer_host/render_widget_host_view_mac.mm File content/browser/renderer_host/render_widget_host_view_mac.mm (right): https://codereview.chromium.org/2278283002/diff/100001/content/browser/renderer_host/render_widget_host_view_mac.mm#newcode2311 content/browser/renderer_host/render_widget_host_view_mac.mm:2311: TextInputClientMac::GetInstance()->GetStringAtPoint( It looks like if this method is called ...
4 years, 3 months ago (2016-09-01 00:04:29 UTC) #31
lfg
Also adding avi@ since I discussed plugins and RenderWidgets with him in a previous CL. ...
4 years, 3 months ago (2016-09-01 15:42:28 UTC) #33
EhsanK
PTAL. https://codereview.chromium.org/2278283002/diff/100001/content/browser/renderer_host/render_widget_host_input_event_router.h File content/browser/renderer_host/render_widget_host_input_event_router.h (right): https://codereview.chromium.org/2278283002/diff/100001/content/browser/renderer_host/render_widget_host_input_event_router.h#newcode84 content/browser/renderer_host/render_widget_host_input_event_router.h:84: RenderWidgetHost* GetRenderWidgetHostAtPos( On 2016/08/31 22:50:03, Charlie Reis wrote: ...
4 years, 3 months ago (2016-09-01 21:58:37 UTC) #37
erikchen
lgtm % discussion with lfg@ about plugins and render widgets. https://codereview.chromium.org/2278283002/diff/100001/content/browser/renderer_host/render_widget_host_view_mac.mm File content/browser/renderer_host/render_widget_host_view_mac.mm (right): https://codereview.chromium.org/2278283002/diff/100001/content/browser/renderer_host/render_widget_host_view_mac.mm#newcode2317 ...
4 years, 3 months ago (2016-09-02 01:10:39 UTC) #38
lfg
https://codereview.chromium.org/2278283002/diff/100001/content/renderer/render_widget.h File content/renderer/render_widget.h (right): https://codereview.chromium.org/2278283002/diff/100001/content/renderer/render_widget.h#newcode383 content/renderer/render_widget.h:383: PepperPluginInstanceImpl* focused_pepper_plugin() const { On 2016/09/01 21:58:37, EhsanK wrote: ...
4 years, 3 months ago (2016-09-02 16:39:00 UTC) #39
Charlie Reis
Thanks. Another round of cleanup comments below. https://codereview.chromium.org/2278283002/diff/100001/content/renderer/render_widget.cc File content/renderer/render_widget.cc (right): https://codereview.chromium.org/2278283002/diff/100001/content/renderer/render_widget.cc#newcode471 content/renderer/render_widget.cc:471: OnTextInputClientMessageReceived(this, message)); ...
4 years, 3 months ago (2016-09-02 21:38:17 UTC) #41
Charlie Reis
Wait, I had a lot of comments. Did you delete a patch set? Charlie On ...
4 years, 3 months ago (2016-09-02 21:39:17 UTC) #42
Charlie Reis
Wait, I had a lot of comments. Did you delete a patch set? Charlie On ...
4 years, 3 months ago (2016-09-02 21:39:19 UTC) #43
Charlie Reis
Ok, I think I've retyped them all. https://codereview.chromium.org/2278283002/diff/220001/content/browser/renderer_host/render_widget_host_input_event_router.cc File content/browser/renderer_host/render_widget_host_input_event_router.cc (right): https://codereview.chromium.org/2278283002/diff/220001/content/browser/renderer_host/render_widget_host_input_event_router.cc#newcode14 content/browser/renderer_host/render_widget_host_input_event_router.cc:14: #include "content/public/browser/render_widget_host.h" ...
4 years, 3 months ago (2016-09-02 21:57:48 UTC) #44
kenrb
I have a couple of comments. The temporary situation on the renderer side looks ugly ...
4 years, 3 months ago (2016-09-06 18:14:48 UTC) #45
Charlie Reis
https://codereview.chromium.org/2278283002/diff/220001/content/browser/renderer_host/render_widget_host_input_event_router.h File content/browser/renderer_host/render_widget_host_input_event_router.h (right): https://codereview.chromium.org/2278283002/diff/220001/content/browser/renderer_host/render_widget_host_input_event_router.h#newcode41 content/browser/renderer_host/render_widget_host_input_event_router.h:41: class RenderWidgetHostImpl; On 2016/09/06 18:14:48, kenrb wrote: > On ...
4 years, 3 months ago (2016-09-06 21:58:26 UTC) #46
EhsanK
Thanks Charlie and Ken for the reviews. Specially Charlie for retyping everything (sorry!). I think ...
4 years, 3 months ago (2016-09-08 17:10:40 UTC) #47
Charlie Reis
Thanks! Content/ L.G.T.M. with the changes below, if Ken's happy. I'll wait to give the ...
4 years, 3 months ago (2016-09-09 22:23:32 UTC) #48
kenrb
https://codereview.chromium.org/2278283002/diff/220001/content/browser/renderer_host/render_widget_host_view_mac.mm File content/browser/renderer_host/render_widget_host_view_mac.mm (right): https://codereview.chromium.org/2278283002/diff/220001/content/browser/renderer_host/render_widget_host_view_mac.mm#newcode2321 content/browser/renderer_host/render_widget_host_view_mac.mm:2321: root_box.bottom_left().y() - view_box.bottom_left().y(); On 2016/09/08 17:10:40, EhsanK wrote: > ...
4 years, 3 months ago (2016-09-12 17:28:13 UTC) #49
EhsanK
Thanks for the reviews. PTAL. FYI, I will wait for lfg's patch here: to land ...
4 years, 3 months ago (2016-09-13 18:52:15 UTC) #52
kenrb
lgtm
4 years, 3 months ago (2016-09-14 20:44:02 UTC) #55
EhsanK
Thank you Ken for the reviews. Charlie, Lucas: could you please take another look? (Lucas ...
4 years, 3 months ago (2016-09-14 22:10:32 UTC) #56
lfg
https://codereview.chromium.org/2278283002/diff/380001/content/renderer/text_input_client_observer.cc File content/renderer/text_input_client_observer.cc (right): https://codereview.chromium.org/2278283002/diff/380001/content/renderer/text_input_client_observer.cc#newcode65 content/renderer/text_input_client_observer.cc:65: PepperPluginInstanceImpl* TextInputClientObserver::GetFocusedPepperPlugin() On 2016/09/14 22:10:32, EhsanK wrote: > lfg@: ...
4 years, 3 months ago (2016-09-15 15:51:51 UTC) #57
EhsanK
PTAL. https://codereview.chromium.org/2278283002/diff/380001/content/renderer/text_input_client_observer.cc File content/renderer/text_input_client_observer.cc (right): https://codereview.chromium.org/2278283002/diff/380001/content/renderer/text_input_client_observer.cc#newcode65 content/renderer/text_input_client_observer.cc:65: PepperPluginInstanceImpl* TextInputClientObserver::GetFocusedPepperPlugin() On 2016/09/15 15:51:51, lfg wrote: > ...
4 years, 3 months ago (2016-09-19 22:34:05 UTC) #62
EhsanK
Adding dcheng@ for blink reviews. Daniel, could you please take a look or suggest a ...
4 years, 3 months ago (2016-09-19 22:35:07 UTC) #64
dcheng
blink lgtm https://codereview.chromium.org/2278283002/diff/420001/third_party/WebKit/public/web/mac/WebSubstringUtil.h File third_party/WebKit/public/web/mac/WebSubstringUtil.h (right): https://codereview.chromium.org/2278283002/diff/420001/third_party/WebKit/public/web/mac/WebSubstringUtil.h#newcode45 third_party/WebKit/public/web/mac/WebSubstringUtil.h:45: class WebLocalFrame; Nit: remove this, it appears ...
4 years, 3 months ago (2016-09-21 00:38:34 UTC) #65
Charlie Reis
Sorry for the delay! content/ LGTM. https://codereview.chromium.org/2278283002/diff/420001/content/browser/site_per_process_mac_browsertest.mm File content/browser/site_per_process_mac_browsertest.mm (right): https://codereview.chromium.org/2278283002/diff/420001/content/browser/site_per_process_mac_browsertest.mm#newcode65 content/browser/site_per_process_mac_browsertest.mm:65: class SitePerProcessMacBrowserTest : ...
4 years, 3 months ago (2016-09-23 06:24:10 UTC) #66
EhsanK
Thanks for the reviews! https://codereview.chromium.org/2278283002/diff/420001/content/browser/site_per_process_mac_browsertest.mm File content/browser/site_per_process_mac_browsertest.mm (right): https://codereview.chromium.org/2278283002/diff/420001/content/browser/site_per_process_mac_browsertest.mm#newcode65 content/browser/site_per_process_mac_browsertest.mm:65: class SitePerProcessMacBrowserTest : public SitePerProcessBrowserTest ...
4 years, 2 months ago (2016-09-23 14:36:49 UTC) #67
lfg
Focused plugin lgtm with nit. https://codereview.chromium.org/2278283002/diff/420001/content/renderer/render_view_impl.cc File content/renderer/render_view_impl.cc (right): https://codereview.chromium.org/2278283002/diff/420001/content/renderer/render_view_impl.cc#newcode3010 content/renderer/render_view_impl.cc:3010: PepperPluginInstanceImpl* RenderViewImpl::GetFocusedPepperPlugin() { I ...
4 years, 2 months ago (2016-09-23 14:45:36 UTC) #68
EhsanK
Thanks for the reviews! https://codereview.chromium.org/2278283002/diff/420001/content/renderer/render_view_impl.cc File content/renderer/render_view_impl.cc (right): https://codereview.chromium.org/2278283002/diff/420001/content/renderer/render_view_impl.cc#newcode3010 content/renderer/render_view_impl.cc:3010: PepperPluginInstanceImpl* RenderViewImpl::GetFocusedPepperPlugin() { On 2016/09/23 ...
4 years, 2 months ago (2016-09-23 15:17:00 UTC) #69
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2278283002/440001
4 years, 2 months ago (2016-09-23 17:50:09 UTC) #76
commit-bot: I haz the power
Committed patchset #21 (id:440001)
4 years, 2 months ago (2016-09-23 17:58:09 UTC) #78
commit-bot: I haz the power
4 years, 2 months ago (2016-09-23 18:00:56 UTC) #80
Message was sent while issue was closed.
Patchset 21 (id:??) landed as
https://crrev.com/330ba4235e6b32ccad99d48427bc8b7b2df16130
Cr-Commit-Position: refs/heads/master@{#420656}

Powered by Google App Engine
This is Rietveld 408576698