Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: a3ac190a7ddfa94d5e1acf68b7b54ff846391ede
      
https://github.com/WebKit/WebKit/commit/a3ac190a7ddfa94d5e1acf68b7b54ff846391ede
  Author: Carlos Garcia Campos <[email protected]>
  Date:   2025-04-25 (Fri, 25 Apr 2025)

  Changed paths:
    M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
    M Source/WebCore/PlatformGTK.cmake
    M Source/WebCore/PlatformWPE.cmake
    M Source/WebCore/SourcesGTK.txt
    M Source/WebCore/SourcesWPE.txt
    M Source/WebCore/editing/WebContentReader.cpp
    M Source/WebCore/editing/WebContentReader.h
    A Source/WebCore/editing/glib/EditorGLib.cpp
    A Source/WebCore/editing/glib/WebContentReaderGLib.cpp
    R Source/WebCore/editing/gtk/EditorGtk.cpp
    R Source/WebCore/editing/gtk/WebContentReaderGtk.cpp
    M Source/WebCore/editing/libwpe/EditorLibWPE.cpp
    M Source/WebCore/platform/Pasteboard.h
    M Source/WebCore/platform/PasteboardCustomData.h
    M Source/WebCore/platform/PasteboardStrategy.h
    M Source/WebCore/platform/PlatformPasteboard.h
    M Source/WebCore/platform/SourcesGLib.txt
    A Source/WebCore/platform/glib/SelectionData.cpp
    A Source/WebCore/platform/glib/SelectionData.h
    M Source/WebCore/platform/gtk/PasteboardGtk.cpp
    R Source/WebCore/platform/gtk/SelectionData.cpp
    R Source/WebCore/platform/gtk/SelectionData.h
    M Source/WebCore/platform/libwpe/PlatformPasteboardLibWPE.cpp
    A Source/WebCore/platform/wpe/PasteboardWPE.cpp
    M Source/WebKit/PlatformGTK.cmake
    M Source/WebKit/PlatformWPE.cmake
    M Source/WebKit/Scripts/webkit/messages.py
    M Source/WebKit/Shared/Pasteboard.serialization.in
    A Source/WebKit/Shared/glib/SelectionData.serialization.in
    R Source/WebKit/Shared/gtk/ArgumentCodersGtk.serialization.in
    M Source/WebKit/SourcesWPE.txt
    M Source/WebKit/UIProcess/WebPasteboardProxy.cpp
    M Source/WebKit/UIProcess/WebPasteboardProxy.h
    M Source/WebKit/UIProcess/WebPasteboardProxy.messages.in
    A Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp
    M Source/WebKit/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp
    M Source/WebKit/WebProcess/WebCoreSupport/WebPlatformStrategies.h

  Log Message:
  -----------
  [WPE] Use new Pasteboard API
https://bugs.webkit.org/show_bug.cgi?id=291935

Reviewed by Michael Catanzaro.

Switch to use the new Pasteboard API, reusing GTK implementation when
possible. This also fixes a crash with the new API when the pasteboard
is used, since it uses libwpe unconditionally. New Pasteboard API allows
to enable several features that were disabled for WPE, but they won't
work with the old API because libwpe only supports text items in clipboard.

* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WebCore/PlatformGTK.cmake:
* Source/WebCore/PlatformWPE.cmake:
* Source/WebCore/SourcesGTK.txt:
* Source/WebCore/SourcesWPE.txt:
* Source/WebCore/editing/WebContentReader.cpp:
* Source/WebCore/editing/WebContentReader.h:
* Source/WebCore/editing/glib/EditorGLib.cpp: Renamed from 
Source/WebCore/editing/gtk/EditorGtk.cpp.
(WebCore::Editor::pasteWithPasteboard):
(WebCore::Editor::platformCopyFont):
(WebCore::Editor::platformPasteFont):
(WebCore::elementURL):
(WebCore::getImageForElement):
(WebCore::Editor::writeImageToPasteboard):
(WebCore::Editor::writeSelectionToPasteboard):
(WebCore::Editor::webContentFromPasteboard):
* Source/WebCore/editing/glib/WebContentReaderGLib.cpp: Renamed from 
Source/WebCore/editing/gtk/WebContentReaderGtk.cpp.
(WebCore::WebContentReader::readFilePath):
(WebCore::WebContentReader::readHTML):
(WebCore::WebContentReader::readPlainText):
(WebCore::WebContentReader::readImage):
(WebCore::WebContentReader::readURL):
(WebCore::shouldReplaceSubresourceURL):
(WebCore::WebContentMarkupReader::readHTML):
* Source/WebCore/platform/Pasteboard.h:
* Source/WebCore/platform/PasteboardCustomData.h:
(WebCore::PasteboardCustomData::wpeType):
* Source/WebCore/platform/PasteboardStrategy.h:
* Source/WebCore/platform/PlatformPasteboard.h:
* Source/WebCore/platform/SourcesGLib.txt:
* Source/WebCore/platform/glib/SelectionData.cpp: Renamed from 
Source/WebCore/platform/gtk/SelectionData.cpp.
(WebCore::SelectionData::SelectionData):
(WebCore::replaceNonBreakingSpaceWithSpace):
(WebCore::SelectionData::setText):
(WebCore::SelectionData::setURIList):
(WebCore::SelectionData::setURL):
(WebCore::SelectionData::urlLabel const):
(WebCore::SelectionData::clearAllExceptFilenames):
(WebCore::SelectionData::clearAll):
* Source/WebCore/platform/glib/SelectionData.h: Renamed from 
Source/WebCore/platform/gtk/SelectionData.h.
(WebCore::SelectionData::text const):
(WebCore::SelectionData::hasText const):
(WebCore::SelectionData::clearText):
(WebCore::SelectionData::setMarkup):
(WebCore::SelectionData::markup const):
(WebCore::SelectionData::hasMarkup const):
(WebCore::SelectionData::clearMarkup):
(WebCore::SelectionData::url const):
(WebCore::SelectionData::hasURL const):
(WebCore::SelectionData::clearURL):
(WebCore::SelectionData::uriList const):
(WebCore::SelectionData::filenames const):
(WebCore::SelectionData::hasURIList const):
(WebCore::SelectionData::hasFilenames const):
(WebCore::SelectionData::clearURIList):
(WebCore::SelectionData::setImage):
(WebCore::SelectionData::image const):
(WebCore::SelectionData::hasImage const):
(WebCore::SelectionData::clearImage):
(WebCore::SelectionData::setCanSmartReplace):
(WebCore::SelectionData::canSmartReplace const):
(WebCore::SelectionData::addBuffer):
(WebCore::SelectionData::buffers const):
(WebCore::SelectionData::buffer):
(WebCore::SelectionData::clearBuffers):
(WebCore::SelectionData::setCustomData):
(WebCore::SelectionData::customData const):
(WebCore::SelectionData::hasCustomData const):
(WebCore::SelectionData::clearCustomData):
* Source/WebCore/platform/libwpe/PlatformPasteboardLibWPE.cpp:
(WebCore::PlatformPasteboard::changeCount const):
(WebCore::PlatformPasteboard::write):
* Source/WebCore/platform/wpe/PasteboardWPE.cpp: Added.
(WebCore::Pasteboard::createForCopyAndPaste):
(WebCore::Pasteboard::Pasteboard):
(WebCore::Pasteboard::writeString):
(WebCore::Pasteboard::writePlainText):
(WebCore::Pasteboard::write):
(WebCore::Pasteboard::writeTrustworthyWebURLsPboardType):
(WebCore::Pasteboard::clear):
(WebCore::Pasteboard::canSmartReplace):
(WebCore::Pasteboard::read):
(WebCore::Pasteboard::hasData):
(WebCore::Pasteboard::typesSafeForBindings):
(WebCore::Pasteboard::typesForLegacyUnsafeBindings):
(WebCore::Pasteboard::readOrigin):
(WebCore::Pasteboard::readString):
(WebCore::Pasteboard::readStringInCustomData):
(WebCore::Pasteboard::fileContentState):
(WebCore::Pasteboard::writeMarkup):
(WebCore::Pasteboard::writeCustomData):
(WebCore::Pasteboard::changeCount const):
* Source/WebKit/PlatformGTK.cmake:
* Source/WebKit/PlatformWPE.cmake:
* Source/WebKit/Scripts/webkit/messages.py:
(conditions_for_header):
* Source/WebKit/Shared/Pasteboard.serialization.in:
* Source/WebKit/Shared/glib/SelectionData.serialization.in: Renamed from 
Source/WebKit/Shared/gtk/ArgumentCodersGtk.serialization.in.
* Source/WebKit/SourcesWPE.txt:
* Source/WebKit/UIProcess/WebPasteboardProxy.cpp:
* Source/WebKit/UIProcess/WebPasteboardProxy.h:
* Source/WebKit/UIProcess/WebPasteboardProxy.messages.in:
* Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp: Added.
(WebKit::WebPasteboardProxy::getTypes):
(WebKit::WebPasteboardProxy::readText):
(WebKit::WebPasteboardProxy::readFilePaths):
(WebKit::WebPasteboardProxy::readBuffer):
(WebKit::WebPasteboardProxy::writeToClipboard):
(WebKit::WebPasteboardProxy::clearClipboard):
(WebKit::WebPasteboardProxy::typesSafeForDOMToReadAndWrite):
(WebKit::WebPasteboardProxy::writeCustomData):
(WebKit::WebPasteboardProxy::allPasteboardItemInfo):
(WebKit::WebPasteboardProxy::informationForItemAtIndex):
(WebKit::WebPasteboardProxy::getPasteboardItemsCount):
(WebKit::WebPasteboardProxy::readURLFromPasteboard):
(WebKit::WebPasteboardProxy::readBufferFromPasteboard):
(WebKit::WebPasteboardProxy::getPasteboardChangeCount):
* Source/WebKit/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
* Source/WebKit/WebProcess/WebCoreSupport/WebPlatformStrategies.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to