Changeset 225438 in webkit
- Timestamp:
- Dec 1, 2017, 5:38:50 PM (8 years ago)
- Location:
- trunk/Source
- Files:
-
- 2 added
- 15 edited
- 2 copied
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r225431 r225438 1 2017-12-01 Aishwarya Nirmal <anirmal@apple.com> 2 3 [Touch Bar Web API] Object representing Touch Bar Menu to send between Web and UI Processes 4 https://bugs.webkit.org/show_bug.cgi?id=179714 5 6 Reviewed by Wenson Hsieh. 7 8 These changes allow the HTMLMenuElement and HTMLMenuItemElement to parse attributes relating 9 to the touch bar and convey changes to the elements that will eventually be propogated to the 10 UI process. 11 12 No new tests at this point because the changes to HTMLMenuElement and HTMLMenuItemElement are 13 new properties, which might not be worth testing, and overriden methods for insertedIntoAncestor 14 and removedFromAncestor, which are involved in sending a message to a UI process but might be 15 difficult to test at this point since the UI process only receives (and does not yet process) 16 the message. 17 18 * html/HTMLMenuElement.cpp: 19 (WebCore::HTMLMenuElement::insertedIntoAncestor): 20 (WebCore::HTMLMenuElement::removedFromAncestor): 21 (WebCore::HTMLMenuElement::parseAttribute): 22 * html/HTMLMenuElement.h: 23 * html/HTMLMenuItemElement.cpp: 24 (WebCore::HTMLMenuItemElement::insertedIntoAncestor): 25 (WebCore::HTMLMenuItemElement::removedFromAncestor): 26 * html/HTMLMenuItemElement.h: 27 * page/ChromeClient.h: 28 1 29 2017-12-01 Daniel Bates <dabates@apple.com> 2 30 -
trunk/Source/WebCore/html/HTMLMenuElement.cpp
r177996 r225438 24 24 #include "HTMLMenuElement.h" 25 25 26 #include "Chrome.h" 27 #include "ChromeClient.h" 28 #include "Document.h" 29 #include "HTMLMenuItemElement.h" 26 30 #include "HTMLNames.h" 31 #include "Page.h" 27 32 28 33 namespace WebCore { … … 36 41 } 37 42 43 Node::InsertedIntoAncestorResult HTMLMenuElement::insertedIntoAncestor(InsertionType type, ContainerNode& ancestor) 44 { 45 auto result = HTMLElement::insertedIntoAncestor(type, ancestor); 46 if (type.connectedToDocument && RuntimeEnabledFeatures::sharedFeatures().menuItemElementEnabled() && m_isTouchBarMenu) { 47 if (auto* page = document().page()) 48 page->chrome().client().didInsertMenuElement(*this); 49 } 50 return result; 51 } 52 53 void HTMLMenuElement::removedFromAncestor(RemovalType type, ContainerNode& ancestor) 54 { 55 HTMLElement::removedFromAncestor(type, ancestor); 56 if (type.disconnectedFromDocument && RuntimeEnabledFeatures::sharedFeatures().menuItemElementEnabled() && m_isTouchBarMenu) { 57 if (auto* page = document().page()) 58 page->chrome().client().didRemoveMenuElement(*this); 59 } 60 } 61 62 void HTMLMenuElement::parseAttribute(const QualifiedName& name, const AtomicString& value) 63 { 64 if (name != typeAttr || !RuntimeEnabledFeatures::sharedFeatures().menuItemElementEnabled()) { 65 HTMLElement::parseAttribute(name, value); 66 return; 67 } 68 bool wasTouchBarMenu = m_isTouchBarMenu; 69 m_isTouchBarMenu = equalLettersIgnoringASCIICase(value, "touchbar"); 70 if (!wasTouchBarMenu && m_isTouchBarMenu) { 71 if (auto* page = document().page()) { 72 page->chrome().client().didInsertMenuElement(*this); 73 for (auto& child : childrenOfType<Element>(*this)) 74 page->chrome().client().didInsertMenuItemElement(downcast<HTMLMenuItemElement>(child)); 75 } 76 } else if (wasTouchBarMenu && !m_isTouchBarMenu) { 77 if (auto* page = document().page()) 78 page->chrome().client().didRemoveMenuElement(*this); 79 } 80 } 81 38 82 Ref<HTMLMenuElement> HTMLMenuElement::create(const QualifiedName& tagName, Document& document) 39 83 { -
trunk/Source/WebCore/html/HTMLMenuElement.h
r208179 r225438 31 31 static Ref<HTMLMenuElement> create(const QualifiedName&, Document&); 32 32 33 bool isTouchBarMenu() const { return m_isTouchBarMenu; } 34 33 35 private: 34 36 HTMLMenuElement(const QualifiedName&, Document&); 37 38 InsertedIntoAncestorResult insertedIntoAncestor(InsertionType, ContainerNode&) final; 39 void removedFromAncestor(RemovalType, ContainerNode&) final; 40 void parseAttribute(const QualifiedName&, const AtomicString&) final; 41 42 bool m_isTouchBarMenu; 35 43 }; 36 44 -
trunk/Source/WebCore/html/HTMLMenuItemElement.cpp
r224457 r225438 27 27 #include "HTMLMenuItemElement.h" 28 28 29 #include "Chrome.h" 30 #include "ChromeClient.h" 31 #include "Document.h" 32 #include "HTMLMenuElement.h" 29 33 #include "HTMLNames.h" 34 #include "Page.h" 30 35 31 36 namespace WebCore { … … 38 43 ASSERT(hasTagName(menuitemTag)); 39 44 } 40 45 46 Node::InsertedIntoAncestorResult HTMLMenuItemElement::insertedIntoAncestor(InsertionType type, ContainerNode& ancestor) 47 { 48 auto result = HTMLElement::insertedIntoAncestor(type, ancestor); 49 if (type.connectedToDocument) { 50 if (auto* page = document().page()) { 51 if (is<HTMLMenuElement>(ancestor) && downcast<HTMLMenuElement>(ancestor).isTouchBarMenu()) 52 page->chrome().client().didInsertMenuItemElement(*this); 53 } 54 } 55 return result; 56 } 57 58 void HTMLMenuItemElement::removedFromAncestor(RemovalType type, ContainerNode& ancestor) 59 { 60 HTMLElement::removedFromAncestor(type, ancestor); 61 if (type.disconnectedFromDocument) { 62 if (auto* page = document().page()) { 63 if (is<HTMLMenuElement>(ancestor) && downcast<HTMLMenuElement>(ancestor).isTouchBarMenu()) 64 page->chrome().client().didRemoveMenuItemElement(*this); 65 } 66 } 67 } 68 41 69 Ref<HTMLMenuItemElement> HTMLMenuItemElement::create(const QualifiedName& tagName, Document& document) 42 70 { 43 71 return adoptRef(*new HTMLMenuItemElement(tagName, document)); 44 72 } 45 73 46 74 } -
trunk/Source/WebCore/html/HTMLMenuItemElement.h
r224457 r225438 36 36 private: 37 37 HTMLMenuItemElement(const QualifiedName&, Document&); 38 39 InsertedIntoAncestorResult insertedIntoAncestor(InsertionType, ContainerNode&) final; 40 void removedFromAncestor(RemovalType, ContainerNode&) final; 38 41 }; 39 42 -
trunk/Source/WebCore/page/ChromeClient.h
r225223 r225438 469 469 virtual void requestStorageAccess(String&& /*subFrameHost*/, String&& /*topFrameHost*/, WTF::Function<void (bool)>&& callback) { callback(false); } 470 470 471 virtual void didInsertMenuElement(HTMLMenuElement&) { } 472 virtual void didRemoveMenuElement(HTMLMenuElement&) { } 473 virtual void didInsertMenuItemElement(HTMLMenuItemElement&) { } 474 virtual void didRemoveMenuItemElement(HTMLMenuItemElement&) { } 475 471 476 protected: 472 477 virtual ~ChromeClient() = default; -
trunk/Source/WebKit/ChangeLog
r225429 r225438 1 2017-12-01 Aishwarya Nirmal <anirmal@apple.com> 2 3 [Touch Bar Web API] Object representing Touch Bar Menu to send between Web and UI Processes 4 https://bugs.webkit.org/show_bug.cgi?id=179714 5 6 Reviewed by Wenson Hsieh. 7 8 These changes define the TouchBarMenuData and TouchBarMenuItemData objects which draw information 9 from touch bar HTMLMenuElement and HTMLMenuItemElement. These objects represent the contents of 10 the page-customized touch bar. Changes to the html elements representing the touch bar are sent 11 to the UI process. 12 13 * Shared/TouchBarMenuData.cpp: Copied from Source/WebCore/html/HTMLMenuItemElement.cpp. 14 (WebKit::TouchBarMenuData::TouchBarMenuData): 15 (WebKit::TouchBarMenuData::addMenuItem): 16 (WebKit::TouchBarMenuData::removeMenuItem): 17 (WebKit::TouchBarMenuData::encode const): 18 (WebKit::TouchBarMenuData::decode): 19 * Shared/TouchBarMenuData.h: Copied from Source/WebCore/html/HTMLMenuItemElement.h. 20 (WebKit::TouchBarMenuData::items): 21 (WebKit::TouchBarMenuData::isPageCustomized): 22 (WebKit::TouchBarMenuData::setIsPageCustomized): 23 * Shared/TouchBarMenuItemData.cpp: Added. 24 (WebKit::TouchBarMenuItemData::getItemType): 25 (WebKit::TouchBarMenuItemData::TouchBarMenuItemData): 26 (WebKit::TouchBarMenuItemData::encode const): 27 (WebKit::TouchBarMenuItemData::decode): 28 * Shared/TouchBarMenuItemData.h: Added. 29 (WebKit::operator<): 30 (WebKit::operator>): 31 (WebKit::operator<=): 32 (WebKit::operator>=): 33 (WebKit::operator==): 34 (WebKit::operator!=): 35 * UIProcess/WebPageProxy.cpp: 36 (WebKit::WebPageProxy::touchBarMenuDataChanged): 37 (WebKit::WebPageProxy::touchBarMenuItemDataAdded): 38 (WebKit::WebPageProxy::touchBarMenuItemDataRemoved): 39 * UIProcess/WebPageProxy.h: 40 (WebKit::WebPageProxy::touchBarMenuData const): 41 * UIProcess/WebPageProxy.messages.in: 42 * WebKit.xcodeproj/project.pbxproj: 43 * WebProcess/WebCoreSupport/WebChromeClient.cpp: 44 (WebKit::WebChromeClient::didInsertMenuElement): 45 (WebKit::WebChromeClient::didRemoveMenuElement): 46 (WebKit::WebChromeClient::didInsertMenuItemElement): 47 (WebKit::WebChromeClient::didRemoveMenuItemElement): 48 * WebProcess/WebCoreSupport/WebChromeClient.h: 49 * WebProcess/WebPage/WebPage.cpp: 50 (WebKit::WebPage::didInsertMenuElement): 51 (WebKit::WebPage::didRemoveMenuElement): 52 (WebKit::WebPage::didInsertMenuItemElement): 53 (WebKit::WebPage::didRemoveMenuItemElement): 54 (WebKit::WebPage::sendTouchBarMenuDataRemovedUpdate): 55 (WebKit::WebPage::sendTouchBarMenuDataAddedUpdate): 56 (WebKit::WebPage::sendTouchBarMenuItemDataAddedUpdate): 57 (WebKit::WebPage::sendTouchBarMenuItemDataRemovedUpdate): 58 * WebProcess/WebPage/WebPage.h: 59 1 60 2017-12-01 Daniel Bates <dabates@apple.com> 2 61 -
trunk/Source/WebKit/Shared/TouchBarMenuData.cpp
r225437 r225438 25 25 26 26 #include "config.h" 27 #include " HTMLMenuItemElement.h"27 #include "TouchBarMenuData.h" 28 28 29 #include "HTMLNames.h" 29 #include "Decoder.h" 30 #include "Encoder.h" 31 #include "TouchBarMenuItemData.h" 32 #include "WebCoreArgumentCoders.h" 33 #include <WebCore/HTMLElement.h> 34 #include <WebCore/HTMLMenuElement.h> 35 #include <WebCore/HTMLNames.h> 36 #include <WebCore/Node.h> 30 37 31 namespace WebCore { 32 33 using namespace HTMLNames; 38 namespace WebKit { 34 39 35 inline HTMLMenuItemElement::HTMLMenuItemElement(const QualifiedName& tagName, Document& document) 36 : HTMLElement(tagName, document) 40 TouchBarMenuData::TouchBarMenuData() 37 41 { 38 ASSERT(hasTagName(menuitemTag));39 42 } 40 43 41 Ref<HTMLMenuItemElement> HTMLMenuItemElement::create(const QualifiedName& tagName, Document& document)44 TouchBarMenuData::TouchBarMenuData(WebCore::HTMLMenuElement& element) 42 45 { 43 return adoptRef(*new HTMLMenuItemElement(tagName, document)); 46 if (!element.isTouchBarMenu()) 47 return; 48 m_id = element.attributeWithoutSynchronization(WebCore::HTMLNames::idAttr); 49 m_isPageCustomized = true; 50 } 51 52 TouchBarMenuData::TouchBarMenuData(const TouchBarMenuData& touchBarMenuData) 53 : m_items(touchBarMenuData.m_items) 54 , m_id(touchBarMenuData.m_id) 55 , m_isPageCustomized(touchBarMenuData.m_isPageCustomized) 56 { 57 } 58 59 void TouchBarMenuData::addMenuItem(const TouchBarMenuItemData& data) 60 { 61 m_items.append(data); 62 } 63 64 void TouchBarMenuData::removeMenuItem(const TouchBarMenuItemData& data) 65 { 66 m_items.removeFirst(data); 67 } 68 69 void TouchBarMenuData::encode(IPC::Encoder& encoder) const 70 { 71 encoder << m_items; 72 } 73 74 bool TouchBarMenuData::decode(IPC::Decoder& decoder, TouchBarMenuData& data) 75 { 76 if (!decoder.decode(data.m_items)) 77 return false; 78 79 return true; 44 80 } 45 81 -
trunk/Source/WebKit/Shared/TouchBarMenuData.h
r225437 r225438 25 25 26 26 #pragma once 27 #include "ArgumentCoders.h" 28 #include "TouchBarMenuItemData.h" 29 #include <WebCore/HTMLMenuElement.h> 30 #include <wtf/text/WTFString.h> 27 31 28 #include "HTMLElement.h" 32 namespace IPC { 33 class Decoder; 34 class Encoder; 35 } 29 36 30 namespace Web Core{37 namespace WebKit { 31 38 32 class HTMLMenuItemElement final : public HTMLElement{39 class TouchBarMenuData { 33 40 public: 34 static Ref<HTMLMenuItemElement> create(const QualifiedName&, Document&); 41 explicit TouchBarMenuData(); 42 explicit TouchBarMenuData(WebCore::HTMLMenuElement&); 43 explicit TouchBarMenuData(const TouchBarMenuData&); 44 45 void addMenuItem(const TouchBarMenuItemData&); 46 void removeMenuItem(const TouchBarMenuItemData&); 47 48 const Vector<TouchBarMenuItemData>& items() { return m_items; } 49 50 void encode(IPC::Encoder&) const; 51 static bool decode(IPC::Decoder&, TouchBarMenuData&); 52 53 void setID(String); 54 bool isPageCustomized() { return m_isPageCustomized; } 55 void setIsPageCustomized(bool customized) { m_isPageCustomized = customized; } 35 56 36 57 private: 37 HTMLMenuItemElement(const QualifiedName&, Document&); 58 Vector<TouchBarMenuItemData> m_items; 59 String m_id; 60 61 bool m_isPageCustomized { false }; 38 62 }; 39 40 } // namespace WebCore63 64 } -
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
r225422 r225438 156 156 #include "RemoteLayerTreeDrawingAreaProxy.h" 157 157 #include "RemoteLayerTreeScrollingPerformanceData.h" 158 #include "TouchBarMenuData.h" 159 #include "TouchBarMenuItemData.h" 158 160 #include "VideoFullscreenManagerProxy.h" 159 161 #include "VideoFullscreenManagerProxyMessages.h" … … 7149 7151 } 7150 7152 7153 #if PLATFORM(COCOA) 7154 void WebPageProxy::touchBarMenuDataChanged(const TouchBarMenuData& touchBarMenuData) 7155 { 7156 m_touchBarMenuData = touchBarMenuData; 7157 } 7158 7159 void WebPageProxy::touchBarMenuItemDataAdded(const TouchBarMenuItemData& touchBarMenuItemData) 7160 { 7161 m_touchBarMenuData.addMenuItem(touchBarMenuItemData); 7162 } 7163 7164 void WebPageProxy::touchBarMenuItemDataRemoved(const TouchBarMenuItemData& touchBarMenuItemData) 7165 { 7166 m_touchBarMenuData.removeMenuItem(touchBarMenuItemData); 7167 } 7168 #endif 7169 7151 7170 #if ENABLE(ATTACHMENT_ELEMENT) 7152 7171 -
trunk/Source/WebKit/UIProcess/WebPageProxy.h
r225422 r225438 105 105 #if PLATFORM(COCOA) 106 106 #include "LayerRepresentation.h" 107 #include "TouchBarMenuData.h" 108 #include "TouchBarMenuItemData.h" 107 109 #endif 108 110 … … 483 485 bool hasSelectedRange() const { return m_editorState.selectionIsRange; } 484 486 bool isContentEditable() const { return m_editorState.isContentEditable; } 485 487 488 #if PLATFORM(COCOA) 489 const TouchBarMenuData& touchBarMenuData() const { return m_touchBarMenuData; } 490 #endif 491 486 492 bool maintainsInactiveSelection() const; 487 493 void setMaintainsInactiveSelection(bool); … … 1221 1227 void editorStateChanged(const EditorState&); 1222 1228 1229 #if PLATFORM(COCOA) 1230 void touchBarMenuDataRemoved(); 1231 void touchBarMenuDataChanged(const TouchBarMenuData&); 1232 void touchBarMenuItemDataAdded(const TouchBarMenuItemData&); 1233 void touchBarMenuItemDataRemoved(const TouchBarMenuItemData&); 1234 #endif 1235 1223 1236 void requestStorageAccess(String&& subFrameHost, String&& topFrameHost, uint64_t webProcessContextId); 1224 1237 … … 1784 1797 bool m_isEditable { false }; 1785 1798 1799 #if PLATFORM(COCOA) 1800 TouchBarMenuData m_touchBarMenuData; 1801 #endif 1802 1786 1803 double m_textZoomFactor { 1 }; 1787 1804 double m_pageZoomFactor { 1 }; -
trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in
r225358 r225438 315 315 #endif 316 316 317 317 318 #if ENABLE(DATA_INTERACTION) 318 319 DidPerformDataInteractionControllerOperation(bool handled) … … 347 348 348 349 SearchTheWeb(String string) 350 351 TouchBarMenuDataChanged(WebKit::TouchBarMenuData touchBarMenuData) 352 TouchBarMenuItemDataAdded(struct WebKit::TouchBarMenuItemData touchBarMenuItemData) 353 TouchBarMenuItemDataRemoved(struct WebKit::TouchBarMenuItemData touchBarMenuItemData) 349 354 #endif 350 355 -
trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj
r225358 r225438 724 724 2E5C770F1FA7D429005932C3 /* APIAttachment.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2E5C770D1FA7D429005932C3 /* APIAttachment.cpp */; }; 725 725 2E7A944A1BBD97C300945547 /* _WKFocusedElementInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 2E7A94491BBD95C600945547 /* _WKFocusedElementInfo.h */; settings = {ATTRIBUTES = (Private, ); }; }; 726 2F809DD71FBD1BC9005FE63A /* TouchBarMenuItemData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2F809DD51FBD1BC9005FE63A /* TouchBarMenuItemData.cpp */; }; 727 2F8336861FA139DF00C6E080 /* TouchBarMenuData.h in Headers */ = {isa = PBXBuildFile; fileRef = 2FD43B911FA006A10083F51C /* TouchBarMenuData.h */; }; 728 2F8336871FA13A1E00C6E080 /* TouchBarMenuData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2FD43B921FA006A30083F51C /* TouchBarMenuData.cpp */; }; 726 729 31099973146C75A20029DEB9 /* WebNotificationClient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31099971146C759B0029DEB9 /* WebNotificationClient.cpp */; }; 727 730 310999C7146C9E3D0029DEB9 /* WebNotificationClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 31099968146C71F50029DEB9 /* WebNotificationClient.h */; }; … … 3037 3040 2E5C770D1FA7D429005932C3 /* APIAttachment.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = APIAttachment.cpp; sourceTree = "<group>"; }; 3038 3041 2E7A94491BBD95C600945547 /* _WKFocusedElementInfo.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = _WKFocusedElementInfo.h; sourceTree = "<group>"; }; 3042 2F809DD51FBD1BC9005FE63A /* TouchBarMenuItemData.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TouchBarMenuItemData.cpp; sourceTree = "<group>"; }; 3043 2F809DD91FBD1BF2005FE63A /* TouchBarMenuItemData.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TouchBarMenuItemData.h; sourceTree = "<group>"; }; 3044 2FD43B911FA006A10083F51C /* TouchBarMenuData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TouchBarMenuData.h; sourceTree = "<group>"; }; 3045 2FD43B921FA006A30083F51C /* TouchBarMenuData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TouchBarMenuData.cpp; sourceTree = "<group>"; }; 3039 3046 31099968146C71F50029DEB9 /* WebNotificationClient.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WebNotificationClient.h; sourceTree = "<group>"; }; 3040 3047 31099971146C759B0029DEB9 /* WebNotificationClient.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebNotificationClient.cpp; sourceTree = "<group>"; }; … … 5127 5134 5272B2891406985D0096A5D0 /* StatisticsData.h */, 5128 5135 1A5E4DA312D3BD3D0099A2BB /* TextCheckerState.h */, 5136 2FD43B921FA006A30083F51C /* TouchBarMenuData.cpp */, 5137 2FD43B911FA006A10083F51C /* TouchBarMenuData.h */, 5138 2F809DD51FBD1BC9005FE63A /* TouchBarMenuItemData.cpp */, 5139 2F809DD91FBD1BF2005FE63A /* TouchBarMenuItemData.h */, 5129 5140 1A64245D12DE29A100CAAE2C /* UpdateInfo.cpp */, 5130 5141 1A64245C12DE29A100CAAE2C /* UpdateInfo.h */, … … 8936 8947 1AAF263914687C39004A1E8A /* TiledCoreAnimationDrawingArea.h in Headers */, 8937 8948 1AF05D8714688348008B1E81 /* TiledCoreAnimationDrawingAreaProxy.h in Headers */, 8949 2F8336861FA139DF00C6E080 /* TouchBarMenuData.h in Headers */, 8938 8950 1AFE436618B6C081009C7A48 /* UIDelegate.h in Headers */, 8939 8951 515BE1B51D5917FF00DD7C68 /* UIGamepad.h in Headers */, … … 10544 10556 1AAF263814687C39004A1E8A /* TiledCoreAnimationDrawingArea.mm in Sources */, 10545 10557 1AF05D8614688348008B1E81 /* TiledCoreAnimationDrawingAreaProxy.mm in Sources */, 10558 2F8336871FA13A1E00C6E080 /* TouchBarMenuData.cpp in Sources */, 10559 2F809DD71FBD1BC9005FE63A /* TouchBarMenuItemData.cpp in Sources */, 10546 10560 1AFE436518B6C081009C7A48 /* UIDelegate.mm in Sources */, 10547 10561 515BE1B41D5917FF00DD7C68 /* UIGamepad.cpp in Sources */, -
trunk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp
r225223 r225438 128 128 } 129 129 130 void WebChromeClient::didInsertMenuElement(HTMLMenuElement& element) 131 { 132 m_page.didInsertMenuElement(element); 133 } 134 135 void WebChromeClient::didRemoveMenuElement(HTMLMenuElement& element) 136 { 137 m_page.didRemoveMenuElement(element); 138 } 139 140 void WebChromeClient::didInsertMenuItemElement(HTMLMenuItemElement& element) 141 { 142 m_page.didInsertMenuItemElement(element); 143 } 144 145 void WebChromeClient::didRemoveMenuItemElement(HTMLMenuItemElement& element) 146 { 147 m_page.didRemoveMenuItemElement(element); 148 } 149 130 150 inline WebChromeClient::~WebChromeClient() 131 151 { -
trunk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h
r225223 r225438 43 43 ~WebChromeClient(); 44 44 45 void didInsertMenuElement(WebCore::HTMLMenuElement&); 46 void didRemoveMenuElement(WebCore::HTMLMenuElement&); 47 void didInsertMenuItemElement(WebCore::HTMLMenuItemElement&); 48 void didRemoveMenuItemElement(WebCore::HTMLMenuItemElement&); 49 45 50 void chromeDestroyed() final; 46 51 -
trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp
r225422 r225438 153 153 #include <WebCore/HTMLImageElement.h> 154 154 #include <WebCore/HTMLInputElement.h> 155 #include <WebCore/HTMLMenuElement.h> 156 #include <WebCore/HTMLMenuItemElement.h> 155 157 #include <WebCore/HTMLOListElement.h> 156 158 #include <WebCore/HTMLPlugInElement.h> … … 224 226 #include "PlaybackSessionManager.h" 225 227 #include "RemoteLayerTreeTransaction.h" 228 #include "TouchBarMenuData.h" 229 #include "TouchBarMenuItemData.h" 226 230 #include "VideoFullscreenManager.h" 227 231 #include "WKStringCF.h" … … 5119 5123 } 5120 5124 5125 void WebPage::didInsertMenuElement(HTMLMenuElement& element) 5126 { 5127 #if PLATFORM(COCOA) 5128 sendTouchBarMenuDataAddedUpdate(element); 5129 #else 5130 ASSERT_UNUSED(element, element); 5131 #endif 5132 } 5133 5134 void WebPage::didRemoveMenuElement(HTMLMenuElement& element) 5135 { 5136 #if PLATFORM(COCOA) 5137 sendTouchBarMenuDataRemovedUpdate(element); 5138 #else 5139 ASSERT_UNUSED(element, element); 5140 #endif 5141 } 5142 5143 void WebPage::didInsertMenuItemElement(HTMLMenuItemElement& element) 5144 { 5145 #if PLATFORM(COCOA) 5146 sendTouchBarMenuItemDataAddedUpdate(element); 5147 #else 5148 ASSERT_UNUSED(element, element); 5149 #endif 5150 } 5151 5152 void WebPage::didRemoveMenuItemElement(HTMLMenuItemElement& element) 5153 { 5154 #if PLATFORM(COCOA) 5155 sendTouchBarMenuItemDataRemovedUpdate(element); 5156 #else 5157 ASSERT_UNUSED(element, element); 5158 #endif 5159 } 5160 5121 5161 #if ENABLE(PRIMARY_SNAPSHOTTED_PLUGIN_HEURISTIC) 5122 5162 static const int primarySnapshottedPlugInSearchLimit = 3000; … … 5339 5379 } 5340 5380 } 5381 5382 #if PLATFORM(COCOA) 5383 void WebPage::sendTouchBarMenuDataRemovedUpdate(HTMLMenuElement& element) 5384 { 5385 send(Messages::WebPageProxy::TouchBarMenuDataChanged(TouchBarMenuData { })); 5386 } 5387 5388 void WebPage::sendTouchBarMenuDataAddedUpdate(HTMLMenuElement& element) 5389 { 5390 send(Messages::WebPageProxy::TouchBarMenuDataChanged(TouchBarMenuData {element})); 5391 } 5392 5393 void WebPage::sendTouchBarMenuItemDataAddedUpdate(HTMLMenuItemElement& element) 5394 { 5395 send(Messages::WebPageProxy::TouchBarMenuItemDataAdded(TouchBarMenuItemData {element})); 5396 } 5397 5398 void WebPage::sendTouchBarMenuItemDataRemovedUpdate(HTMLMenuItemElement& element) 5399 { 5400 send(Messages::WebPageProxy::TouchBarMenuItemDataRemoved(TouchBarMenuItemData {element})); 5401 } 5402 #endif 5341 5403 5342 5404 void WebPage::sendPartialEditorStateAndSchedulePostLayoutUpdate() -
trunk/Source/WebKit/WebProcess/WebPage/WebPage.h
r225422 r225438 50 50 #include <WebCore/DictionaryPopupInfo.h> 51 51 #include <WebCore/FrameLoaderTypes.h> 52 #include <WebCore/HTMLMenuElement.h> 53 #include <WebCore/HTMLMenuItemElement.h> 52 54 #include <WebCore/IntRect.h> 53 55 #include <WebCore/IntSizeHash.h> … … 124 126 class FrameView; 125 127 class GraphicsContext; 128 class HTMLMenuElement; 129 class HTMLMenuItemElement; 126 130 class HTMLPlugInElement; 127 131 class HTMLPlugInImageElement; … … 307 311 WebCore::KeyboardUIMode keyboardUIMode(); 308 312 313 void didInsertMenuElement(WebCore::HTMLMenuElement&); 314 void didRemoveMenuElement(WebCore::HTMLMenuElement&); 315 void didInsertMenuItemElement(WebCore::HTMLMenuItemElement&); 316 void didRemoveMenuItemElement(WebCore::HTMLMenuItemElement&); 317 309 318 const String& overrideContentSecurityPolicy() const { return m_overrideContentSecurityPolicy; } 310 319 … … 1037 1046 void sendEditorStateUpdate(); 1038 1047 1048 #if PLATFORM(COCOA) 1049 void sendTouchBarMenuDataAddedUpdate(WebCore::HTMLMenuElement&); 1050 void sendTouchBarMenuDataRemovedUpdate(WebCore::HTMLMenuElement&); 1051 void sendTouchBarMenuItemDataAddedUpdate(WebCore::HTMLMenuItemElement&); 1052 void sendTouchBarMenuItemDataRemovedUpdate(WebCore::HTMLMenuItemElement&); 1053 #endif 1054 1039 1055 void didReceiveWebPageMessage(IPC::Connection&, IPC::Decoder&); 1040 1056 void didReceiveSyncWebPageMessage(IPC::Connection&, IPC::Decoder&, std::unique_ptr<IPC::Encoder>&);
Note:
See TracChangeset
for help on using the changeset viewer.