[M120 Migration] Fix show IME
[platform/framework/web/chromium-efl.git] / third_party / blink / renderer / platform / widget / input / widget_base_input_handler.cc
index 9386878..8525320 100644 (file)
@@ -443,6 +443,12 @@ void WidgetBaseInputHandler::HandleInputEvent(
     prevent_default = prevent_default || suppress;
   }
 
+#if BUILDFLAG(IS_TIZEN_TV)
+  bool hit_scrollbar = false;
+  if (widget_->client())
+    hit_scrollbar = widget_->client()->IsHitScrollbar();
+#endif
+
   WebInputEventResult processed = prevent_default
                                       ? WebInputEventResult::kHandledSuppressed
                                       : WebInputEventResult::kNotHandled;
@@ -543,11 +549,24 @@ void WidgetBaseInputHandler::HandleInputEvent(
 
   // Show the virtual keyboard if enabled and a user gesture triggers a focus
   // change.
+#if BUILDFLAG(IS_TIZEN_TV)
+  bool mouse_down_event_swallowed = false;
+  if (widget_->client())
+    mouse_down_event_swallowed = widget_->client()->IsMouseDownEventSwallowed();
+
+  if (((processed != WebInputEventResult::kNotHandled &&
+        input_event.GetType() == WebInputEvent::Type::kTouchEnd) ||
+       show_virtual_keyboard_for_mouse) &&
+      !mouse_down_event_swallowed && !hit_scrollbar) {
+    widget_->ShowVirtualKeyboard();
+  }
+#else
   if ((processed != WebInputEventResult::kNotHandled &&
        input_event.GetType() == WebInputEvent::Type::kTouchEnd) ||
       show_virtual_keyboard_for_mouse) {
     widget_->ShowVirtualKeyboard();
   }
+#endif
 
   if (!prevent_default &&
       WebInputEvent::IsKeyboardEventType(input_event.GetType()))