- Revision
- 225446
- Author
- [email protected]
- Date
- 2017-12-02 00:47:19 -0800 (Sat, 02 Dec 2017)
Log Message
Make some minor adjustments to TouchBarMenuData and TouchBarMenuItemData
https://bugs.webkit.org/show_bug.cgi?id=180305
Reviewed by Joseph Pecoraro.
Mark some methods and parameters as const, use the default constructor in more places, and also remove a few
extraneous imported headers.
* Shared/TouchBarMenuData.cpp:
(WebKit::TouchBarMenuData::TouchBarMenuData):
Add a FIXME regarding the use of the 'id' attribute.
(WebKit::TouchBarMenuData::decode):
* Shared/TouchBarMenuData.h:
(WebKit::TouchBarMenuData::items const):
(WebKit::TouchBarMenuData::setID):
(WebKit::TouchBarMenuData::isPageCustomized const):
(WebKit::TouchBarMenuData::items): Deleted.
(WebKit::TouchBarMenuData::isPageCustomized): Deleted.
* Shared/TouchBarMenuItemData.cpp:
(WebKit::getItemType):
Change a helper method from a static class function to a static function in the implementation file.
(WebKit::TouchBarMenuItemData::TouchBarMenuItemData):
(WebKit::TouchBarMenuItemData::encode const):
(WebKit::TouchBarMenuItemData::decode):
(WebKit::TouchBarMenuItemData::getItemType): Deleted.
* Shared/TouchBarMenuItemData.h:
(WebKit::operator==):
Remove the commandName member variable, since it doesn't make sense to propagate an event handler
attribute from WebCore to the client layer.
* UIProcess/WebPageProxy.messages.in:
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (225445 => 225446)
--- trunk/Source/WebKit/ChangeLog 2017-12-02 06:55:52 UTC (rev 225445)
+++ trunk/Source/WebKit/ChangeLog 2017-12-02 08:47:19 UTC (rev 225446)
@@ -1,3 +1,42 @@
+2017-12-02 Wenson Hsieh <[email protected]>
+
+ Make some minor adjustments to TouchBarMenuData and TouchBarMenuItemData
+ https://bugs.webkit.org/show_bug.cgi?id=180305
+
+ Reviewed by Joseph Pecoraro.
+
+ Mark some methods and parameters as const, use the default constructor in more places, and also remove a few
+ extraneous imported headers.
+
+ * Shared/TouchBarMenuData.cpp:
+ (WebKit::TouchBarMenuData::TouchBarMenuData):
+
+ Add a FIXME regarding the use of the 'id' attribute.
+
+ (WebKit::TouchBarMenuData::decode):
+ * Shared/TouchBarMenuData.h:
+ (WebKit::TouchBarMenuData::items const):
+ (WebKit::TouchBarMenuData::setID):
+ (WebKit::TouchBarMenuData::isPageCustomized const):
+ (WebKit::TouchBarMenuData::items): Deleted.
+ (WebKit::TouchBarMenuData::isPageCustomized): Deleted.
+ * Shared/TouchBarMenuItemData.cpp:
+ (WebKit::getItemType):
+
+ Change a helper method from a static class function to a static function in the implementation file.
+
+ (WebKit::TouchBarMenuItemData::TouchBarMenuItemData):
+ (WebKit::TouchBarMenuItemData::encode const):
+ (WebKit::TouchBarMenuItemData::decode):
+ (WebKit::TouchBarMenuItemData::getItemType): Deleted.
+ * Shared/TouchBarMenuItemData.h:
+ (WebKit::operator==):
+
+ Remove the commandName member variable, since it doesn't make sense to propagate an event handler
+ attribute from WebCore to the client layer.
+
+ * UIProcess/WebPageProxy.messages.in:
+
2017-12-01 Zan Dobersek <[email protected]>
Unreviewed GTK+ debug build fix. Replace ASSERT_UNUSED() with UNUSED_PARAM()
Modified: trunk/Source/WebKit/Shared/TouchBarMenuData.cpp (225445 => 225446)
--- trunk/Source/WebKit/Shared/TouchBarMenuData.cpp 2017-12-02 06:55:52 UTC (rev 225445)
+++ trunk/Source/WebKit/Shared/TouchBarMenuData.cpp 2017-12-02 08:47:19 UTC (rev 225446)
@@ -30,32 +30,23 @@
#include "Encoder.h"
#include "TouchBarMenuItemData.h"
#include "WebCoreArgumentCoders.h"
-#include <WebCore/HTMLElement.h>
#include <WebCore/HTMLMenuElement.h>
#include <WebCore/HTMLNames.h>
-#include <WebCore/Node.h>
namespace WebKit {
-TouchBarMenuData::TouchBarMenuData()
+TouchBarMenuData::TouchBarMenuData(const WebCore::HTMLMenuElement& element)
{
-}
-
-TouchBarMenuData::TouchBarMenuData(WebCore::HTMLMenuElement& element)
-{
if (!element.isTouchBarMenu())
return;
+
+ // FIXME: We can't rely on using the 'id' attribute of the element here to distinguish
+ // between different menu items. For instance, a menuitem may have the same 'id' as
+ // another, or have no 'id' at all.
m_id = element.attributeWithoutSynchronization(WebCore::HTMLNames::idAttr);
m_isPageCustomized = true;
}
-TouchBarMenuData::TouchBarMenuData(const TouchBarMenuData& touchBarMenuData)
- : m_items(touchBarMenuData.m_items)
- , m_id(touchBarMenuData.m_id)
- , m_isPageCustomized(touchBarMenuData.m_isPageCustomized)
-{
-}
-
void TouchBarMenuData::addMenuItem(const TouchBarMenuItemData& data)
{
m_items.append(data);
@@ -73,10 +64,7 @@
bool TouchBarMenuData::decode(IPC::Decoder& decoder, TouchBarMenuData& data)
{
- if (!decoder.decode(data.m_items))
- return false;
-
- return true;
+ return decoder.decode(data.m_items);
}
}
Modified: trunk/Source/WebKit/Shared/TouchBarMenuData.h (225445 => 225446)
--- trunk/Source/WebKit/Shared/TouchBarMenuData.h 2017-12-02 06:55:52 UTC (rev 225445)
+++ trunk/Source/WebKit/Shared/TouchBarMenuData.h 2017-12-02 08:47:19 UTC (rev 225446)
@@ -26,7 +26,6 @@
#pragma once
#include "ArgumentCoders.h"
#include "TouchBarMenuItemData.h"
-#include <WebCore/HTMLMenuElement.h>
#include <wtf/text/WTFString.h>
namespace IPC {
@@ -34,24 +33,28 @@
class Encoder;
}
+namespace WebCore {
+class HTMLMenuElement;
+}
+
namespace WebKit {
class TouchBarMenuData {
public:
- explicit TouchBarMenuData();
- explicit TouchBarMenuData(WebCore::HTMLMenuElement&);
- explicit TouchBarMenuData(const TouchBarMenuData&);
+ explicit TouchBarMenuData() = default;
+ explicit TouchBarMenuData(const WebCore::HTMLMenuElement&);
+ explicit TouchBarMenuData(const TouchBarMenuData&) = default;
void addMenuItem(const TouchBarMenuItemData&);
void removeMenuItem(const TouchBarMenuItemData&);
- const Vector<TouchBarMenuItemData>& items() { return m_items; }
+ const Vector<TouchBarMenuItemData>& items() const { return m_items; }
void encode(IPC::Encoder&) const;
static bool decode(IPC::Decoder&, TouchBarMenuData&);
- void setID(String);
- bool isPageCustomized() { return m_isPageCustomized; }
+ void setID(const String& identifier) { m_id = identifier; }
+ bool isPageCustomized() const { return m_isPageCustomized; }
void setIsPageCustomized(bool customized) { m_isPageCustomized = customized; }
private:
Modified: trunk/Source/WebKit/Shared/TouchBarMenuItemData.cpp (225445 => 225446)
--- trunk/Source/WebKit/Shared/TouchBarMenuItemData.cpp 2017-12-02 06:55:52 UTC (rev 225445)
+++ trunk/Source/WebKit/Shared/TouchBarMenuItemData.cpp 2017-12-02 08:47:19 UTC (rev 225446)
@@ -28,38 +28,22 @@
#include "Decoder.h"
#include "Encoder.h"
#include "WebCoreArgumentCoders.h"
-#include <WebCore/HTMLElement.h>
#include <WebCore/HTMLMenuItemElement.h>
#include <WebCore/HTMLNames.h>
-#include <WebCore/Node.h>
-#include <vector>
namespace WebKit {
-ItemType TouchBarMenuItemData::getItemType(String value)
+static ItemType getItemType(const String&)
{
return ItemType::Button;
}
-TouchBarMenuItemData::TouchBarMenuItemData()
+TouchBarMenuItemData::TouchBarMenuItemData(const WebCore::HTMLMenuItemElement& element)
{
-}
-
-TouchBarMenuItemData::TouchBarMenuItemData(WebCore::HTMLMenuItemElement& element)
-{
itemType = getItemType(element.attributeWithoutSynchronization(WebCore::HTMLNames::typeAttr));
identifier = element.attributeWithoutSynchronization(WebCore::HTMLNames::idAttr);
- commandName = element.attributeWithoutSynchronization(WebCore::HTMLNames::onclickAttr);
priority = element.attributeWithoutSynchronization(WebCore::HTMLNames::valueAttr).toFloat();
}
-
-TouchBarMenuItemData::TouchBarMenuItemData(const TouchBarMenuItemData& other)
- : itemType(other.itemType)
- , identifier(other.identifier)
- , commandName(other.commandName)
- , priority(other.priority)
-{
-}
void TouchBarMenuItemData::encode(IPC::Encoder& encoder) const
{
@@ -66,7 +50,6 @@
encoder.encodeEnum(itemType);
encoder << identifier;
- encoder << commandName;
encoder << priority;
}
@@ -79,9 +62,6 @@
if (!decoder.decode(result.identifier))
return std::nullopt;
- if (!decoder.decode(result.commandName))
- return std::nullopt;
-
if (!decoder.decode(result.priority))
return std::nullopt;
Modified: trunk/Source/WebKit/Shared/TouchBarMenuItemData.h (225445 => 225446)
--- trunk/Source/WebKit/Shared/TouchBarMenuItemData.h 2017-12-02 06:55:52 UTC (rev 225445)
+++ trunk/Source/WebKit/Shared/TouchBarMenuItemData.h 2017-12-02 08:47:19 UTC (rev 225446)
@@ -25,7 +25,6 @@
#pragma once
#include "ArgumentCoders.h"
-#include <WebCore/HTMLMenuItemElement.h>
#include <wtf/text/WTFString.h>
namespace IPC {
@@ -33,6 +32,10 @@
class Encoder;
}
+namespace WebCore {
+class HTMLMenuItemElement;
+}
+
namespace WebKit {
// Based on NSTouchBarItem types.
@@ -41,20 +44,17 @@
};
struct TouchBarMenuItemData {
- explicit TouchBarMenuItemData();
- explicit TouchBarMenuItemData(WebCore::HTMLMenuItemElement&);
- explicit TouchBarMenuItemData(const TouchBarMenuItemData&);
+ explicit TouchBarMenuItemData() = default;
+ explicit TouchBarMenuItemData(const WebCore::HTMLMenuItemElement&);
+ explicit TouchBarMenuItemData(const TouchBarMenuItemData&) = default;
void encode(IPC::Encoder&) const;
static std::optional<TouchBarMenuItemData> decode(IPC::Decoder&);
- static ItemType getItemType(String);
- bool validTouchBarDisplay { true };
-
ItemType itemType { ItemType::Button };
String identifier;
- String commandName;
float priority { 0.0 };
+ bool validTouchBarDisplay { true };
};
// Touch Bar Menu Items will be ordered based on priority.
@@ -82,7 +82,6 @@
{
return lhs.itemType == rhs.itemType
&& lhs.identifier == rhs.identifier
- && lhs.commandName == rhs.commandName
&& lhs.priority == rhs.priority;
}
Modified: trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in (225445 => 225446)
--- trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in 2017-12-02 06:55:52 UTC (rev 225445)
+++ trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in 2017-12-02 08:47:19 UTC (rev 225446)
@@ -314,7 +314,6 @@
StartDrag(struct WebKit::WebSelectionData selection, uint64_t dragOperation, WebKit::ShareableBitmap::Handle dragImage)
#endif
-
#if ENABLE(DATA_INTERACTION)
DidPerformDataInteractionControllerOperation(bool handled)
DidHandleStartDataInteractionRequest(bool started)