Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 8ab68c1708b90fe4e69e0f7dc1a81daaa9475f8c
https://github.com/WebKit/WebKit/commit/8ab68c1708b90fe4e69e0f7dc1a81daaa9475f8c
Author: Wenson Hsieh <[email protected]>
Date: 2022-09-23 (Fri, 23 Sep 2022)
Changed paths:
M Source/WebCore/editing/Editor.cpp
M Source/WebCore/editing/Editor.h
M Source/WebCore/editing/EditorCommand.cpp
M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm
Log Message:
-----------
[Mail Compose] Unable to "Copy Font" when the selection is collapsed
https://bugs.webkit.org/show_bug.cgi?id=245577
rdar://95564944
Reviewed by Devin Rousso.
Extend support for `-copyFont:` to the case where the selection is a caret in
editable content. See
below for more details.
Test: WKWebViewEditActions.CopyFontAtCaretSelection
* Source/WebCore/editing/Editor.cpp:
(WebCore::Editor::copyFont):
(WebCore::Editor::canCopyFont const):
"Copy Font" (⌘⌥C on macOS) for collapsed selections in Mail compose is
currently broken, due to the
fact that `Editor::copyFont` is only enabled if `Editor::canCopy` returns
`true`; in turn, this is
only the case if the selection is a range.
However, unlike the other "Copy" comands, "Copy Font" is special in that it
still works even if the
selection is collapsed. To fix this bug, we add a new helper, `canCopyFont()`,
that returns true if
the selection is either an editable caret, or a selection range, and then make
"CopyFont" command
enablement consult this helper.
* Source/WebCore/editing/Editor.h:
* Source/WebCore/editing/EditorCommand.cpp:
(WebCore::enabledCopy):
(WebCore::enabledCopyFont):
(WebCore::createCommandMap):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
Add a new API test to verify this change, by using "Copy Font" and "Paste Font"
to apply a font
color to otherwise unstyled text.
Canonical link: https://commits.webkit.org/254809@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes