Index: content/renderer/render_widget.cc |
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc |
index 637ad27559b658c23c9a6c38d8edf55d9d4391b8..e4c4da13573904ccdaee52b0d0117ad92925d114 100644 |
--- a/content/renderer/render_widget.cc |
+++ b/content/renderer/render_widget.cc |
@@ -372,9 +372,6 @@ RenderWidget::RenderWidget(int32_t widget_routing_id, |
pending_window_rect_count_(0), |
screen_info_(screen_info), |
device_scale_factor_(screen_info_.device_scale_factor), |
-#if defined(OS_ANDROID) |
- text_field_is_dirty_(false), |
-#endif |
monitor_composition_info_(false), |
popup_origin_scale_for_emulation_(0.f), |
frame_swap_message_queue_(new FrameSwapMessageQueue()), |
@@ -390,9 +387,6 @@ RenderWidget::RenderWidget(int32_t widget_routing_id, |
RenderProcess::current()->AddRefProcess(); |
DCHECK(RenderThread::Get()); |
device_color_profile_.push_back('0'); |
-#if defined(OS_ANDROID) |
- text_input_info_history_.push_back(blink::WebTextInputInfo()); |
-#endif |
// In tests there may not be a RenderThreadImpl. |
if (RenderThreadImpl::current()) { |
@@ -635,7 +629,6 @@ bool RenderWidget::OnMessageReceived(const IPC::Message& message) { |
IPC_MESSAGE_HANDLER(DragMsg_SourceSystemDragEnded, |
OnDragSourceSystemDragEnded) |
#if defined(OS_ANDROID) |
- IPC_MESSAGE_HANDLER(InputMsg_ImeEventAck, OnImeEventAck) |
IPC_MESSAGE_HANDLER(InputMsg_RequestTextInputStateUpdate, |
OnRequestTextInputStateUpdate) |
#endif |
@@ -1049,14 +1042,10 @@ void RenderWidget::UpdateTextInputState(ShowIme show_ime, |
// Only sends text input params if they are changed or if the ime should be |
// shown. |
if (show_ime == ShowIme::IF_NEEDED || |
- (IsUsingImeThread() && change_source == ChangeSource::FROM_IME) || |
- (text_input_type_ != new_type || text_input_mode_ != new_mode || |
- text_input_info_ != new_info || |
- can_compose_inline_ != new_can_compose_inline) |
-#if defined(OS_ANDROID) |
- || text_field_is_dirty_ |
-#endif |
- ) { |
+ change_source == ChangeSource::FROM_IME || |
+ text_input_type_ != new_type || text_input_mode_ != new_mode || |
+ text_input_info_ != new_info || |
+ can_compose_inline_ != new_can_compose_inline) { |
TextInputState params; |
params.type = new_type; |
params.mode = new_mode; |
@@ -1068,15 +1057,8 @@ void RenderWidget::UpdateTextInputState(ShowIme show_ime, |
params.composition_end = new_info.compositionEnd; |
params.can_compose_inline = new_can_compose_inline; |
params.show_ime_if_needed = (show_ime == ShowIme::IF_NEEDED); |
-#if defined(USE_AURA) |
- params.is_non_ime_change = true; |
-#endif |
-#if defined(OS_ANDROID) |
- params.is_non_ime_change = |
- (change_source == ChangeSource::FROM_NON_IME) || text_field_is_dirty_; |
- if (params.is_non_ime_change) |
- OnImeEventSentForAck(new_info); |
- text_field_is_dirty_ = false; |
+#if defined(OS_ANDROID) || defined(USE_AURA) |
+ params.is_non_ime_change = (change_source == ChangeSource::FROM_NON_IME); |
#endif |
Send(new ViewHostMsg_TextInputStateChanged(routing_id(), params)); |
@@ -1532,7 +1514,7 @@ void RenderWidget::OnImeSetComposition( |
WebRange(replacement_range.start(), replacement_range.length())); |
} |
- if (!ShouldHandleImeEvent()) |
+ if (!GetWebWidget()) |
return; |
ImeEventGuard guard(this); |
blink::WebInputMethodController* controller = GetInputMethodController(); |
@@ -1564,7 +1546,7 @@ void RenderWidget::OnImeCommitText(const base::string16& text, |
WebRange(replacement_range.start(), replacement_range.length())); |
} |
- if (!ShouldHandleImeEvent()) |
+ if (!GetWebWidget()) |
return; |
ImeEventGuard guard(this); |
input_handler_->set_handling_input_event(true); |
@@ -1583,7 +1565,7 @@ void RenderWidget::OnImeFinishComposingText(bool keep_selection) { |
} |
#endif |
- if (!ShouldHandleImeEvent()) |
+ if (!GetWebWidget()) |
return; |
ImeEventGuard guard(this); |
input_handler_->set_handling_input_event(true); |
@@ -1801,15 +1783,6 @@ void RenderWidget::convertWindowToViewport(blink::WebFloatRect* rect) { |
} |
#if defined(OS_ANDROID) |
-void RenderWidget::OnImeEventSentForAck(const blink::WebTextInputInfo& info) { |
- text_input_info_history_.push_back(info); |
-} |
- |
-void RenderWidget::OnImeEventAck() { |
- DCHECK_GE(text_input_info_history_.size(), 1u); |
- text_input_info_history_.pop_front(); |
-} |
- |
void RenderWidget::OnRequestTextInputStateUpdate() { |
DCHECK(!ime_event_guard_); |
UpdateSelectionBounds(); |
@@ -1825,29 +1798,6 @@ void RenderWidget::OnRequestCompositionUpdate(bool immediate_request, |
UpdateCompositionInfo(true /* immediate request */); |
} |
-bool RenderWidget::ShouldHandleImeEvent() { |
-#if defined(OS_ANDROID) |
- if (!GetWebWidget()) |
- return false; |
- if (IsUsingImeThread()) |
- return true; |
- |
- // We cannot handle IME events if there is any chance that the event we are |
- // receiving here from the browser is based on the state that is different |
- // from our current one as indicated by |text_input_info_|. |
- // The states the browser might be in are: |
- // text_input_info_history_[0] - current state ack'd by browser |
- // text_input_info_history_[1...N] - pending state changes |
- for (size_t i = 0u; i < text_input_info_history_.size() - 1u; ++i) { |
- if (text_input_info_history_[i] != text_input_info_) |
- return false; |
- } |
- return true; |
-#else |
- return !!GetWebWidget(); |
-#endif |
-} |
- |
void RenderWidget::OnSetDeviceScaleFactor(float device_scale_factor) { |
if (device_scale_factor_ == device_scale_factor) |
return; |
@@ -1916,14 +1866,6 @@ void RenderWidget::set_next_paint_is_repaint_ack() { |
next_paint_flags_ |= ViewHostMsg_UpdateRect_Flags::IS_REPAINT_ACK; |
} |
-bool RenderWidget::IsUsingImeThread() { |
-#if defined(OS_ANDROID) |
- return base::FeatureList::IsEnabled(features::kImeThread); |
-#else |
- return false; |
-#endif |
-} |
- |
void RenderWidget::OnImeEventGuardStart(ImeEventGuard* guard) { |
if (!ime_event_guard_) |
ime_event_guard_ = guard; |
@@ -2232,13 +2174,6 @@ void RenderWidget::setTouchAction( |
Send(new InputHostMsg_SetTouchAction(routing_id_, content_touch_action)); |
} |
-void RenderWidget::didUpdateTextOfFocusedElementByNonUserInput() { |
-#if defined(OS_ANDROID) |
- if (!IsUsingImeThread()) |
- text_field_is_dirty_ = true; |
-#endif |
-} |
- |
void RenderWidget::RegisterRenderFrameProxy(RenderFrameProxy* proxy) { |
render_frame_proxies_.AddObserver(proxy); |
} |