[webkit-changes] [WebKit/WebKit] 416736: [GTK][WPE] Implement KeyboardEvent.repeat

Carlos Garcia Campos noreply at github.com
Tue Mar 7 22:40:08 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 416736dee2ceb916e036585ff30443d49b65d90f
      https://github.com/WebKit/WebKit/commit/416736dee2ceb916e036585ff30443d49b65d90f
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2023-03-07 (Tue, 07 Mar 2023)

  Changed paths:
    M Source/WebKit/Shared/NativeWebKeyboardEvent.h
    M Source/WebKit/Shared/WebEvent.serialization.in
    M Source/WebKit/Shared/WebKeyboardEvent.cpp
    M Source/WebKit/Shared/WebKeyboardEvent.h
    M Source/WebKit/Shared/gtk/NativeWebKeyboardEventGtk.cpp
    M Source/WebKit/Shared/gtk/WebEventFactory.cpp
    M Source/WebKit/Shared/gtk/WebEventFactory.h
    M Source/WebKit/Shared/libwpe/NativeWebKeyboardEventLibWPE.cpp
    M Source/WebKit/Shared/libwpe/WebEventFactory.cpp
    M Source/WebKit/Shared/libwpe/WebEventFactory.h
    M Source/WebKit/SourcesGTK.txt
    M Source/WebKit/SourcesWPE.txt
    A Source/WebKit/UIProcess/API/glib/KeyAutoRepeatHandler.cpp
    A Source/WebKit/UIProcess/API/glib/KeyAutoRepeatHandler.h
    M Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp
    M Source/WebKit/UIProcess/API/wpe/WPEView.cpp
    M Source/WebKit/UIProcess/API/wpe/WPEView.h

  Log Message:
  -----------
  [GTK][WPE] Implement KeyboardEvent.repeat
https://bugs.webkit.org/show_bug.cgi?id=253507

Reviewed by Michael Catanzaro.

It's always false for GTK and WPE. This is also used since 259146 at main
to decide when to use the keyboard scrolling animation for page scrolls.
Neither GTK nor libpwe provide information about whether a key press
event is auto-repeated or not, so this adds a simple helper class to
handle it.

* Source/WebKit/Shared/NativeWebKeyboardEvent.h:
* Source/WebKit/Shared/WebEvent.serialization.in:
* Source/WebKit/Shared/WebKeyboardEvent.cpp:
(WebKit::WebKeyboardEvent::WebKeyboardEvent):
* Source/WebKit/Shared/WebKeyboardEvent.h:
* Source/WebKit/Shared/gtk/NativeWebKeyboardEventGtk.cpp:
(WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent):
* Source/WebKit/Shared/gtk/WebEventFactory.cpp:
(WebKit::WebEventFactory::createWebKeyboardEvent):
* Source/WebKit/Shared/gtk/WebEventFactory.h:
* Source/WebKit/Shared/libwpe/NativeWebKeyboardEventLibWPE.cpp:
(WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent):
* Source/WebKit/Shared/libwpe/WebEventFactory.cpp:
(WebKit::WebEventFactory::createWebKeyboardEvent):
* Source/WebKit/SourcesGTK.txt:
* Source/WebKit/UIProcess/API/glib/KeyAutoRepeatHandler.cpp: Added.
(WebKit::KeyAutoRepeatHandler::keyPress):
(WebKit::KeyAutoRepeatHandler::keyRelease):
* Source/WebKit/UIProcess/API/glib/KeyAutoRepeatHandler.h: Added.
* Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseKeyPressEvent):
(webkitWebViewBaseKeyReleaseEvent):
(webkitWebViewBaseKeyPressed):
(webkitWebViewBaseKeyReleased):
(webkitWebViewBaseSynthesizeKeyEvent):
* Source/WebKit/UIProcess/API/wpe/WPEView.cpp:
(WKWPE::View::handleKeyboardEvent):
(WKWPE::View::synthesizeCompositionKeyPress):
* Source/WebKit/UIProcess/API/wpe/WPEView.h:

Canonical link: https://commits.webkit.org/261363@main




More information about the webkit-changes mailing list