Changeset 225446 in webkit
- Timestamp:
- Dec 2, 2017 12:47:19 AM (6 years ago)
- Location:
- trunk/Source/WebKit
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit/ChangeLog
r225445 r225446 1 2017-12-02 Wenson Hsieh <wenson_hsieh@apple.com> 2 3 Make some minor adjustments to TouchBarMenuData and TouchBarMenuItemData 4 https://bugs.webkit.org/show_bug.cgi?id=180305 5 6 Reviewed by Joseph Pecoraro. 7 8 Mark some methods and parameters as const, use the default constructor in more places, and also remove a few 9 extraneous imported headers. 10 11 * Shared/TouchBarMenuData.cpp: 12 (WebKit::TouchBarMenuData::TouchBarMenuData): 13 14 Add a FIXME regarding the use of the 'id' attribute. 15 16 (WebKit::TouchBarMenuData::decode): 17 * Shared/TouchBarMenuData.h: 18 (WebKit::TouchBarMenuData::items const): 19 (WebKit::TouchBarMenuData::setID): 20 (WebKit::TouchBarMenuData::isPageCustomized const): 21 (WebKit::TouchBarMenuData::items): Deleted. 22 (WebKit::TouchBarMenuData::isPageCustomized): Deleted. 23 * Shared/TouchBarMenuItemData.cpp: 24 (WebKit::getItemType): 25 26 Change a helper method from a static class function to a static function in the implementation file. 27 28 (WebKit::TouchBarMenuItemData::TouchBarMenuItemData): 29 (WebKit::TouchBarMenuItemData::encode const): 30 (WebKit::TouchBarMenuItemData::decode): 31 (WebKit::TouchBarMenuItemData::getItemType): Deleted. 32 * Shared/TouchBarMenuItemData.h: 33 (WebKit::operator==): 34 35 Remove the commandName member variable, since it doesn't make sense to propagate an event handler 36 attribute from WebCore to the client layer. 37 38 * UIProcess/WebPageProxy.messages.in: 39 1 40 2017-12-01 Zan Dobersek <zdobersek@igalia.com> 2 41 -
trunk/Source/WebKit/Shared/TouchBarMenuData.cpp
r225438 r225446 31 31 #include "TouchBarMenuItemData.h" 32 32 #include "WebCoreArgumentCoders.h" 33 #include <WebCore/HTMLElement.h>34 33 #include <WebCore/HTMLMenuElement.h> 35 34 #include <WebCore/HTMLNames.h> 36 #include <WebCore/Node.h>37 35 38 36 namespace WebKit { 39 37 40 TouchBarMenuData::TouchBarMenuData() 41 { 42 } 43 44 TouchBarMenuData::TouchBarMenuData(WebCore::HTMLMenuElement& element) 38 TouchBarMenuData::TouchBarMenuData(const WebCore::HTMLMenuElement& element) 45 39 { 46 40 if (!element.isTouchBarMenu()) 47 41 return; 42 43 // FIXME: We can't rely on using the 'id' attribute of the element here to distinguish 44 // between different menu items. For instance, a menuitem may have the same 'id' as 45 // another, or have no 'id' at all. 48 46 m_id = element.attributeWithoutSynchronization(WebCore::HTMLNames::idAttr); 49 47 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 48 } 58 49 … … 74 65 bool TouchBarMenuData::decode(IPC::Decoder& decoder, TouchBarMenuData& data) 75 66 { 76 if (!decoder.decode(data.m_items)) 77 return false; 78 79 return true; 67 return decoder.decode(data.m_items); 80 68 } 81 69 -
trunk/Source/WebKit/Shared/TouchBarMenuData.h
r225438 r225446 27 27 #include "ArgumentCoders.h" 28 28 #include "TouchBarMenuItemData.h" 29 #include <WebCore/HTMLMenuElement.h>30 29 #include <wtf/text/WTFString.h> 31 30 … … 35 34 } 36 35 36 namespace WebCore { 37 class HTMLMenuElement; 38 } 39 37 40 namespace WebKit { 38 41 39 42 class TouchBarMenuData { 40 43 public: 41 explicit TouchBarMenuData() ;42 explicit TouchBarMenuData( WebCore::HTMLMenuElement&);43 explicit TouchBarMenuData(const TouchBarMenuData&) ;44 explicit TouchBarMenuData() = default; 45 explicit TouchBarMenuData(const WebCore::HTMLMenuElement&); 46 explicit TouchBarMenuData(const TouchBarMenuData&) = default; 44 47 45 48 void addMenuItem(const TouchBarMenuItemData&); 46 49 void removeMenuItem(const TouchBarMenuItemData&); 47 50 48 const Vector<TouchBarMenuItemData>& items() { return m_items; }51 const Vector<TouchBarMenuItemData>& items() const { return m_items; } 49 52 50 53 void encode(IPC::Encoder&) const; 51 54 static bool decode(IPC::Decoder&, TouchBarMenuData&); 52 55 53 void setID( String);54 bool isPageCustomized() { return m_isPageCustomized; }56 void setID(const String& identifier) { m_id = identifier; } 57 bool isPageCustomized() const { return m_isPageCustomized; } 55 58 void setIsPageCustomized(bool customized) { m_isPageCustomized = customized; } 56 59 -
trunk/Source/WebKit/Shared/TouchBarMenuItemData.cpp
r225438 r225446 29 29 #include "Encoder.h" 30 30 #include "WebCoreArgumentCoders.h" 31 #include <WebCore/HTMLElement.h>32 31 #include <WebCore/HTMLMenuItemElement.h> 33 32 #include <WebCore/HTMLNames.h> 34 #include <WebCore/Node.h>35 #include <vector>36 33 37 34 namespace WebKit { 38 35 39 ItemType TouchBarMenuItemData::getItemType(String value)36 static ItemType getItemType(const String&) 40 37 { 41 38 return ItemType::Button; 42 39 } 43 40 44 TouchBarMenuItemData::TouchBarMenuItemData() 45 { 46 } 47 48 TouchBarMenuItemData::TouchBarMenuItemData(WebCore::HTMLMenuItemElement& element) 41 TouchBarMenuItemData::TouchBarMenuItemData(const WebCore::HTMLMenuItemElement& element) 49 42 { 50 43 itemType = getItemType(element.attributeWithoutSynchronization(WebCore::HTMLNames::typeAttr)); 51 44 identifier = element.attributeWithoutSynchronization(WebCore::HTMLNames::idAttr); 52 commandName = element.attributeWithoutSynchronization(WebCore::HTMLNames::onclickAttr);53 45 priority = element.attributeWithoutSynchronization(WebCore::HTMLNames::valueAttr).toFloat(); 54 }55 56 TouchBarMenuItemData::TouchBarMenuItemData(const TouchBarMenuItemData& other)57 : itemType(other.itemType)58 , identifier(other.identifier)59 , commandName(other.commandName)60 , priority(other.priority)61 {62 46 } 63 47 … … 67 51 68 52 encoder << identifier; 69 encoder << commandName;70 53 encoder << priority; 71 54 } … … 80 63 return std::nullopt; 81 64 82 if (!decoder.decode(result.commandName))83 return std::nullopt;84 85 65 if (!decoder.decode(result.priority)) 86 66 return std::nullopt; -
trunk/Source/WebKit/Shared/TouchBarMenuItemData.h
r225438 r225446 26 26 #pragma once 27 27 #include "ArgumentCoders.h" 28 #include <WebCore/HTMLMenuItemElement.h>29 28 #include <wtf/text/WTFString.h> 30 29 … … 32 31 class Decoder; 33 32 class Encoder; 33 } 34 35 namespace WebCore { 36 class HTMLMenuItemElement; 34 37 } 35 38 … … 42 45 43 46 struct TouchBarMenuItemData { 44 explicit TouchBarMenuItemData() ;45 explicit TouchBarMenuItemData( WebCore::HTMLMenuItemElement&);46 explicit TouchBarMenuItemData(const TouchBarMenuItemData&) ;47 explicit TouchBarMenuItemData() = default; 48 explicit TouchBarMenuItemData(const WebCore::HTMLMenuItemElement&); 49 explicit TouchBarMenuItemData(const TouchBarMenuItemData&) = default; 47 50 48 51 void encode(IPC::Encoder&) const; 49 52 static std::optional<TouchBarMenuItemData> decode(IPC::Decoder&); 50 static ItemType getItemType(String);51 52 bool validTouchBarDisplay { true };53 53 54 54 ItemType itemType { ItemType::Button }; 55 55 String identifier; 56 String commandName;57 56 float priority { 0.0 }; 57 bool validTouchBarDisplay { true }; 58 58 }; 59 59 … … 83 83 return lhs.itemType == rhs.itemType 84 84 && lhs.identifier == rhs.identifier 85 && lhs.commandName == rhs.commandName86 85 && lhs.priority == rhs.priority; 87 86 } -
trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in
r225438 r225446 315 315 #endif 316 316 317 318 317 #if ENABLE(DATA_INTERACTION) 319 318 DidPerformDataInteractionControllerOperation(bool handled)
Note: See TracChangeset
for help on using the changeset viewer.