Index: content/renderer/render_widget.h |
diff --git a/content/renderer/render_widget.h b/content/renderer/render_widget.h |
index bb917e53dbd4630419258f05aa4b0d9b24ba7d4f..3c7350cb620ff3fac9494520fef6ae067f78b1c8 100644 |
--- a/content/renderer/render_widget.h |
+++ b/content/renderer/render_widget.h |
@@ -246,7 +246,7 @@ class CONTENT_EXPORT RenderWidget |
// Handle common setup/teardown for handling IME events. |
void StartHandlingImeEvent(); |
- void FinishHandlingImeEvent(); |
+ void FinishHandlingImeEvent(bool from_non_ime); |
// Returns whether we currently should handle an IME event. |
bool ShouldHandleImeEvent(); |
@@ -661,8 +661,12 @@ class CONTENT_EXPORT RenderWidget |
// supporting overscroll IPC notifications due to fling animation updates. |
scoped_ptr<DidOverscrollParams>* handling_event_overscroll_; |
- // Are we currently handling an ime event? |
- bool handling_ime_event_; |
+ // The number of IME events we are handling now. |
+ int handling_ime_events_count_; |
aelias_OOO_until_Jul13
2015/10/22 03:25:07
Please rename to "ime_guard_count_". Strictly spe
Changwan Ryu
2015/10/22 06:18:18
Done. Also changed {Start,Finish}HandlingImeEvent
|
+ // We intentionally ignore text input update while we are handling IME events, |
+ // but show_ime should be effective even if it was set in the middle of |
+ // ignored state updates. |
+ bool pending_show_ime_if_needed_; |
// Type of the input event we are currently handling. |
blink::WebInputEvent::Type handling_event_type_; |
@@ -759,6 +763,12 @@ class CONTENT_EXPORT RenderWidget |
// by script etc., not by user input. |
bool text_field_is_dirty_; |
+ // AdapterInputConnection make real changes only when it's not originating |
+ // from IME. We want non-keyboard events (e.g., touch events) should be |
+ // treated as NOT originating from IME, when we finish handling IME events, |
+ // such as long press. |
+ bool pending_update_from_non_ime_; |
aelias_OOO_until_Jul13
2015/10/22 03:25:07
We don't need to add this extra state. We can jus
Changwan Ryu
2015/10/22 06:18:18
Hmm... They are slightly different because when te
|
+ |
// Stores the history of text input infos from the last ACK'ed one from the |
// current one. The size is the number of pending ACKs plus one, since we |
// intentionally keep the last ack'd value to know what the browser is |