aboutsummaryrefslogtreecommitdiffstats
path: root/www
diff options
context:
space:
mode:
authorjbeich <jbeich@FreeBSD.org>2018-04-03 08:49:05 +0800
committerjbeich <jbeich@FreeBSD.org>2018-04-03 08:49:05 +0800
commit7d7859ec838e3bd2415c0dbb1fe8cfb62b6bdf1b (patch)
treef0778da17ee3779f1fcc6ee8df1dd929974846f8 /www
parent21e9df5842af57adac13d6a7ffbcdc7eeadc8e0f (diff)
downloadfreebsd-ports-gnome-7d7859ec838e3bd2415c0dbb1fe8cfb62b6bdf1b.tar.gz
freebsd-ports-gnome-7d7859ec838e3bd2415c0dbb1fe8cfb62b6bdf1b.tar.zst
freebsd-ports-gnome-7d7859ec838e3bd2415c0dbb1fe8cfb62b6bdf1b.zip
www/waterfox: apply some FF60 fixes
Diffstat (limited to 'www')
-rw-r--r--www/waterfox/Makefile2
-rw-r--r--www/waterfox/files/patch-bug137210782
-rw-r--r--www/waterfox/files/patch-bug141800928
-rw-r--r--www/waterfox/files/patch-bug143680927
-rw-r--r--www/waterfox/files/patch-bug1447131160
5 files changed, 298 insertions, 1 deletions
diff --git a/www/waterfox/Makefile b/www/waterfox/Makefile
index 7dd5228a9568..f1e96f0d309b 100644
--- a/www/waterfox/Makefile
+++ b/www/waterfox/Makefile
@@ -2,7 +2,7 @@
PORTNAME= waterfox
DISTVERSION= 56.1.0
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= www ipv6
MAINTAINER= jbeich@FreeBSD.org
diff --git a/www/waterfox/files/patch-bug1372107 b/www/waterfox/files/patch-bug1372107
new file mode 100644
index 000000000000..298cc734250b
--- /dev/null
+++ b/www/waterfox/files/patch-bug1372107
@@ -0,0 +1,82 @@
+commit 4224928879ee
+Author: Michael Kaply <mozilla@kaply.com>
+Date: Wed Mar 14 13:30:53 2018 -0500
+
+ Bug 1372107 - Allow browser to be started despite Autoconfig errors. r=florian, a=ritu
+
+ MozReview-Commit-ID: of8cdUMedC
+
+ --HG--
+ extra : rebase_source : d58039b1f2e268c7a0af77e9a0680f759f203d99
+ extra : source : dad020b0bb45903972c2856cc3a2968f39a27635
+---
+ extensions/pref/autoconfig/src/nsReadConfig.cpp | 27 +++++++++++++------------
+ 1 file changed, 14 insertions(+), 13 deletions(-)
+
+diff --git extensions/pref/autoconfig/src/nsReadConfig.cpp extensions/pref/autoconfig/src/nsReadConfig.cpp
+index a87b5b2c1bd4..8939fdc268eb 100644
+--- extensions/pref/autoconfig/src/nsReadConfig.cpp
++++ extensions/pref/autoconfig/src/nsReadConfig.cpp
+@@ -36,35 +36,35 @@ extern nsresult CentralizedAdminPrefManagerInit();
+ extern nsresult CentralizedAdminPrefManagerFinish();
+
+
+-static void DisplayError(void)
++static nsresult DisplayError(void)
+ {
+ nsresult rv;
+
+ nsCOMPtr<nsIPromptService> promptService = do_GetService("@mozilla.org/embedcomp/prompt-service;1");
+ if (!promptService)
+- return;
++ return NS_ERROR_FAILURE;
+
+ nsCOMPtr<nsIStringBundleService> bundleService = do_GetService(NS_STRINGBUNDLE_CONTRACTID);
+ if (!bundleService)
+- return;
++ return NS_ERROR_FAILURE;
+
+ nsCOMPtr<nsIStringBundle> bundle;
+ bundleService->CreateBundle("chrome://autoconfig/locale/autoconfig.properties",
+ getter_AddRefs(bundle));
+ if (!bundle)
+- return;
++ return NS_ERROR_FAILURE;
+
+ nsXPIDLString title;
+ rv = bundle->GetStringFromName("readConfigTitle", getter_Copies(title));
+ if (NS_FAILED(rv))
+- return;
++ return rv;
+
+ nsXPIDLString err;
+ rv = bundle->GetStringFromName("readConfigMsg", getter_Copies(err));
+ if (NS_FAILED(rv))
+- return;
++ return rv;
+
+- promptService->Alert(nullptr, title.get(), err.get());
++ return promptService->Alert(nullptr, title.get(), err.get());
+ }
+
+ // nsISupports Implementation
+@@ -101,12 +101,13 @@ NS_IMETHODIMP nsReadConfig::Observe(nsISupports *aSubj
+ if (!nsCRT::strcmp(aTopic, NS_PREFSERVICE_READ_TOPIC_ID)) {
+ rv = readConfigFile();
+ if (NS_FAILED(rv)) {
+- DisplayError();
+-
+- nsCOMPtr<nsIAppStartup> appStartup =
+- do_GetService(NS_APPSTARTUP_CONTRACTID);
+- if (appStartup)
+- appStartup->Quit(nsIAppStartup::eAttemptQuit);
++ rv = DisplayError();
++ if (NS_FAILED(rv)) {
++ nsCOMPtr<nsIAppStartup> appStartup =
++ do_GetService(NS_APPSTARTUP_CONTRACTID);
++ if (appStartup)
++ appStartup->Quit(nsIAppStartup::eAttemptQuit);
++ }
+ }
+ }
+ return rv;
diff --git a/www/waterfox/files/patch-bug1418009 b/www/waterfox/files/patch-bug1418009
new file mode 100644
index 000000000000..2a9f5a7fd4fa
--- /dev/null
+++ b/www/waterfox/files/patch-bug1418009
@@ -0,0 +1,28 @@
+commit 068a8c4feb56
+Author: Oriol Brufau <oriol-bugzilla@hotmail.com>
+Date: Fri Mar 16 16:58:36 2018 +0100
+
+ Bug 1418009 - Avoid speculative connections on prematurely inserted lazy tabs. r=dao, a=RyanVM
+
+ MozReview-Commit-ID: 3T8PLBLEGNt
+
+ --HG--
+ extra : rebase_source : 5839f1ede2a3d939e8bad02520979a8911f69553
+ extra : source : 6d67283033868a54d89a936ba5e336d9bad5c79c
+---
+ browser/components/sessionstore/SessionStore.jsm | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git browser/components/sessionstore/SessionStore.jsm browser/components/sessionstore/SessionStore.jsm
+index dee998cbe7eb..88de8a64f0fc 100644
+--- browser/components/sessionstore/SessionStore.jsm
++++ browser/components/sessionstore/SessionStore.jsm
+@@ -3547,7 +3547,7 @@ var SessionStoreInternal = {
+ * a tab to speculatively connect on mouse hover.
+ */
+ speculativeConnectOnTabHover(tab) {
+- if (this._restore_on_demand && !tab.__SS_connectionPrepared && tab.hasAttribute("pending")) {
++ if (tab.__SS_lazyData && !tab.__SS_connectionPrepared) {
+ let url = this.getLazyTabValue(tab, "url");
+ let prepared = this.prepareConnectionToHost(url);
+ // This is used to test if a connection has been made beforehand.
diff --git a/www/waterfox/files/patch-bug1436809 b/www/waterfox/files/patch-bug1436809
new file mode 100644
index 000000000000..541eaa1562ee
--- /dev/null
+++ b/www/waterfox/files/patch-bug1436809
@@ -0,0 +1,27 @@
+commit 91f4336a7ddc
+Author: Michal Novotny <michal.novotny@gmail.com>
+Date: Mon Apr 2 12:59:18 2018 -0400
+
+ Bug 1436809 - Check that stream message was converted to string correctly. r=valentin, a=abillings
+
+ --HG--
+ extra : rebase_source : c81e8000cd7e41d8928e6ee0c6eb6ee823debc23
+ extra : source : b229809d17ff18263becfad6f9777c9ab0165279
+---
+ netwerk/protocol/websocket/WebSocketChannel.cpp | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git netwerk/protocol/websocket/WebSocketChannel.cpp netwerk/protocol/websocket/WebSocketChannel.cpp
+index a08655f95d8c..a17b2f382d23 100644
+--- netwerk/protocol/websocket/WebSocketChannel.cpp
++++ netwerk/protocol/websocket/WebSocketChannel.cpp
+@@ -1052,6 +1052,9 @@ public:
+ nsresult rv = NS_ReadInputStreamToString(mMsg.pStream, *temp, mLength);
+
+ NS_ENSURE_SUCCESS(rv, rv);
++ if (temp->Length() != mLength) {
++ return NS_ERROR_UNEXPECTED;
++ }
+
+ mMsg.pStream->Close();
+ mMsg.pStream->Release();
diff --git a/www/waterfox/files/patch-bug1447131 b/www/waterfox/files/patch-bug1447131
new file mode 100644
index 000000000000..ff424b941472
--- /dev/null
+++ b/www/waterfox/files/patch-bug1447131
@@ -0,0 +1,160 @@
+commit c6116093dd45
+Author: Botond Ballo <botond@mozilla.com>
+Date: Wed Mar 28 14:22:30 2018 -0400
+
+ Bug 1447131 - Handle backface-visibility:hidden in compositor hit testing. r=kats a=RyanVM
+
+ MozReview-Commit-ID: EZhhSk3EZAL
+
+ --HG--
+ extra : source : e4b8a1682e6c4587649bcfbf5dab4b2ccdf4c741
+---
+ gfx/layers/LayerMetricsWrapper.h | 7 +++++++
+ gfx/layers/apz/src/APZCTreeManager.cpp | 9 ++++++---
+ gfx/layers/apz/src/HitTestingTreeNode.cpp | 12 +++++++++++-
+ gfx/layers/apz/src/HitTestingTreeNode.h | 11 ++++++++++-
+ gfx/layers/wr/WebRenderScrollDataWrapper.h | 7 +++++++
+ 5 files changed, 41 insertions(+), 5 deletions(-)
+
+diff --git gfx/layers/LayerMetricsWrapper.h gfx/layers/LayerMetricsWrapper.h
+index baffde611220..dcf9fdc02b21 100644
+--- gfx/layers/LayerMetricsWrapper.h
++++ gfx/layers/LayerMetricsWrapper.h
+@@ -446,6 +446,13 @@ public:
+ return mLayer->GetFixedPositionScrollContainerId();
+ }
+
++ bool IsBackfaceHidden() const
++ {
++ MOZ_ASSERT(IsValid());
++
++ return mLayer->IsBackfaceHidden();
++ }
++
+ // Expose an opaque pointer to the layer. Mostly used for printf
+ // purposes. This is not intended to be a general-purpose accessor
+ // for the underlying layer.
+diff --git gfx/layers/apz/src/APZCTreeManager.cpp gfx/layers/apz/src/APZCTreeManager.cpp
+index 9c66d22a41fe..7f82c3cee0a8 100644
+--- gfx/layers/apz/src/APZCTreeManager.cpp
++++ gfx/layers/apz/src/APZCTreeManager.cpp
+@@ -835,7 +835,8 @@ APZCTreeManager::PrepareNodeForLayer(const ScrollNode& aLayer,
+ (!parentHasPerspective && aLayer.GetClipRect())
+ ? Some(ParentLayerIntRegion(*aLayer.GetClipRect()))
+ : Nothing(),
+- GetEventRegionsOverride(aParent, aLayer));
++ GetEventRegionsOverride(aParent, aLayer),
++ aLayer.IsBackfaceHidden());
+ node->SetScrollbarData(aLayer.GetScrollbarTargetContainerId(),
+ aLayer.GetScrollbarAnimationId(),
+ aLayer.GetScrollThumbData(),
+@@ -948,7 +949,8 @@ APZCTreeManager::PrepareNodeForLayer(const ScrollNode& aLayer,
+ aLayer.GetVisibleRegion(),
+ aLayer.GetTransformTyped(),
+ clipRegion,
+- GetEventRegionsOverride(aParent, aLayer));
++ GetEventRegionsOverride(aParent, aLayer),
++ aLayer.IsBackfaceHidden());
+ apzc->SetAncestorTransform(aAncestorTransform);
+
+ PrintAPZCInfo(aLayer, apzc);
+@@ -1047,7 +1049,8 @@ APZCTreeManager::PrepareNodeForLayer(const ScrollNode& aLayer,
+ aLayer.GetVisibleRegion(),
+ aLayer.GetTransformTyped(),
+ clipRegion,
+- GetEventRegionsOverride(aParent, aLayer));
++ GetEventRegionsOverride(aParent, aLayer),
++ aLayer.IsBackfaceHidden());
+ }
+
+ // Note: if layer properties must be propagated to nodes, RecvUpdate in
+diff --git gfx/layers/apz/src/HitTestingTreeNode.cpp gfx/layers/apz/src/HitTestingTreeNode.cpp
+index f16758e72ec6..ee1fce927c0d 100644
+--- gfx/layers/apz/src/HitTestingTreeNode.cpp
++++ gfx/layers/apz/src/HitTestingTreeNode.cpp
+@@ -31,6 +31,7 @@ HitTestingTreeNode::HitTestingTreeNode(AsyncPanZoomController* aApzc,
+ , mScrollViewId(FrameMetrics::NULL_SCROLL_ID)
+ , mScrollbarAnimationId(0)
+ , mFixedPosTarget(FrameMetrics::NULL_SCROLL_ID)
++ , mIsBackfaceHidden(false)
+ , mOverride(EventRegionsOverride::NoOverride)
+ {
+ if (mIsPrimaryApzcHolder) {
+@@ -263,13 +264,15 @@ HitTestingTreeNode::SetHitTestData(const EventRegions& aRegions,
+ const LayerIntRegion& aVisibleRegion,
+ const CSSTransformMatrix& aTransform,
+ const Maybe<ParentLayerIntRegion>& aClipRegion,
+- const EventRegionsOverride& aOverride)
++ const EventRegionsOverride& aOverride,
++ bool aIsBackfaceHidden)
+ {
+ mEventRegions = aRegions;
+ mVisibleRegion = aVisibleRegion;
+ mTransform = aTransform;
+ mClipRegion = aClipRegion;
+ mOverride = aOverride;
++ mIsBackfaceHidden = aIsBackfaceHidden;
+ }
+
+ bool
+@@ -287,6 +290,13 @@ HitTestingTreeNode::HitTest(const LayerPoint& aPoint) const
+ }
+
+ auto point = LayerIntPoint::Round(aPoint);
++
++ // If the layer's backface is showing and it's hidden, don't hit it.
++ // This matches the behavior of main-thread hit testing in
++ // nsDisplayTransform::HitTest().
++ if (mIsBackfaceHidden) {
++ return HitTestResult::HitNothing;
++ }
+
+ // test against event regions in Layer coordinate space
+ if (!mEventRegions.mHitRegion.Contains(point.x, point.y)) {
+diff --git gfx/layers/apz/src/HitTestingTreeNode.h gfx/layers/apz/src/HitTestingTreeNode.h
+index 50e04e515652..aef703fd23b5 100644
+--- gfx/layers/apz/src/HitTestingTreeNode.h
++++ gfx/layers/apz/src/HitTestingTreeNode.h
+@@ -89,7 +89,8 @@ public:
+ const LayerIntRegion& aVisibleRegion,
+ const CSSTransformMatrix& aTransform,
+ const Maybe<ParentLayerIntRegion>& aClipRegion,
+- const EventRegionsOverride& aOverride);
++ const EventRegionsOverride& aOverride,
++ bool aIsBackfaceHidden);
+ bool IsOutsideClip(const ParentLayerPoint& aPoint) const;
+
+ /* Scrollbar info */
+@@ -172,6 +173,14 @@ private:
+ * transforms. */
+ CSSTransformMatrix mTransform;
+
++ /* Whether layer L is backface-visibility:hidden, and its backface is
++ * currently visible. It's true that the latter depends on the layer's
++ * shadow transform, but the sorts of changes APZ makes to the shadow
++ * transform shouldn't change the backface from hidden to visible or
++ * vice versa, so it's sufficient to record this at hit test tree
++ * building time. */
++ bool mIsBackfaceHidden;
++
+ /* This is clip rect for L that we wish to use for hit-testing purposes. Note
+ * that this may not be exactly the same as the clip rect on layer L because
+ * of the touch-sensitive region provided by the GeckoContentController, or
+diff --git gfx/layers/wr/WebRenderScrollDataWrapper.h gfx/layers/wr/WebRenderScrollDataWrapper.h
+index 2e20bbdcdb8f..64d5319e10ff 100644
+--- gfx/layers/wr/WebRenderScrollDataWrapper.h
++++ gfx/layers/wr/WebRenderScrollDataWrapper.h
+@@ -315,6 +315,13 @@ public:
+ return mLayer->GetFixedPositionScrollContainerId();
+ }
+
++ bool IsBackfaceHidden() const
++ {
++ // This is only used by APZCTM hit testing, and WR does its own
++ // hit testing, so no need to implement this.
++ return false;
++ }
++
+ const void* GetLayer() const
+ {
+ MOZ_ASSERT(IsValid());