* [PR PATCH] <!-- Mark items with [x] where applicable -->
@ 2021-04-21 13:42 travankor
2021-04-21 13:53 ` [PR PATCH] [Updated] wayfire: update to 0.7.1 travankor
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: travankor @ 2021-04-21 13:42 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 1537 bytes --]
There is a new pull request by travankor against master on the void-packages repository
https://github.com/travankor/void-packages wayfire
https://github.com/void-linux/void-packages/pull/30407
<!-- Mark items with [x] where applicable -->
#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)
#### Have the results of the proposed changes been tested?
- [X] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR
<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!--
#### Does it build and run successfully?
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
- [ ] aarch64-musl
- [ ] armv7l
- [ ] armv6l-musl
-->
A patch file from https://github.com/void-linux/void-packages/pull/30407.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-wayfire-30407.patch --]
[-- Type: text/x-diff, Size: 13375 bytes --]
From c79c455c366ceb4dc93774dca1fe978fac483f45 Mon Sep 17 00:00:00 2001
From: travankor <travankor@tuta.io>
Date: Wed, 10 Mar 2021 03:04:11 -0700
Subject: [PATCH 1/3] wayfire: update to 0.7.1.
---
srcpkgs/wayfire/patches/wlroots13.patch | 189 ------------------------
srcpkgs/wayfire/template | 8 +-
2 files changed, 4 insertions(+), 193 deletions(-)
delete mode 100644 srcpkgs/wayfire/patches/wlroots13.patch
diff --git a/srcpkgs/wayfire/patches/wlroots13.patch b/srcpkgs/wayfire/patches/wlroots13.patch
deleted file mode 100644
index d42dbc425a3a..000000000000
--- a/srcpkgs/wayfire/patches/wlroots13.patch
+++ /dev/null
@@ -1,189 +0,0 @@
-diff --git a/meson.build b/meson.build
-index 4a8992cb..117f928c 100644
---- a/meson.build
-+++ b/meson.build
-@@ -28,7 +28,7 @@ libinput = dependency('libinput', version: '>=1.7.0')
- pixman = dependency('pixman-1')
- threads = dependency('threads')
- xkbcommon = dependency('xkbcommon')
--wlroots = dependency('wlroots', version: ['>=0.12.0', '<0.13.0'], required: get_option('use_system_wlroots'))
-+wlroots = dependency('wlroots', version: ['>=0.13.0', '<0.14.0'], required: get_option('use_system_wlroots'))
- wfconfig = dependency('wf-config', version: ['>=0.7.0', '<0.8.0'], required: get_option('use_system_wfconfig'))
-
- use_system_wlroots = not get_option('use_system_wlroots').disabled() and wlroots.found()
-diff --git a/plugins/single_plugins/vswipe.cpp b/plugins/single_plugins/vswipe.cpp
-index da37448c..26c8f399 100644
---- a/plugins/single_plugins/vswipe.cpp
-+++ b/plugins/single_plugins/vswipe.cpp
-@@ -1,3 +1,4 @@
-+#include <wayfire/nonstd/wlroots-full.hpp>
- #include <wayfire/plugin.hpp>
- #include <wayfire/output.hpp>
- #include <wayfire/core.hpp>
-diff --git a/src/api/wayfire/nonstd/wlroots-full.hpp b/src/api/wayfire/nonstd/wlroots-full.hpp
-index 77a12c70..4a24f1a1 100644
---- a/src/api/wayfire/nonstd/wlroots-full.hpp
-+++ b/src/api/wayfire/nonstd/wlroots-full.hpp
-@@ -112,6 +112,8 @@ extern "C"
- #include <wlr/types/wlr_pointer_gestures_v1.h>
- #include <wlr/types/wlr_idle.h>
- #include <wlr/interfaces/wlr_keyboard.h>
-+#include <wlr/types/wlr_touch.h>
-+#include <wlr/types/wlr_pointer_gestures_v1.h>
- #include <wlr/xcursor.h>
- #include <wlr/types/wlr_data_control_v1.h>
- #include <wlr/types/wlr_virtual_keyboard_v1.h>
-diff --git a/src/api/wayfire/nonstd/wlroots.hpp b/src/api/wayfire/nonstd/wlroots.hpp
-index 4686d14f..402ab3cd 100644
---- a/src/api/wayfire/nonstd/wlroots.hpp
-+++ b/src/api/wayfire/nonstd/wlroots.hpp
-@@ -43,7 +43,14 @@ extern "C"
- struct wlr_viewporter;
-
- #include <wlr/types/wlr_input_device.h>
-+#include <wlr/types/wlr_pointer.h>
-+#include <wlr/types/wlr_keyboard.h>
-+#include <wlr/types/wlr_touch.h>
- #include <wlr/types/wlr_output.h>
- #include <wlr/types/wlr_box.h>
- #include <wlr/util/edges.h>
-+#include <wayland-server.h>
-+
-+ static constexpr uint32_t WLR_KEY_PRESSED = WL_KEYBOARD_KEY_STATE_PRESSED;
-+ static constexpr uint32_t WLR_KEY_RELEASED = WL_KEYBOARD_KEY_STATE_RELEASED;
- }
-diff --git a/src/core/opengl.cpp b/src/core/opengl.cpp
-index 09022930..aacb0800 100644
---- a/src/core/opengl.cpp
-+++ b/src/core/opengl.cpp
-@@ -227,25 +227,27 @@ void render_rectangle(wf::geometry_t geometry, wf::color_t color,
-
- void render_begin()
- {
-- /* No real reason for 10, 10, 0 but it doesn't matter */
-- render_begin(10, 10, 0);
-+ if (!wlr_egl_is_current(wf::get_core_impl().egl))
-+ {
-+ wlr_egl_make_current(wf::get_core_impl().egl);
-+ }
-+
-+ GL_CALL(glEnable(GL_BLEND));
-+ GL_CALL(glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA));
- }
-
- void render_begin(const wf::framebuffer_base_t& fb)
- {
-- render_begin(fb.viewport_width, fb.viewport_height, fb.fb);
-+ render_begin();
-+ fb.bind();
- }
-
--void render_begin(int32_t viewport_width, int32_t viewport_height, uint32_t fb)
-+void render_begin(int32_t width, int32_t height, uint32_t fb)
- {
-- if (!wlr_egl_is_current(wf::get_core_impl().egl))
-- {
-- wlr_egl_make_current(wf::get_core_impl().egl, EGL_NO_SURFACE, NULL);
-- }
-+ render_begin();
-
-- wlr_renderer_begin(wf::get_core_impl().renderer,
-- viewport_width, viewport_height);
-- GL_CALL(glBindFramebuffer(GL_FRAMEBUFFER, fb));
-+ GL_CALL(glBindFramebuffer(GL_DRAW_FRAMEBUFFER, fb));
-+ GL_CALL(glViewport(0, 0, width, height));
- }
-
- void clear(wf::color_t col, uint32_t mask)
-@@ -257,8 +259,7 @@ void clear(wf::color_t col, uint32_t mask)
- void render_end()
- {
- GL_CALL(glBindFramebuffer(GL_FRAMEBUFFER, current_output_fb));
-- wlr_renderer_scissor(wf::get_core().renderer, NULL);
-- wlr_renderer_end(wf::get_core().renderer);
-+ GL_CALL(glDisable(GL_SCISSOR_TEST));
- }
- }
-
-diff --git a/src/core/seat/cursor.cpp b/src/core/seat/cursor.cpp
-index 7ba23b06..d6006f17 100644
---- a/src/core/seat/cursor.cpp
-+++ b/src/core/seat/cursor.cpp
-@@ -160,7 +160,10 @@ void wf::cursor_t::set_cursor(std::string name)
- name = "left_ptr";
- }
-
-- wlr_xcursor_manager_set_cursor_image(xcursor, name.c_str(), cursor);
-+ idle_set_cursor.run_once([name, this] ()
-+ {
-+ wlr_xcursor_manager_set_cursor_image(xcursor, name.c_str(), cursor);
-+ });
- }
-
- void wf::cursor_t::unhide_cursor()
-@@ -175,6 +178,7 @@ void wf::cursor_t::unhide_cursor()
-
- void wf::cursor_t::hide_cursor()
- {
-+ idle_set_cursor.disconnect();
- wlr_cursor_set_surface(cursor, NULL, 0, 0);
- this->hide_ref_counter++;
- }
-diff --git a/src/core/seat/cursor.hpp b/src/core/seat/cursor.hpp
-index 0c4ab8fe..aec8f1aa 100644
---- a/src/core/seat/cursor.hpp
-+++ b/src/core/seat/cursor.hpp
-@@ -3,6 +3,7 @@
-
- #include "seat.hpp"
- #include "wayfire/plugin.hpp"
-+#include "wayfire/util.hpp"
-
- namespace wf
- {
-@@ -28,6 +29,13 @@ struct cursor_t
- void hide_cursor();
- int hide_ref_counter = 0;
-
-+ /**
-+ * Delay setting the cursor, in order to avoid setting the cursor
-+ * multiple times in a single frame and to avoid setting it in the middle
-+ * of the repaint loop (not allowed by wlroots).
-+ */
-+ wf::wl_idle_call idle_set_cursor;
-+
- /**
- * Start/stop touchscreen mode, which means the cursor will be hidden.
- * It will be shown again once a pointer or tablet event happens.
-diff --git a/src/main.cpp b/src/main.cpp
-index bd07d618..0c5e97e7 100644
---- a/src/main.cpp
-+++ b/src/main.cpp
-@@ -260,7 +260,7 @@ int main(int argc, char *argv[])
- /** TODO: move this to core_impl constructor */
- core.display = display;
- core.ev_loop = wl_display_get_event_loop(core.display);
-- core.backend = wlr_backend_autocreate(core.display, NULL);
-+ core.backend = wlr_backend_autocreate(core.display);
- core.renderer = wlr_backend_get_renderer(core.backend);
- core.egl = wlr_gles2_renderer_get_egl(core.renderer);
- assert(core.egl);
-diff --git a/src/output/render-manager.cpp b/src/output/render-manager.cpp
-index 2039333c..cb2a38bf 100644
---- a/src/output/render-manager.cpp
-+++ b/src/output/render-manager.cpp
-@@ -1019,8 +1019,12 @@ class wf::render_manager::impl
- swap_damage |= output_damage->get_wlr_damage_box();
- }
-
-- OpenGL::render_begin(postprocessing->get_target_framebuffer());
-- wlr_output_render_software_cursors(output->handle, swap_damage.to_pixman());
-+ OpenGL::render_begin();
-+ wlr_renderer_begin(wf::get_core().renderer,
-+ output->handle->width, output->handle->height);
-+ wlr_output_render_software_cursors(output->handle,
-+ swap_damage.to_pixman());
-+ wlr_renderer_end(wf::get_core().renderer);
- OpenGL::render_end();
-
- /* Part 4: postprocessing effects */
diff --git a/srcpkgs/wayfire/template b/srcpkgs/wayfire/template
index a7e80c4239e3..c0fbbfd07089 100644
--- a/srcpkgs/wayfire/template
+++ b/srcpkgs/wayfire/template
@@ -1,10 +1,11 @@
# Template file for 'wayfire'
pkgname=wayfire
-version=0.7.0
-revision=3
+version=0.7.1
+revision=1
_utils_commit=f45641beef46babdc8f1b8d18a924e72beaf8ee6
_touch_commit=b1075c54a280f913edc26b9757262f4f9d6b62b0
build_style=meson
+configure_args="-Dprint_trace=false"
hostmakedepends="pkg-config wayland-devel"
makedepends="wf-config-devel wlroots-devel cairo-devel
$(vopt_if image 'libjpeg-turbo-devel libpng-devel')"
@@ -16,10 +17,9 @@ homepage="https://wayfire.org"
distfiles="https://github.com/WayfireWM/wayfire/archive/v${version}.tar.gz
https://github.com/WayfireWM/wf-utils/archive/${_utils_commit}.tar.gz
https://github.com/WayfireWM/wf-touch/archive/${_touch_commit}.tar.gz"
-checksum="b1a94ad2843db19e78cbd361ceebaade4507647ad893d5b5117a9fc7724ce41c
+checksum="96cb7820cddbae962ca456fd1989cdaa00cd880b109bf8e9d667b9264a20c257
d172f8c21e0bac01e4116cd957fb0159c5cb39ddfdce897beb0d9c753796d5f1
2b22e03d3a522baeff5798f630ffe5aa95899fd3233b291527503af5fd3e30be"
-patch_args=-Np1
# Optimization for nested STL calls
CXXFLAGS="-O3"
From f799a9203ae78dc9b4b501ac1a8e6d696677f4ab Mon Sep 17 00:00:00 2001
From: travankor <travankor@tuta.io>
Date: Wed, 21 Apr 2021 06:39:55 -0700
Subject: [PATCH 2/3] wf-config: update to 0.7.1.
---
srcpkgs/wf-config/template | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/srcpkgs/wf-config/template b/srcpkgs/wf-config/template
index 5cbf2c847e04..49271c8d7729 100644
--- a/srcpkgs/wf-config/template
+++ b/srcpkgs/wf-config/template
@@ -1,6 +1,6 @@
# Template file for 'wf-config'
pkgname=wf-config
-version=0.7.0
+version=0.7.1
revision=1
build_style=meson
hostmakedepends="pkg-config"
@@ -10,7 +10,7 @@ maintainer="Young Jin Park <youngjinpark20@gmail.com>"
license="MIT"
homepage="https://wayfire.org"
distfiles="https://github.com/WayfireWM/wf-config/archive/v${version}.tar.gz"
-checksum=a8712d6a10d74b2bdba3dac9e01448945a0470ce8b1cd6d5caa2a8194f889b04
+checksum=9c212f85bfb26d135610f45865b4401e0c33a0ab3577ac65042eb23ebfe91bdb
post_install() {
vlicense LICENSE
From a531f31d962d24de3983e1dd9b4b8c1012fede5d Mon Sep 17 00:00:00 2001
From: travankor <travankor@tuta.io>
Date: Wed, 21 Apr 2021 06:40:07 -0700
Subject: [PATCH 3/3] wayfire-plugins-extra: update to 0.7.0.
---
.../patches/forcefullscreen-crash.patch | 50 +++++++++++++++++++
srcpkgs/wayfire-plugins-extra/template | 3 +-
2 files changed, 52 insertions(+), 1 deletion(-)
create mode 100644 srcpkgs/wayfire-plugins-extra/patches/forcefullscreen-crash.patch
diff --git a/srcpkgs/wayfire-plugins-extra/patches/forcefullscreen-crash.patch b/srcpkgs/wayfire-plugins-extra/patches/forcefullscreen-crash.patch
new file mode 100644
index 000000000000..5b6bcc4c4c2f
--- /dev/null
+++ b/srcpkgs/wayfire-plugins-extra/patches/forcefullscreen-crash.patch
@@ -0,0 +1,50 @@
+From c321dda631026485d767f7125e80e5f5d7ad5b35 Mon Sep 17 00:00:00 2001
+From: Scott Moreau <oreaus@gmail.com>
+Date: Tue, 16 Feb 2021 04:49:52 -0700
+Subject: [PATCH] force-fullscreen: Fix crash when closing fullscreened
+ surfaces (#79)
+
+Introduced by a change in core, rework things to make it not crash
+when closing a view.
+---
+ src/force-fullscreen.cpp | 16 +++++++++++++---
+ 1 file changed, 13 insertions(+), 3 deletions(-)
+
+diff --git a/src/force-fullscreen.cpp b/src/force-fullscreen.cpp
+index 364f239..894c403 100644
+--- a/src/force-fullscreen.cpp
++++ b/src/force-fullscreen.cpp
+@@ -41,11 +41,23 @@ class fullscreen_subsurface : public wf::surface_interface_t,
+
+ fullscreen_subsurface(wayfire_view view) :
+ wf::surface_interface_t(), wf::compositor_surface_t()
+- {}
++ {
++ view->connect_signal("subsurface-removed", &on_subsurface_removed);
++ }
+
+ ~fullscreen_subsurface()
+ {}
+
++ wf::signal_connection_t on_subsurface_removed = [&] (auto data)
++ {
++ auto ev = static_cast<wf::subsurface_removed_signal*>(data);
++ if ((ev->subsurface.get() == this) && _mapped)
++ {
++ _mapped = false;
++ wf::emit_map_state_change(this);
++ }
++ };
++
+ void on_pointer_enter(int x, int y) override
+ {
+ wf::get_core().set_cursor("default");
+@@ -295,8 +307,6 @@ class wayfire_force_fullscreen : public wf::plugin_interface_t
+
+ if (background->black_border)
+ {
+- wf::emit_map_state_change(background->black_border);
+- background->black_border->_mapped = false;
+ view->remove_subsurface(background->black_border);
+ background->black_border = nullptr;
+ }
diff --git a/srcpkgs/wayfire-plugins-extra/template b/srcpkgs/wayfire-plugins-extra/template
index 320429eb61d1..e53f0536c99c 100644
--- a/srcpkgs/wayfire-plugins-extra/template
+++ b/srcpkgs/wayfire-plugins-extra/template
@@ -1,7 +1,7 @@
# Template file for 'wayfire-plugins-extra'
pkgname=wayfire-plugins-extra
version=0.7.0
-revision=2
+revision=3
build_style=meson
hostmakedepends="pkg-config wayland-devel"
makedepends="wayfire-devel glibmm-devel"
@@ -12,6 +12,7 @@ license="MIT"
homepage="https://wayfire.org/"
distfiles="https://github.com/WayfireWM/wayfire-plugins-extra/archive/v${version}.tar.gz"
checksum=e6377e7f2cd6b0a19fe0a256c819f801ee1d963524ed4e4930b702474bc04287
+patch_args="-Np1"
post_install() {
vlicense LICENSE
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PR PATCH] [Updated] wayfire: update to 0.7.1.
2021-04-21 13:42 [PR PATCH] <!-- Mark items with [x] where applicable --> travankor
@ 2021-04-21 13:53 ` travankor
2021-04-22 22:28 ` [PR REVIEW] " ericonr
2021-04-22 22:28 ` [PR PATCH] [Merged]: " ericonr
2 siblings, 0 replies; 4+ messages in thread
From: travankor @ 2021-04-21 13:53 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 1522 bytes --]
There is an updated pull request by travankor against master on the void-packages repository
https://github.com/travankor/void-packages wayfire
https://github.com/void-linux/void-packages/pull/30407
wayfire: update to 0.7.1.
#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)
#### Have the results of the proposed changes been tested?
- [X] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR
<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!--
#### Does it build and run successfully?
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
- [ ] aarch64-musl
- [ ] armv7l
- [ ] armv6l-musl
-->
A patch file from https://github.com/void-linux/void-packages/pull/30407.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-wayfire-30407.patch --]
[-- Type: text/x-diff, Size: 13375 bytes --]
From 4e66761d8ae40c0c13b16e3ba0b0622301128546 Mon Sep 17 00:00:00 2001
From: travankor <travankor@tuta.io>
Date: Wed, 21 Apr 2021 06:39:55 -0700
Subject: [PATCH 1/3] wf-config: update to 0.7.1.
---
srcpkgs/wf-config/template | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/srcpkgs/wf-config/template b/srcpkgs/wf-config/template
index 5cbf2c847e04..49271c8d7729 100644
--- a/srcpkgs/wf-config/template
+++ b/srcpkgs/wf-config/template
@@ -1,6 +1,6 @@
# Template file for 'wf-config'
pkgname=wf-config
-version=0.7.0
+version=0.7.1
revision=1
build_style=meson
hostmakedepends="pkg-config"
@@ -10,7 +10,7 @@ maintainer="Young Jin Park <youngjinpark20@gmail.com>"
license="MIT"
homepage="https://wayfire.org"
distfiles="https://github.com/WayfireWM/wf-config/archive/v${version}.tar.gz"
-checksum=a8712d6a10d74b2bdba3dac9e01448945a0470ce8b1cd6d5caa2a8194f889b04
+checksum=9c212f85bfb26d135610f45865b4401e0c33a0ab3577ac65042eb23ebfe91bdb
post_install() {
vlicense LICENSE
From 8cbfb799ccc02e49a7b5c702ebb9f674a8973b8e Mon Sep 17 00:00:00 2001
From: travankor <travankor@tuta.io>
Date: Wed, 21 Apr 2021 06:40:07 -0700
Subject: [PATCH 2/3] wayfire-plugins-extra: update to 0.7.0.
---
.../patches/forcefullscreen-crash.patch | 50 +++++++++++++++++++
srcpkgs/wayfire-plugins-extra/template | 3 +-
2 files changed, 52 insertions(+), 1 deletion(-)
create mode 100644 srcpkgs/wayfire-plugins-extra/patches/forcefullscreen-crash.patch
diff --git a/srcpkgs/wayfire-plugins-extra/patches/forcefullscreen-crash.patch b/srcpkgs/wayfire-plugins-extra/patches/forcefullscreen-crash.patch
new file mode 100644
index 000000000000..5b6bcc4c4c2f
--- /dev/null
+++ b/srcpkgs/wayfire-plugins-extra/patches/forcefullscreen-crash.patch
@@ -0,0 +1,50 @@
+From c321dda631026485d767f7125e80e5f5d7ad5b35 Mon Sep 17 00:00:00 2001
+From: Scott Moreau <oreaus@gmail.com>
+Date: Tue, 16 Feb 2021 04:49:52 -0700
+Subject: [PATCH] force-fullscreen: Fix crash when closing fullscreened
+ surfaces (#79)
+
+Introduced by a change in core, rework things to make it not crash
+when closing a view.
+---
+ src/force-fullscreen.cpp | 16 +++++++++++++---
+ 1 file changed, 13 insertions(+), 3 deletions(-)
+
+diff --git a/src/force-fullscreen.cpp b/src/force-fullscreen.cpp
+index 364f239..894c403 100644
+--- a/src/force-fullscreen.cpp
++++ b/src/force-fullscreen.cpp
+@@ -41,11 +41,23 @@ class fullscreen_subsurface : public wf::surface_interface_t,
+
+ fullscreen_subsurface(wayfire_view view) :
+ wf::surface_interface_t(), wf::compositor_surface_t()
+- {}
++ {
++ view->connect_signal("subsurface-removed", &on_subsurface_removed);
++ }
+
+ ~fullscreen_subsurface()
+ {}
+
++ wf::signal_connection_t on_subsurface_removed = [&] (auto data)
++ {
++ auto ev = static_cast<wf::subsurface_removed_signal*>(data);
++ if ((ev->subsurface.get() == this) && _mapped)
++ {
++ _mapped = false;
++ wf::emit_map_state_change(this);
++ }
++ };
++
+ void on_pointer_enter(int x, int y) override
+ {
+ wf::get_core().set_cursor("default");
+@@ -295,8 +307,6 @@ class wayfire_force_fullscreen : public wf::plugin_interface_t
+
+ if (background->black_border)
+ {
+- wf::emit_map_state_change(background->black_border);
+- background->black_border->_mapped = false;
+ view->remove_subsurface(background->black_border);
+ background->black_border = nullptr;
+ }
diff --git a/srcpkgs/wayfire-plugins-extra/template b/srcpkgs/wayfire-plugins-extra/template
index 320429eb61d1..e53f0536c99c 100644
--- a/srcpkgs/wayfire-plugins-extra/template
+++ b/srcpkgs/wayfire-plugins-extra/template
@@ -1,7 +1,7 @@
# Template file for 'wayfire-plugins-extra'
pkgname=wayfire-plugins-extra
version=0.7.0
-revision=2
+revision=3
build_style=meson
hostmakedepends="pkg-config wayland-devel"
makedepends="wayfire-devel glibmm-devel"
@@ -12,6 +12,7 @@ license="MIT"
homepage="https://wayfire.org/"
distfiles="https://github.com/WayfireWM/wayfire-plugins-extra/archive/v${version}.tar.gz"
checksum=e6377e7f2cd6b0a19fe0a256c819f801ee1d963524ed4e4930b702474bc04287
+patch_args="-Np1"
post_install() {
vlicense LICENSE
From 378a1b84b4bd099ff654bdc697bf8eff1023cfeb Mon Sep 17 00:00:00 2001
From: travankor <travankor@tuta.io>
Date: Wed, 21 Apr 2021 06:52:46 -0700
Subject: [PATCH 3/3] wayfire: update to 0.7.1.
---
srcpkgs/wayfire/patches/wlroots13.patch | 189 ------------------------
srcpkgs/wayfire/template | 8 +-
2 files changed, 4 insertions(+), 193 deletions(-)
delete mode 100644 srcpkgs/wayfire/patches/wlroots13.patch
diff --git a/srcpkgs/wayfire/patches/wlroots13.patch b/srcpkgs/wayfire/patches/wlroots13.patch
deleted file mode 100644
index d42dbc425a3a..000000000000
--- a/srcpkgs/wayfire/patches/wlroots13.patch
+++ /dev/null
@@ -1,189 +0,0 @@
-diff --git a/meson.build b/meson.build
-index 4a8992cb..117f928c 100644
---- a/meson.build
-+++ b/meson.build
-@@ -28,7 +28,7 @@ libinput = dependency('libinput', version: '>=1.7.0')
- pixman = dependency('pixman-1')
- threads = dependency('threads')
- xkbcommon = dependency('xkbcommon')
--wlroots = dependency('wlroots', version: ['>=0.12.0', '<0.13.0'], required: get_option('use_system_wlroots'))
-+wlroots = dependency('wlroots', version: ['>=0.13.0', '<0.14.0'], required: get_option('use_system_wlroots'))
- wfconfig = dependency('wf-config', version: ['>=0.7.0', '<0.8.0'], required: get_option('use_system_wfconfig'))
-
- use_system_wlroots = not get_option('use_system_wlroots').disabled() and wlroots.found()
-diff --git a/plugins/single_plugins/vswipe.cpp b/plugins/single_plugins/vswipe.cpp
-index da37448c..26c8f399 100644
---- a/plugins/single_plugins/vswipe.cpp
-+++ b/plugins/single_plugins/vswipe.cpp
-@@ -1,3 +1,4 @@
-+#include <wayfire/nonstd/wlroots-full.hpp>
- #include <wayfire/plugin.hpp>
- #include <wayfire/output.hpp>
- #include <wayfire/core.hpp>
-diff --git a/src/api/wayfire/nonstd/wlroots-full.hpp b/src/api/wayfire/nonstd/wlroots-full.hpp
-index 77a12c70..4a24f1a1 100644
---- a/src/api/wayfire/nonstd/wlroots-full.hpp
-+++ b/src/api/wayfire/nonstd/wlroots-full.hpp
-@@ -112,6 +112,8 @@ extern "C"
- #include <wlr/types/wlr_pointer_gestures_v1.h>
- #include <wlr/types/wlr_idle.h>
- #include <wlr/interfaces/wlr_keyboard.h>
-+#include <wlr/types/wlr_touch.h>
-+#include <wlr/types/wlr_pointer_gestures_v1.h>
- #include <wlr/xcursor.h>
- #include <wlr/types/wlr_data_control_v1.h>
- #include <wlr/types/wlr_virtual_keyboard_v1.h>
-diff --git a/src/api/wayfire/nonstd/wlroots.hpp b/src/api/wayfire/nonstd/wlroots.hpp
-index 4686d14f..402ab3cd 100644
---- a/src/api/wayfire/nonstd/wlroots.hpp
-+++ b/src/api/wayfire/nonstd/wlroots.hpp
-@@ -43,7 +43,14 @@ extern "C"
- struct wlr_viewporter;
-
- #include <wlr/types/wlr_input_device.h>
-+#include <wlr/types/wlr_pointer.h>
-+#include <wlr/types/wlr_keyboard.h>
-+#include <wlr/types/wlr_touch.h>
- #include <wlr/types/wlr_output.h>
- #include <wlr/types/wlr_box.h>
- #include <wlr/util/edges.h>
-+#include <wayland-server.h>
-+
-+ static constexpr uint32_t WLR_KEY_PRESSED = WL_KEYBOARD_KEY_STATE_PRESSED;
-+ static constexpr uint32_t WLR_KEY_RELEASED = WL_KEYBOARD_KEY_STATE_RELEASED;
- }
-diff --git a/src/core/opengl.cpp b/src/core/opengl.cpp
-index 09022930..aacb0800 100644
---- a/src/core/opengl.cpp
-+++ b/src/core/opengl.cpp
-@@ -227,25 +227,27 @@ void render_rectangle(wf::geometry_t geometry, wf::color_t color,
-
- void render_begin()
- {
-- /* No real reason for 10, 10, 0 but it doesn't matter */
-- render_begin(10, 10, 0);
-+ if (!wlr_egl_is_current(wf::get_core_impl().egl))
-+ {
-+ wlr_egl_make_current(wf::get_core_impl().egl);
-+ }
-+
-+ GL_CALL(glEnable(GL_BLEND));
-+ GL_CALL(glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA));
- }
-
- void render_begin(const wf::framebuffer_base_t& fb)
- {
-- render_begin(fb.viewport_width, fb.viewport_height, fb.fb);
-+ render_begin();
-+ fb.bind();
- }
-
--void render_begin(int32_t viewport_width, int32_t viewport_height, uint32_t fb)
-+void render_begin(int32_t width, int32_t height, uint32_t fb)
- {
-- if (!wlr_egl_is_current(wf::get_core_impl().egl))
-- {
-- wlr_egl_make_current(wf::get_core_impl().egl, EGL_NO_SURFACE, NULL);
-- }
-+ render_begin();
-
-- wlr_renderer_begin(wf::get_core_impl().renderer,
-- viewport_width, viewport_height);
-- GL_CALL(glBindFramebuffer(GL_FRAMEBUFFER, fb));
-+ GL_CALL(glBindFramebuffer(GL_DRAW_FRAMEBUFFER, fb));
-+ GL_CALL(glViewport(0, 0, width, height));
- }
-
- void clear(wf::color_t col, uint32_t mask)
-@@ -257,8 +259,7 @@ void clear(wf::color_t col, uint32_t mask)
- void render_end()
- {
- GL_CALL(glBindFramebuffer(GL_FRAMEBUFFER, current_output_fb));
-- wlr_renderer_scissor(wf::get_core().renderer, NULL);
-- wlr_renderer_end(wf::get_core().renderer);
-+ GL_CALL(glDisable(GL_SCISSOR_TEST));
- }
- }
-
-diff --git a/src/core/seat/cursor.cpp b/src/core/seat/cursor.cpp
-index 7ba23b06..d6006f17 100644
---- a/src/core/seat/cursor.cpp
-+++ b/src/core/seat/cursor.cpp
-@@ -160,7 +160,10 @@ void wf::cursor_t::set_cursor(std::string name)
- name = "left_ptr";
- }
-
-- wlr_xcursor_manager_set_cursor_image(xcursor, name.c_str(), cursor);
-+ idle_set_cursor.run_once([name, this] ()
-+ {
-+ wlr_xcursor_manager_set_cursor_image(xcursor, name.c_str(), cursor);
-+ });
- }
-
- void wf::cursor_t::unhide_cursor()
-@@ -175,6 +178,7 @@ void wf::cursor_t::unhide_cursor()
-
- void wf::cursor_t::hide_cursor()
- {
-+ idle_set_cursor.disconnect();
- wlr_cursor_set_surface(cursor, NULL, 0, 0);
- this->hide_ref_counter++;
- }
-diff --git a/src/core/seat/cursor.hpp b/src/core/seat/cursor.hpp
-index 0c4ab8fe..aec8f1aa 100644
---- a/src/core/seat/cursor.hpp
-+++ b/src/core/seat/cursor.hpp
-@@ -3,6 +3,7 @@
-
- #include "seat.hpp"
- #include "wayfire/plugin.hpp"
-+#include "wayfire/util.hpp"
-
- namespace wf
- {
-@@ -28,6 +29,13 @@ struct cursor_t
- void hide_cursor();
- int hide_ref_counter = 0;
-
-+ /**
-+ * Delay setting the cursor, in order to avoid setting the cursor
-+ * multiple times in a single frame and to avoid setting it in the middle
-+ * of the repaint loop (not allowed by wlroots).
-+ */
-+ wf::wl_idle_call idle_set_cursor;
-+
- /**
- * Start/stop touchscreen mode, which means the cursor will be hidden.
- * It will be shown again once a pointer or tablet event happens.
-diff --git a/src/main.cpp b/src/main.cpp
-index bd07d618..0c5e97e7 100644
---- a/src/main.cpp
-+++ b/src/main.cpp
-@@ -260,7 +260,7 @@ int main(int argc, char *argv[])
- /** TODO: move this to core_impl constructor */
- core.display = display;
- core.ev_loop = wl_display_get_event_loop(core.display);
-- core.backend = wlr_backend_autocreate(core.display, NULL);
-+ core.backend = wlr_backend_autocreate(core.display);
- core.renderer = wlr_backend_get_renderer(core.backend);
- core.egl = wlr_gles2_renderer_get_egl(core.renderer);
- assert(core.egl);
-diff --git a/src/output/render-manager.cpp b/src/output/render-manager.cpp
-index 2039333c..cb2a38bf 100644
---- a/src/output/render-manager.cpp
-+++ b/src/output/render-manager.cpp
-@@ -1019,8 +1019,12 @@ class wf::render_manager::impl
- swap_damage |= output_damage->get_wlr_damage_box();
- }
-
-- OpenGL::render_begin(postprocessing->get_target_framebuffer());
-- wlr_output_render_software_cursors(output->handle, swap_damage.to_pixman());
-+ OpenGL::render_begin();
-+ wlr_renderer_begin(wf::get_core().renderer,
-+ output->handle->width, output->handle->height);
-+ wlr_output_render_software_cursors(output->handle,
-+ swap_damage.to_pixman());
-+ wlr_renderer_end(wf::get_core().renderer);
- OpenGL::render_end();
-
- /* Part 4: postprocessing effects */
diff --git a/srcpkgs/wayfire/template b/srcpkgs/wayfire/template
index a7e80c4239e3..c0fbbfd07089 100644
--- a/srcpkgs/wayfire/template
+++ b/srcpkgs/wayfire/template
@@ -1,10 +1,11 @@
# Template file for 'wayfire'
pkgname=wayfire
-version=0.7.0
-revision=3
+version=0.7.1
+revision=1
_utils_commit=f45641beef46babdc8f1b8d18a924e72beaf8ee6
_touch_commit=b1075c54a280f913edc26b9757262f4f9d6b62b0
build_style=meson
+configure_args="-Dprint_trace=false"
hostmakedepends="pkg-config wayland-devel"
makedepends="wf-config-devel wlroots-devel cairo-devel
$(vopt_if image 'libjpeg-turbo-devel libpng-devel')"
@@ -16,10 +17,9 @@ homepage="https://wayfire.org"
distfiles="https://github.com/WayfireWM/wayfire/archive/v${version}.tar.gz
https://github.com/WayfireWM/wf-utils/archive/${_utils_commit}.tar.gz
https://github.com/WayfireWM/wf-touch/archive/${_touch_commit}.tar.gz"
-checksum="b1a94ad2843db19e78cbd361ceebaade4507647ad893d5b5117a9fc7724ce41c
+checksum="96cb7820cddbae962ca456fd1989cdaa00cd880b109bf8e9d667b9264a20c257
d172f8c21e0bac01e4116cd957fb0159c5cb39ddfdce897beb0d9c753796d5f1
2b22e03d3a522baeff5798f630ffe5aa95899fd3233b291527503af5fd3e30be"
-patch_args=-Np1
# Optimization for nested STL calls
CXXFLAGS="-O3"
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PR REVIEW] wayfire: update to 0.7.1.
2021-04-21 13:42 [PR PATCH] <!-- Mark items with [x] where applicable --> travankor
2021-04-21 13:53 ` [PR PATCH] [Updated] wayfire: update to 0.7.1 travankor
@ 2021-04-22 22:28 ` ericonr
2021-04-22 22:28 ` [PR PATCH] [Merged]: " ericonr
2 siblings, 0 replies; 4+ messages in thread
From: ericonr @ 2021-04-22 22:28 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 270 bytes --]
New review comment by ericonr on void-packages repository
https://github.com/void-linux/void-packages/pull/30407#discussion_r618780540
Comment:
I think the patch to add this could be expanded to completely remove the `execinfo` dependency... Not for now, just a note.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PR PATCH] [Merged]: wayfire: update to 0.7.1.
2021-04-21 13:42 [PR PATCH] <!-- Mark items with [x] where applicable --> travankor
2021-04-21 13:53 ` [PR PATCH] [Updated] wayfire: update to 0.7.1 travankor
2021-04-22 22:28 ` [PR REVIEW] " ericonr
@ 2021-04-22 22:28 ` ericonr
2 siblings, 0 replies; 4+ messages in thread
From: ericonr @ 2021-04-22 22:28 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 1362 bytes --]
There's a merged pull request on the void-packages repository
wayfire: update to 0.7.1.
https://github.com/void-linux/void-packages/pull/30407
Description:
#### General
- [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements)
#### Have the results of the proposed changes been tested?
- [X] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me
- [ ] I generally don't use the affected packages but briefly tested this PR
<!--
If GitHub CI cannot be used to validate the build result (for example, if the
build is likely to take several hours), make sure to
[skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration).
When skipping CI, uncomment and fill out the following section.
Note: for builds that are likely to complete in less than 2 hours, it is not
acceptable to skip CI.
-->
<!--
#### Does it build and run successfully?
(Please choose at least one native build and, if supported, at least one cross build. More are better.)
- [ ] I built this PR locally for my native architecture, (ARCH-LIBC)
- [ ] I built this PR locally for these architectures (if supported. mark crossbuilds):
- [ ] aarch64-musl
- [ ] armv7l
- [ ] armv6l-musl
-->
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-04-22 22:28 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-21 13:42 [PR PATCH] <!-- Mark items with [x] where applicable --> travankor
2021-04-21 13:53 ` [PR PATCH] [Updated] wayfire: update to 0.7.1 travankor
2021-04-22 22:28 ` [PR REVIEW] " ericonr
2021-04-22 22:28 ` [PR PATCH] [Merged]: " ericonr
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).