about summary refs log tree commit diff
path: root/third_party
diff options
context:
space:
mode:
authorLuke Granger-Brown <hg@lukegb.com>2020-07-26T00·17+0100
committerlukegb <lukegb@tvl.fyi>2020-07-26T11·29+0000
commita5c7e03dbdc754996c76a32a9c7d157bd5c938de (patch)
treeb43024d34284d523f46958e358100986e9c60089 /third_party
parentc3608fdf87b34eff33270bf91db3ec35d696f6a2 (diff)
fix(gerrit): fix hovercards under Firefox r/1479
Firefox doesn't implement the IE6 fromElement/toElement, and it's
not in the MouseEvent spec (at the moment).

Replace with the worse-named but better-specified target and
relatedTarget attributes instead.

Upstream change: https://gerrit-review.googlesource.com/q/I9eeb26c032a38de9d7185749373c7982c796acb2

Change-Id: I9f9a1eb9342bc80b91b5b364a04cc5fa9a7ccaeb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1442
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
Diffstat (limited to 'third_party')
-rw-r--r--third_party/gerrit/0001-Use-detzip-in-download_bower.py.patch2
-rw-r--r--third_party/gerrit/0002-Syntax-highlight-nix.patch2
-rw-r--r--third_party/gerrit/0003-Syntax-highlight-rules.pl.patch2
-rw-r--r--third_party/gerrit/0004-Add-titles-to-CLs-over-HTTP.patch2
-rw-r--r--third_party/gerrit/0005-When-using-local-fonts-always-assume-Gerrit-is-mount.patch2
-rw-r--r--third_party/gerrit/0006-Always-use-Google-Fonts.patch2
-rw-r--r--third_party/gerrit/0007-Fix-gr-hovercard-behavior-under-Firefox.patch35
-rw-r--r--third_party/gerrit/default.nix1
8 files changed, 42 insertions, 6 deletions
diff --git a/third_party/gerrit/0001-Use-detzip-in-download_bower.py.patch b/third_party/gerrit/0001-Use-detzip-in-download_bower.py.patch
index c120667a60..7830b0e479 100644
--- a/third_party/gerrit/0001-Use-detzip-in-download_bower.py.patch
+++ b/third_party/gerrit/0001-Use-detzip-in-download_bower.py.patch
@@ -1,7 +1,7 @@
 From c88d8c133d2f50451c7fb73592db4a000b87f15f Mon Sep 17 00:00:00 2001
 From: Luke Granger-Brown <git@lukegb.com>
 Date: Thu, 2 Jul 2020 23:02:09 +0100
-Subject: [PATCH 1/6] Use detzip in download_bower.py
+Subject: [PATCH 1/7] Use detzip in download_bower.py
 
 ---
  tools/js/download_bower.py | 2 +-
diff --git a/third_party/gerrit/0002-Syntax-highlight-nix.patch b/third_party/gerrit/0002-Syntax-highlight-nix.patch
index 9df29ab07b..4353f1e477 100644
--- a/third_party/gerrit/0002-Syntax-highlight-nix.patch
+++ b/third_party/gerrit/0002-Syntax-highlight-nix.patch
@@ -1,7 +1,7 @@
 From 1310ad5e56248bf216774cd13e828ba76e0c6f65 Mon Sep 17 00:00:00 2001
 From: Luke Granger-Brown <git@lukegb.com>
 Date: Thu, 2 Jul 2020 23:02:32 +0100
-Subject: [PATCH 2/6] Syntax highlight nix
+Subject: [PATCH 2/7] Syntax highlight nix
 
 ---
  .../app/elements/diff/gr-syntax-layer/gr-syntax-layer.js         | 1 +
diff --git a/third_party/gerrit/0003-Syntax-highlight-rules.pl.patch b/third_party/gerrit/0003-Syntax-highlight-rules.pl.patch
index a1c43a0485..3b87dc14f2 100644
--- a/third_party/gerrit/0003-Syntax-highlight-rules.pl.patch
+++ b/third_party/gerrit/0003-Syntax-highlight-rules.pl.patch
@@ -1,7 +1,7 @@
 From a8dad8e63a1be32f473e96c6c7530a70d368369f Mon Sep 17 00:00:00 2001
 From: Luke Granger-Brown <git@lukegb.com>
 Date: Thu, 2 Jul 2020 23:02:43 +0100
-Subject: [PATCH 3/6] Syntax highlight rules.pl
+Subject: [PATCH 3/7] Syntax highlight rules.pl
 
 ---
  .../elements/diff/gr-syntax-layer/gr-syntax-layer.js   | 10 ++++++++++
diff --git a/third_party/gerrit/0004-Add-titles-to-CLs-over-HTTP.patch b/third_party/gerrit/0004-Add-titles-to-CLs-over-HTTP.patch
index d6f5e8c9fa..d0d1b52c68 100644
--- a/third_party/gerrit/0004-Add-titles-to-CLs-over-HTTP.patch
+++ b/third_party/gerrit/0004-Add-titles-to-CLs-over-HTTP.patch
@@ -1,7 +1,7 @@
 From 61035d1e81884390708675ab994e0e7210659883 Mon Sep 17 00:00:00 2001
 From: Luke Granger-Brown <git@lukegb.com>
 Date: Thu, 2 Jul 2020 23:03:02 +0100
-Subject: [PATCH 4/6] Add titles to CLs over HTTP
+Subject: [PATCH 4/7] Add titles to CLs over HTTP
 
 ---
  .../gerrit/httpd/raw/IndexHtmlUtil.java       | 14 +++-
diff --git a/third_party/gerrit/0005-When-using-local-fonts-always-assume-Gerrit-is-mount.patch b/third_party/gerrit/0005-When-using-local-fonts-always-assume-Gerrit-is-mount.patch
index a1666c0559..d62c7f0c57 100644
--- a/third_party/gerrit/0005-When-using-local-fonts-always-assume-Gerrit-is-mount.patch
+++ b/third_party/gerrit/0005-When-using-local-fonts-always-assume-Gerrit-is-mount.patch
@@ -1,7 +1,7 @@
 From 73edc92dfa584117f6a4373388c9bc47e50a5713 Mon Sep 17 00:00:00 2001
 From: Luke Granger-Brown <git@lukegb.com>
 Date: Sat, 11 Jul 2020 00:45:57 +0000
-Subject: [PATCH 5/6] When using local fonts, always assume Gerrit is mounted
+Subject: [PATCH 5/7] When using local fonts, always assume Gerrit is mounted
  at the root.
 
 ---
diff --git a/third_party/gerrit/0006-Always-use-Google-Fonts.patch b/third_party/gerrit/0006-Always-use-Google-Fonts.patch
index 597e44604f..87ce3a1b2b 100644
--- a/third_party/gerrit/0006-Always-use-Google-Fonts.patch
+++ b/third_party/gerrit/0006-Always-use-Google-Fonts.patch
@@ -1,7 +1,7 @@
 From f3b85ab3ac139d8ec51c09aa5e0d430d65e35a96 Mon Sep 17 00:00:00 2001
 From: Luke Granger-Brown <git@lukegb.com>
 Date: Sat, 11 Jul 2020 00:46:13 +0000
-Subject: [PATCH 6/6] Always use Google Fonts.
+Subject: [PATCH 6/7] Always use Google Fonts.
 
 We're not a corporate, and we're not behind the GFW. Always use Google Fonts,
 because even though we no longer get the caching benefits (boo, browsers),
diff --git a/third_party/gerrit/0007-Fix-gr-hovercard-behavior-under-Firefox.patch b/third_party/gerrit/0007-Fix-gr-hovercard-behavior-under-Firefox.patch
new file mode 100644
index 0000000000..715c70d701
--- /dev/null
+++ b/third_party/gerrit/0007-Fix-gr-hovercard-behavior-under-Firefox.patch
@@ -0,0 +1,35 @@
+From 460d4806feef7fdddc8e3b63dec4fa1854fd2561 Mon Sep 17 00:00:00 2001
+From: Luke Granger-Brown <lukegb@google.com>
+Date: Sat, 25 Jul 2020 23:54:18 +0000
+Subject: [PATCH 7/7] Fix gr-hovercard-behavior under Firefox
+
+Firefox doesn't implement toElement/fromElement (they're not in the
+spec, and were implemented by Chrome apparently for compatibility with
+IE), but does implement target and relatedTarget, which are part of
+the UI Events spec
+(https://w3c.github.io/uievents/#interface-mouseevent).
+
+Bug: Issue 13175
+Change-Id: I9eeb26c032a38de9d7185749373c7982c796acb2
+---
+ .../app/elements/shared/gr-hovercard/gr-hovercard-behavior.js | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/polygerrit-ui/app/elements/shared/gr-hovercard/gr-hovercard-behavior.js b/polygerrit-ui/app/elements/shared/gr-hovercard/gr-hovercard-behavior.js
+index 04c3166dd5..3d5937b1fa 100644
+--- a/polygerrit-ui/app/elements/shared/gr-hovercard/gr-hovercard-behavior.js
++++ b/polygerrit-ui/app/elements/shared/gr-hovercard/gr-hovercard-behavior.js
+@@ -209,8 +209,8 @@ export const hovercardBehaviorMixin = superClass => class extends superClass {
+     // from the hovercard but now hovering over the target (to stop an annoying
+     // flicker effect), just return.
+     if (opt_e) {
+-      if (opt_e.toElement === this ||
+-          (opt_e.fromElement === this && opt_e.toElement === this._target)) {
++      if (opt_e.relatedTarget === this ||
++          (opt_e.target === this && opt_e.relatedTarget === this._target)) {
+         return;
+       }
+     }
+-- 
+2.27.0
+
diff --git a/third_party/gerrit/default.nix b/third_party/gerrit/default.nix
index 8893f46cde..b90e042b73 100644
--- a/third_party/gerrit/default.nix
+++ b/third_party/gerrit/default.nix
@@ -48,6 +48,7 @@ pkgs.buildBazelPackage {
     ./0004-Add-titles-to-CLs-over-HTTP.patch
     ./0005-When-using-local-fonts-always-assume-Gerrit-is-mount.patch
     ./0006-Always-use-Google-Fonts.patch
+    ./0007-Fix-gr-hovercard-behavior-under-Firefox.patch
   ];
 
   bazelTarget = "release";