summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Stransky <stransky@redhat.com>2018-05-29 14:37:47 +0200
committerMartin Stransky <stransky@redhat.com>2018-05-29 14:37:47 +0200
commitc354b7e1473dd5def9c5ff11e4ed2912aac65abf (patch)
treed4b8022d1c4d8ea9d1c5f22a46fbcc57001e823b
parent Added fix for mozbz#1462640 - Sandbox disables eglGetDisplay() call on Wayla... (diff)
downloadlibrewolf-fedora-ff-c354b7e1473dd5def9c5ff11e4ed2912aac65abf.tar.gz
librewolf-fedora-ff-c354b7e1473dd5def9c5ff11e4ed2912aac65abf.tar.bz2
librewolf-fedora-ff-c354b7e1473dd5def9c5ff11e4ed2912aac65abf.zip
Added fix for mozbz#1464808 - Set default D&D action to move on Wayland
-rw-r--r--firefox.spec8
-rw-r--r--mozilla-1464808.patch31
2 files changed, 38 insertions, 1 deletions
diff --git a/firefox.spec b/firefox.spec
index a34f715..019f257 100644
--- a/firefox.spec
+++ b/firefox.spec
@@ -102,7 +102,7 @@
Summary: Mozilla Firefox Web browser
Name: firefox
Version: 60.0.1
-Release: 3%{?pre_tag}%{?dist}
+Release: 4%{?pre_tag}%{?dist}
URL: https://www.mozilla.org/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
Source0: https://hg.mozilla.org/releases/mozilla-release/archive/firefox-%{version}%{?pre_version}.source.tar.xz
@@ -179,6 +179,7 @@ Patch560: rb244010.patch
Patch561: rb244012.patch
Patch562: rb246410.patch
Patch563: rb245262.patch
+Patch564: mozilla-1464808.patch
# Debian patches
Patch500: mozilla-440908.patch
@@ -374,6 +375,7 @@ This package contains results of tests executed during build.
%patch561 -p1 -b .rb244012
%patch562 -p1 -b .rb246410
%patch563 -p1 -b .rb245262
+%patch564 -p1 -b .mozilla-1464808
%endif
%{__rm} -f .mozconfig
@@ -910,6 +912,10 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
+* Tue May 29 2018 Martin Stransky <stransky@redhat.com> - 60.0.1-4
+- Added fix for mozbz#1464808 - Set default D&D action to move
+ on Wayland.
+
* Fri May 25 2018 Martin Stransky <stransky@redhat.com> - 60.0.1-3
- Added fix for mozbz#1436242 (rhbz#1577277) - Firefox IPC crashes.
- Added fix for mozbz#1462640 - Sandbox disables eglGetDisplay()
diff --git a/mozilla-1464808.patch b/mozilla-1464808.patch
new file mode 100644
index 0000000..6cb6bde
--- /dev/null
+++ b/mozilla-1464808.patch
@@ -0,0 +1,31 @@
+diff --git a/widget/gtk/nsClipboardWayland.cpp b/widget/gtk/nsClipboardWayland.cpp
+--- a/widget/gtk/nsClipboardWayland.cpp
++++ b/widget/gtk/nsClipboardWayland.cpp
+@@ -201,21 +201,25 @@ WaylandDataOffer::DragOfferAccept(const
+ }
+
+ /* We follow logic of gdk_wayland_drag_context_commit_status()/gdkdnd-wayland.c
+ * here.
+ */
+ void
+ WaylandDataOffer::SetDragStatus(GdkDragAction aAction, uint32_t aTime)
+ {
+- uint32_t dnd_actions = gdk_to_wl_actions(aAction);
+ uint32_t all_actions = WL_DATA_DEVICE_MANAGER_DND_ACTION_COPY |
+ WL_DATA_DEVICE_MANAGER_DND_ACTION_MOVE;
+
+- wl_data_offer_set_actions(mWaylandDataOffer, all_actions, dnd_actions);
++ /* Default Firefox D&D action is move so set it here as a preferred one.
++ Actual D&D action will be select by Wayland compositor and reported
++ at data_offer_action() callback.
++ */
++ wl_data_offer_set_actions(mWaylandDataOffer, all_actions,
++ WL_DATA_DEVICE_MANAGER_DND_ACTION_MOVE);
+
+ /* Workaround Wayland D&D architecture here. To get the data_device_drop()
+ signal (which routes to nsDragService::GetData() call) we need to
+ accept at least one mime type before data_device_leave().
+
+ Real wl_data_offer_accept() for actualy requested data mime type is
+ called from nsDragService::GetData().
+ */
bgstack15