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

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

Issue 780343002: Remove always true guard (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix comment Created 6 years 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_widget.h ('k') | content/shell/app/shell_main_delegate.cc » ('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_widget.h" 5 #include "content/renderer/render_widget.h"
6 6
7 #include "base/auto_reset.h" 7 #include "base/auto_reset.h"
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/debug/trace_event.h" 10 #include "base/debug/trace_event.h"
(...skipping 1596 matching lines...) Expand 10 before | Expand all | Expand 10 after
1607 return; 1607 return;
1608 ImeEventGuard guard(this); 1608 ImeEventGuard guard(this);
1609 if (!webwidget_->setComposition( 1609 if (!webwidget_->setComposition(
1610 text, WebVector<WebCompositionUnderline>(underlines), 1610 text, WebVector<WebCompositionUnderline>(underlines),
1611 selection_start, selection_end)) { 1611 selection_start, selection_end)) {
1612 // If we failed to set the composition text, then we need to let the browser 1612 // If we failed to set the composition text, then we need to let the browser
1613 // process to cancel the input method's ongoing composition session, to make 1613 // process to cancel the input method's ongoing composition session, to make
1614 // sure we are in a consistent state. 1614 // sure we are in a consistent state.
1615 Send(new InputHostMsg_ImeCancelComposition(routing_id())); 1615 Send(new InputHostMsg_ImeCancelComposition(routing_id()));
1616 } 1616 }
1617 #if defined(OS_MACOSX) || defined(USE_AURA) || defined(OS_ANDROID)
1618 UpdateCompositionInfo(true); 1617 UpdateCompositionInfo(true);
1619 #endif
1620 } 1618 }
1621 1619
1622 void RenderWidget::OnImeConfirmComposition(const base::string16& text, 1620 void RenderWidget::OnImeConfirmComposition(const base::string16& text,
1623 const gfx::Range& replacement_range, 1621 const gfx::Range& replacement_range,
1624 bool keep_selection) { 1622 bool keep_selection) {
1625 if (!ShouldHandleImeEvent()) 1623 if (!ShouldHandleImeEvent())
1626 return; 1624 return;
1627 ImeEventGuard guard(this); 1625 ImeEventGuard guard(this);
1628 handling_input_event_ = true; 1626 handling_input_event_ = true;
1629 if (text.length()) 1627 if (text.length())
1630 webwidget_->confirmComposition(text); 1628 webwidget_->confirmComposition(text);
1631 else if (keep_selection) 1629 else if (keep_selection)
1632 webwidget_->confirmComposition(WebWidget::KeepSelection); 1630 webwidget_->confirmComposition(WebWidget::KeepSelection);
1633 else 1631 else
1634 webwidget_->confirmComposition(WebWidget::DoNotKeepSelection); 1632 webwidget_->confirmComposition(WebWidget::DoNotKeepSelection);
1635 handling_input_event_ = false; 1633 handling_input_event_ = false;
1636 #if defined(OS_MACOSX) || defined(USE_AURA) || defined(OS_ANDROID)
1637 UpdateCompositionInfo(true); 1634 UpdateCompositionInfo(true);
1638 #endif
1639 } 1635 }
1640 1636
1641 void RenderWidget::OnRepaint(gfx::Size size_to_paint) { 1637 void RenderWidget::OnRepaint(gfx::Size size_to_paint) {
1642 // During shutdown we can just ignore this message. 1638 // During shutdown we can just ignore this message.
1643 if (!webwidget_) 1639 if (!webwidget_)
1644 return; 1640 return;
1645 1641
1646 // Even if the browser provides an empty damage rect, it's still expecting to 1642 // Even if the browser provides an empty damage rect, it's still expecting to
1647 // receive a repaint ack so just damage the entire widget bounds. 1643 // receive a repaint ack so just damage the entire widget bounds.
1648 if (size_to_paint.IsEmpty()) { 1644 if (size_to_paint.IsEmpty()) {
(...skipping 309 matching lines...) Expand 10 before | Expand all | Expand 10 after
1958 if (selection_anchor_rect_ != params.anchor_rect || 1954 if (selection_anchor_rect_ != params.anchor_rect ||
1959 selection_focus_rect_ != params.focus_rect) { 1955 selection_focus_rect_ != params.focus_rect) {
1960 selection_anchor_rect_ = params.anchor_rect; 1956 selection_anchor_rect_ = params.anchor_rect;
1961 selection_focus_rect_ = params.focus_rect; 1957 selection_focus_rect_ = params.focus_rect;
1962 webwidget_->selectionTextDirection(params.focus_dir, params.anchor_dir); 1958 webwidget_->selectionTextDirection(params.focus_dir, params.anchor_dir);
1963 params.is_anchor_first = webwidget_->isSelectionAnchorFirst(); 1959 params.is_anchor_first = webwidget_->isSelectionAnchorFirst();
1964 Send(new ViewHostMsg_SelectionBoundsChanged(routing_id_, params)); 1960 Send(new ViewHostMsg_SelectionBoundsChanged(routing_id_, params));
1965 } 1961 }
1966 } 1962 }
1967 1963
1968 #if defined(OS_MACOSX) || defined(USE_AURA) || defined(OS_ANDROID)
1969 UpdateCompositionInfo(false); 1964 UpdateCompositionInfo(false);
1970 #endif
1971 } 1965 }
1972 1966
1973 // Check blink::WebTextInputType and ui::TextInputType is kept in sync. 1967 // Check blink::WebTextInputType and ui::TextInputType is kept in sync.
1974 COMPILE_ASSERT(int(blink::WebTextInputTypeNone) == \ 1968 COMPILE_ASSERT(int(blink::WebTextInputTypeNone) == \
1975 int(ui::TEXT_INPUT_TYPE_NONE), mismatching_enums); 1969 int(ui::TEXT_INPUT_TYPE_NONE), mismatching_enums);
1976 COMPILE_ASSERT(int(blink::WebTextInputTypeText) == \ 1970 COMPILE_ASSERT(int(blink::WebTextInputTypeText) == \
1977 int(ui::TEXT_INPUT_TYPE_TEXT), mismatching_enums); 1971 int(ui::TEXT_INPUT_TYPE_TEXT), mismatching_enums);
1978 COMPILE_ASSERT(int(blink::WebTextInputTypePassword) == \ 1972 COMPILE_ASSERT(int(blink::WebTextInputTypePassword) == \
1979 int(ui::TEXT_INPUT_TYPE_PASSWORD), mismatching_enums); 1973 int(ui::TEXT_INPUT_TYPE_PASSWORD), mismatching_enums);
1980 COMPILE_ASSERT(int(blink::WebTextInputTypeSearch) == \ 1974 COMPILE_ASSERT(int(blink::WebTextInputTypeSearch) == \
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
2013 "blink::WebTextInputType and ui::TextInputType not synchronized"; 2007 "blink::WebTextInputType and ui::TextInputType not synchronized";
2014 return static_cast<ui::TextInputType>(type); 2008 return static_cast<ui::TextInputType>(type);
2015 } 2009 }
2016 2010
2017 ui::TextInputType RenderWidget::GetTextInputType() { 2011 ui::TextInputType RenderWidget::GetTextInputType() {
2018 if (webwidget_) 2012 if (webwidget_)
2019 return WebKitToUiTextInputType(webwidget_->textInputInfo().type); 2013 return WebKitToUiTextInputType(webwidget_->textInputInfo().type);
2020 return ui::TEXT_INPUT_TYPE_NONE; 2014 return ui::TEXT_INPUT_TYPE_NONE;
2021 } 2015 }
2022 2016
2023 #if defined(OS_MACOSX) || defined(USE_AURA) || defined(OS_ANDROID)
2024 void RenderWidget::UpdateCompositionInfo(bool should_update_range) { 2017 void RenderWidget::UpdateCompositionInfo(bool should_update_range) {
2025 #if defined(OS_ANDROID) 2018 #if defined(OS_ANDROID)
2026 // Sending composition info makes sense only in Lollipop (API level 21) 2019 // Sending composition info makes sense only in Lollipop (API level 21)
2027 // and above due to the API availability. 2020 // and above due to the API availability.
2028 if (base::android::BuildInfo::GetInstance()->sdk_int() < 21) 2021 if (base::android::BuildInfo::GetInstance()->sdk_int() < 21)
2029 return; 2022 return;
2030 #endif 2023 #endif
2031 2024
2032 gfx::Range range = gfx::Range(); 2025 gfx::Range range = gfx::Range();
2033 if (should_update_range) { 2026 if (should_update_range) {
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
2071 if (composition_range_ != range) 2064 if (composition_range_ != range)
2072 return true; 2065 return true;
2073 if (bounds.size() != composition_character_bounds_.size()) 2066 if (bounds.size() != composition_character_bounds_.size())
2074 return true; 2067 return true;
2075 for (size_t i = 0; i < bounds.size(); ++i) { 2068 for (size_t i = 0; i < bounds.size(); ++i) {
2076 if (bounds[i] != composition_character_bounds_[i]) 2069 if (bounds[i] != composition_character_bounds_[i])
2077 return true; 2070 return true;
2078 } 2071 }
2079 return false; 2072 return false;
2080 } 2073 }
2081 #endif
2082 2074
2083 #if defined(OS_ANDROID) 2075 #if defined(OS_ANDROID)
2084 void RenderWidget::DidChangeBodyBackgroundColor(SkColor bg_color) { 2076 void RenderWidget::DidChangeBodyBackgroundColor(SkColor bg_color) {
2085 // If not initialized, default to white. Note that 0 is different from black 2077 // If not initialized, default to white. Note that 0 is different from black
2086 // as black still has alpha 0xFF. 2078 // as black still has alpha 0xFF.
2087 if (!bg_color) 2079 if (!bg_color)
2088 bg_color = SK_ColorWHITE; 2080 bg_color = SK_ColorWHITE;
2089 2081
2090 if (bg_color != body_background_color_) { 2082 if (bg_color != body_background_color_) {
2091 body_background_color_ = bg_color; 2083 body_background_color_ = bg_color;
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
2126 ImeEventGuard guard(this); 2118 ImeEventGuard guard(this);
2127 // If the last text input type is not None, then we should finish any 2119 // If the last text input type is not None, then we should finish any
2128 // ongoing composition regardless of the new text input type. 2120 // ongoing composition regardless of the new text input type.
2129 if (text_input_type_ != ui::TEXT_INPUT_TYPE_NONE) { 2121 if (text_input_type_ != ui::TEXT_INPUT_TYPE_NONE) {
2130 // If a composition text exists, then we need to let the browser process 2122 // If a composition text exists, then we need to let the browser process
2131 // to cancel the input method's ongoing composition session. 2123 // to cancel the input method's ongoing composition session.
2132 if (webwidget_->confirmComposition()) 2124 if (webwidget_->confirmComposition())
2133 Send(new InputHostMsg_ImeCancelComposition(routing_id())); 2125 Send(new InputHostMsg_ImeCancelComposition(routing_id()));
2134 } 2126 }
2135 2127
2136 #if defined(OS_MACOSX) || defined(USE_AURA) || defined(OS_ANDROID)
2137 UpdateCompositionInfo(true); 2128 UpdateCompositionInfo(true);
2138 #endif
2139 } 2129 }
2140 2130
2141 void RenderWidget::didHandleGestureEvent( 2131 void RenderWidget::didHandleGestureEvent(
2142 const WebGestureEvent& event, 2132 const WebGestureEvent& event,
2143 bool event_cancelled) { 2133 bool event_cancelled) {
2144 #if defined(OS_ANDROID) || defined(USE_AURA) 2134 #if defined(OS_ANDROID) || defined(USE_AURA)
2145 if (event_cancelled) 2135 if (event_cancelled)
2146 return; 2136 return;
2147 if (event.type == WebInputEvent::GestureTap) { 2137 if (event.type == WebInputEvent::GestureTap) {
2148 UpdateTextInputState(SHOW_IME_IF_NEEDED, FROM_NON_IME); 2138 UpdateTextInputState(SHOW_IME_IF_NEEDED, FROM_NON_IME);
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
2338 void RenderWidget::RegisterVideoHoleFrame(RenderFrameImpl* frame) { 2328 void RenderWidget::RegisterVideoHoleFrame(RenderFrameImpl* frame) {
2339 video_hole_frames_.AddObserver(frame); 2329 video_hole_frames_.AddObserver(frame);
2340 } 2330 }
2341 2331
2342 void RenderWidget::UnregisterVideoHoleFrame(RenderFrameImpl* frame) { 2332 void RenderWidget::UnregisterVideoHoleFrame(RenderFrameImpl* frame) {
2343 video_hole_frames_.RemoveObserver(frame); 2333 video_hole_frames_.RemoveObserver(frame);
2344 } 2334 }
2345 #endif // defined(VIDEO_HOLE) 2335 #endif // defined(VIDEO_HOLE)
2346 2336
2347 } // namespace content 2337 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/render_widget.h ('k') | content/shell/app/shell_main_delegate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698