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

Side by Side Diff: content/renderer/render_view_impl.cc

Issue 715733002: [Android] Show autofill popup after animation. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase. Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « content/renderer/render_view_impl.h ('k') | content/renderer/render_widget.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/render_view_impl.h" 5 #include "content/renderer/render_view_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <cmath> 8 #include <cmath>
9 9
10 #include "base/auto_reset.h" 10 #include "base/auto_reset.h"
(...skipping 1405 matching lines...) Expand 10 before | Expand all | Expand 10 after
1416 1416
1417 Send(new InputHostMsg_MoveCaret_ACK(routing_id_)); 1417 Send(new InputHostMsg_MoveCaret_ACK(routing_id_));
1418 1418
1419 webview()->focusedFrame()->moveCaretSelection(point); 1419 webview()->focusedFrame()->moveCaretSelection(point);
1420 } 1420 }
1421 1421
1422 void RenderViewImpl::OnScrollFocusedEditableNodeIntoRect( 1422 void RenderViewImpl::OnScrollFocusedEditableNodeIntoRect(
1423 const gfx::Rect& rect) { 1423 const gfx::Rect& rect) {
1424 if (has_scrolled_focused_editable_node_into_rect_ && 1424 if (has_scrolled_focused_editable_node_into_rect_ &&
1425 rect == rect_for_scrolled_focused_editable_node_) { 1425 rect == rect_for_scrolled_focused_editable_node_) {
1426 FocusChangeComplete();
1426 return; 1427 return;
1427 } 1428 }
1428 1429
1429 blink::WebElement element = GetFocusedElement(); 1430 blink::WebElement element = GetFocusedElement();
1431 bool will_animate = false;
1430 if (!element.isNull() && IsEditableNode(element)) { 1432 if (!element.isNull() && IsEditableNode(element)) {
1431 rect_for_scrolled_focused_editable_node_ = rect; 1433 rect_for_scrolled_focused_editable_node_ = rect;
1432 has_scrolled_focused_editable_node_into_rect_ = true; 1434 has_scrolled_focused_editable_node_into_rect_ = true;
1433 webview()->scrollFocusedNodeIntoRect(rect); 1435 will_animate = webview()->scrollFocusedNodeIntoRect(rect);
1434 } 1436 }
1437
1438 if (!will_animate)
1439 FocusChangeComplete();
1435 } 1440 }
1436 1441
1437 void RenderViewImpl::OnSetEditCommandsForNextKeyEvent( 1442 void RenderViewImpl::OnSetEditCommandsForNextKeyEvent(
1438 const EditCommands& edit_commands) { 1443 const EditCommands& edit_commands) {
1439 edit_commands_ = edit_commands; 1444 edit_commands_ = edit_commands;
1440 } 1445 }
1441 1446
1442 void RenderViewImpl::OnSetHistoryOffsetAndLength(int history_offset, 1447 void RenderViewImpl::OnSetHistoryOffsetAndLength(int history_offset,
1443 int history_length) { 1448 int history_length) {
1444 DCHECK_GE(history_offset, -1); 1449 DCHECK_GE(history_offset, -1);
(...skipping 2149 matching lines...) Expand 10 before | Expand all | Expand 10 after
3594 // after Pepper API equips features related to surrounding text retrieval. 3599 // after Pepper API equips features related to surrounding text retrieval.
3595 gfx::Rect caret = focused_pepper_plugin_->GetCaretBounds(); 3600 gfx::Rect caret = focused_pepper_plugin_->GetCaretBounds();
3596 *start = caret; 3601 *start = caret;
3597 *end = caret; 3602 *end = caret;
3598 return; 3603 return;
3599 } 3604 }
3600 #endif 3605 #endif
3601 RenderWidget::GetSelectionBounds(start, end); 3606 RenderWidget::GetSelectionBounds(start, end);
3602 } 3607 }
3603 3608
3609 void RenderViewImpl::FocusChangeComplete() {
3610 RenderWidget::FocusChangeComplete();
3611 FOR_EACH_OBSERVER(RenderViewObserver, observers_, FocusChangeComplete());
3612 }
3613
3604 void RenderViewImpl::GetCompositionCharacterBounds( 3614 void RenderViewImpl::GetCompositionCharacterBounds(
3605 std::vector<gfx::Rect>* bounds) { 3615 std::vector<gfx::Rect>* bounds) {
3606 DCHECK(bounds); 3616 DCHECK(bounds);
3607 bounds->clear(); 3617 bounds->clear();
3608 3618
3609 #if defined(ENABLE_PLUGINS) 3619 #if defined(ENABLE_PLUGINS)
3610 if (focused_pepper_plugin_) { 3620 if (focused_pepper_plugin_) {
3611 return; 3621 return;
3612 } 3622 }
3613 #endif 3623 #endif
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
3680 } 3690 }
3681 3691
3682 void RenderViewImpl::InstrumentWillComposite() { 3692 void RenderViewImpl::InstrumentWillComposite() {
3683 if (!webview()) 3693 if (!webview())
3684 return; 3694 return;
3685 if (!webview()->devToolsAgent()) 3695 if (!webview()->devToolsAgent())
3686 return; 3696 return;
3687 webview()->devToolsAgent()->willComposite(); 3697 webview()->devToolsAgent()->willComposite();
3688 } 3698 }
3689 3699
3700 void RenderViewImpl::DidCompletePageScaleAnimation() {
3701 FocusChangeComplete();
3702 }
3703
3690 void RenderViewImpl::SetScreenMetricsEmulationParameters( 3704 void RenderViewImpl::SetScreenMetricsEmulationParameters(
3691 float device_scale_factor, 3705 float device_scale_factor,
3692 const gfx::Point& root_layer_offset, 3706 const gfx::Point& root_layer_offset,
3693 float root_layer_scale) { 3707 float root_layer_scale) {
3694 if (webview() && compositor()) { 3708 if (webview() && compositor()) {
3695 webview()->setCompositorDeviceScaleFactorOverride(device_scale_factor); 3709 webview()->setCompositorDeviceScaleFactorOverride(device_scale_factor);
3696 webview()->setRootLayerTransform( 3710 webview()->setRootLayerTransform(
3697 blink::WebSize(root_layer_offset.x(), root_layer_offset.y()), 3711 blink::WebSize(root_layer_offset.x(), root_layer_offset.y()),
3698 root_layer_scale); 3712 root_layer_scale);
3699 } 3713 }
(...skipping 371 matching lines...) Expand 10 before | Expand all | Expand 10 after
4071 std::vector<gfx::Size> sizes; 4085 std::vector<gfx::Size> sizes;
4072 ConvertToFaviconSizes(icon_urls[i].sizes(), &sizes); 4086 ConvertToFaviconSizes(icon_urls[i].sizes(), &sizes);
4073 if (!url.isEmpty()) 4087 if (!url.isEmpty())
4074 urls.push_back( 4088 urls.push_back(
4075 FaviconURL(url, ToFaviconType(icon_urls[i].iconType()), sizes)); 4089 FaviconURL(url, ToFaviconType(icon_urls[i].iconType()), sizes));
4076 } 4090 }
4077 SendUpdateFaviconURL(urls); 4091 SendUpdateFaviconURL(urls);
4078 } 4092 }
4079 4093
4080 } // namespace content 4094 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/render_view_impl.h ('k') | content/renderer/render_widget.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698