Make mouse event simulation a quirk
authorgraouts@webkit.org <graouts@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 18 Mar 2019 16:25:06 +0000 (16:25 +0000)
committergraouts@webkit.org <graouts@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 18 Mar 2019 16:25:06 +0000 (16:25 +0000)
https://bugs.webkit.org/show_bug.cgi?id=195218
<rdar://problem/48516794>

Reviewed by Dean Jackson.

Add new quirks to control whether we should dispatch simulated mouse events and whether we should assume
preventDefault() was called when a simulated "mousemove" event was handled. Currently both return false
but will be made to return more interesting results as we determine heuristics or specific sites that
may require such quirks.

* page/Quirks.cpp:
(WebCore::Quirks::shouldDispatchSimulateMouseEvents const):
(WebCore::Quirks::shouldMousemoveEventHandlingPreventDefault const):
* page/Quirks.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@243070 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebCore/ChangeLog
Source/WebCore/page/Quirks.cpp
Source/WebCore/page/Quirks.h

index e7070d6..c7ae890 100644 (file)
@@ -1,3 +1,21 @@
+2019-03-15  Antoine Quint  <graouts@apple.com>
+
+        Make mouse event simulation a quirk
+        https://bugs.webkit.org/show_bug.cgi?id=195218
+        <rdar://problem/48516794>
+
+        Reviewed by Dean Jackson.
+
+        Add new quirks to control whether we should dispatch simulated mouse events and whether we should assume
+        preventDefault() was called when a simulated "mousemove" event was handled. Currently both return false
+        but will be made to return more interesting results as we determine heuristics or specific sites that
+        may require such quirks.
+
+        * page/Quirks.cpp:
+        (WebCore::Quirks::shouldDispatchSimulateMouseEvents const):
+        (WebCore::Quirks::shouldMousemoveEventHandlingPreventDefault const):
+        * page/Quirks.h:
+
 2019-03-18  Philippe Normand  <pnormand@igalia.com>
 
         [GStreamer] Rewrite HTTP source element using pushsrc base class
index 5b15db2..c501deb 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2018 Apple Inc. All rights reserved.
+ * Copyright (C) 2018-2019 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -195,4 +195,14 @@ bool Quirks::isNeverRichlyEditableForTouchBar() const
     return false;
 }
 
+bool Quirks::shouldDispatchSimulateMouseEvents() const
+{
+    return false;
+}
+
+bool Quirks::shouldMousemoveEventHandlingPreventDefault() const
+{
+    return false;
+}
+
 }
index 46ad6d6..31d6004 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2018 Apple Inc. All rights reserved.
+ * Copyright (C) 2018-2019 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -45,6 +45,8 @@ public:
     bool shouldAutoplayForArbitraryUserGesture() const;
     bool hasBrokenEncryptedMediaAPISupportQuirk() const;
     bool hasWebSQLSupportQuirk() const;
+    bool shouldDispatchSimulateMouseEvents() const;
+    bool shouldMousemoveEventHandlingPreventDefault() const;
 
     WEBCORE_EXPORT bool isTouchBarUpdateSupressedForHiddenContentEditable() const;
     WEBCORE_EXPORT bool isNeverRichlyEditableForTouchBar() const;