Changeset 271160 in webkit
- Timestamp:
- Jan 5, 2021 10:41:31 AM (3 years ago)
- Location:
- trunk/Source/WebKit
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit/ChangeLog
r271156 r271160 1 2021-01-05 Alex Christensen <achristensen@webkit.org> 2 3 Use sendWithAsyncReply instead of FontAttributesCallback 4 https://bugs.webkit.org/show_bug.cgi?id=220123 5 6 Reviewed by Chris Dumez. 7 8 * UIProcess/Cocoa/WebViewImpl.mm: 9 (WebKit::WebViewImpl::typingAttributesWithCompletionHandler): 10 * UIProcess/WebPageProxy.cpp: 11 (WebKit::WebPageProxy::requestFontAttributesAtSelectionStart): 12 (WebKit::WebPageProxy::fontAttributesCallback): Deleted. 13 * UIProcess/WebPageProxy.h: 14 * UIProcess/WebPageProxy.messages.in: 15 * WebProcess/WebPage/WebPage.cpp: 16 (WebKit::WebPage::requestFontAttributesAtSelectionStart): 17 * WebProcess/WebPage/WebPage.h: 18 * WebProcess/WebPage/WebPage.messages.in: 19 1 20 2021-01-05 Alex Christensen <achristensen@webkit.org> 2 21 -
trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm
r271156 r271160 2980 2980 } 2981 2981 2982 m_page->requestFontAttributesAtSelectionStart([completion = makeBlockPtr(completion)] (const WebCore::FontAttributes& attributes, CallbackBase::Error error) { 2983 if (error != CallbackBase::Error::None) { 2984 completion(nil); 2985 return; 2986 } 2987 2982 m_page->requestFontAttributesAtSelectionStart([completion = makeBlockPtr(completion)] (const WebCore::FontAttributes& attributes) { 2988 2983 auto attributesAsDictionary = attributes.createDictionary(); 2989 2984 completion(attributesAsDictionary.get()); -
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
r271156 r271160 2345 2345 } 2346 2346 2347 void WebPageProxy::requestFontAttributesAtSelectionStart(Function<void(const WebCore::FontAttributes&, CallbackBase::Error)>&& callback) 2348 { 2349 if (!hasRunningProcess()) { 2350 callback({ }, CallbackBase::Error::Unknown); 2351 return; 2352 } 2353 2354 auto callbackID = m_callbacks.put(WTFMove(callback), m_process->throttler().backgroundActivity("WebPageProxy::requestFontAttributesAtSelectionStart"_s)); 2355 send(Messages::WebPage::RequestFontAttributesAtSelectionStart(callbackID)); 2356 } 2357 2358 void WebPageProxy::fontAttributesCallback(const WebCore::FontAttributes& attributes, CallbackID callbackID) 2359 { 2360 m_cachedFontAttributesAtSelectionStart = attributes; 2361 2362 if (auto callback = m_callbacks.take<FontAttributesCallback>(callbackID)) 2363 callback->performCallbackWithReturnValue(attributes); 2347 void WebPageProxy::requestFontAttributesAtSelectionStart(CompletionHandler<void(const WebCore::FontAttributes&)>&& callback) 2348 { 2349 if (!hasRunningProcess()) 2350 return callback({ }); 2351 2352 sendWithAsyncReply(Messages::WebPage::RequestFontAttributesAtSelectionStart(), [this, protectedThis = makeRef(*this), callback = WTFMove(callback)] (const WebCore::FontAttributes& attributes) mutable { 2353 m_cachedFontAttributesAtSelectionStart = attributes; 2354 callback(attributes); 2355 }); 2364 2356 } 2365 2357 -
trunk/Source/WebKit/UIProcess/WebPageProxy.h
r271156 r271160 375 375 typedef GenericCallback<uint64_t> UnsignedCallback; 376 376 typedef GenericCallback<const String&> StringCallback; 377 typedef GenericCallback<const WebCore::FontAttributes&> FontAttributesCallback;378 377 typedef GenericCallback<bool> BoolCallback; 379 378 … … 721 720 void setMediaStreamCaptureMuted(bool); 722 721 723 void requestFontAttributesAtSelectionStart(Function<void(const WebCore::FontAttributes&, CallbackBase::Error)>&&); 724 void fontAttributesCallback(const WebCore::FontAttributes&, CallbackID); 722 void requestFontAttributesAtSelectionStart(CompletionHandler<void(const WebCore::FontAttributes&)>&&); 725 723 726 724 void setCanShowPlaceholder(const WebCore::ElementContext&, bool); -
trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in
r271156 r271160 179 179 FontAtSelectionCallback(struct WebKit::FontInfo fontInfo, double fontSize, bool selectionHasMultipleFonts, WebKit::CallbackID callbackID) 180 180 #endif 181 FontAttributesCallback(struct WebCore::FontAttributes attributes, WebKit::CallbackID callbackID)182 181 #if PLATFORM(IOS_FAMILY) 183 182 GestureCallback(WebCore::IntPoint point, enum:uint8_t WebKit::GestureType gestureType, enum:uint8_t WebKit::GestureRecognizerState gestureState, OptionSet<WebKit::SelectionFlags> flags, WebKit::CallbackID callbackID) -
trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp
r271156 r271160 3011 3011 } 3012 3012 3013 void WebPage::requestFontAttributesAtSelectionStart(CallbackID callbackID) 3014 { 3015 auto attributes = m_page->focusController().focusedOrMainFrame().editor().fontAttributesAtSelectionStart(); 3016 send(Messages::WebPageProxy::FontAttributesCallback(attributes, callbackID)); 3013 void WebPage::requestFontAttributesAtSelectionStart(CompletionHandler<void(const WebCore::FontAttributes&)>&& completionHandler) 3014 { 3015 completionHandler(m_page->focusController().focusedOrMainFrame().editor().fontAttributesAtSelectionStart()); 3017 3016 } 3018 3017 -
trunk/Source/WebKit/WebProcess/WebPage/WebPage.h
r271156 r271160 1536 1536 void setCurrentHistoryItemForReattach(WebKit::BackForwardListItemState&&); 1537 1537 1538 void requestFontAttributesAtSelectionStart(C allbackID);1538 void requestFontAttributesAtSelectionStart(CompletionHandler<void(const WebCore::FontAttributes&)>&&); 1539 1539 1540 1540 #if ENABLE(REMOTE_INSPECTOR) -
trunk/Source/WebKit/WebProcess/WebPage/WebPage.messages.in
r271156 r271160 264 264 SetNeedsFontAttributes(bool needsFontAttributes) 265 265 266 RequestFontAttributesAtSelectionStart( WebKit::CallbackID callbackID)266 RequestFontAttributesAtSelectionStart() -> (struct WebCore::FontAttributes attributes) Async 267 267 268 268 DidRemoveEditCommand(uint64_t commandID)
Note: See TracChangeset
for help on using the changeset viewer.