aboutsummaryrefslogtreecommitdiff
path: root/deskutils/normcap/files/patch-normcap_screengrab_permissions.py
diff options
context:
space:
mode:
Diffstat (limited to 'deskutils/normcap/files/patch-normcap_screengrab_permissions.py')
-rw-r--r--deskutils/normcap/files/patch-normcap_screengrab_permissions.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/deskutils/normcap/files/patch-normcap_screengrab_permissions.py b/deskutils/normcap/files/patch-normcap_screengrab_permissions.py
new file mode 100644
index 000000000000..1d15b7eec29c
--- /dev/null
+++ b/deskutils/normcap/files/patch-normcap_screengrab_permissions.py
@@ -0,0 +1,31 @@
+--- normcap/screengrab/permissions.py.orig 2024-05-19 21:44:57 UTC
++++ normcap/screengrab/permissions.py
+@@ -222,9 +222,9 @@ def has_screenshot_permission() -> bool:
+ logger.debug("Checking screenshot permission")
+ if sys.platform == "darwin":
+ return _macos_has_screenshot_permission()
+- if sys.platform == "linux" and not system_info.has_wayland_display_manager():
++ if (sys.platform == "linux" or sys.platform.startswith("freebsd")) and not system_info.has_wayland_display_manager():
+ return True
+- if sys.platform == "linux" and system_info.has_wayland_display_manager():
++ if (sys.platform == "linux" or sys.platform.startswith("freebsd")) and system_info.has_wayland_display_manager():
+ return _dbus_portal_has_screenshot_permission()
+ if sys.platform == "win32":
+ return True
+@@ -242,14 +242,14 @@ def request_screenshot_permission(
+ )
+ return
+
+- if sys.platform == "linux" and not system_info.has_wayland_display_manager():
++ if (sys.platform == "linux" or sys.platform.startswith("freebsd")) and not system_info.has_wayland_display_manager():
+ logger.debug(
+ "Not necessary to request screenshot permission on Linux, if the "
+ "display manager is not Wayland. Skipping."
+ )
+ return
+
+- if sys.platform == "linux" and system_info.has_wayland_display_manager():
++ if (sys.platform == "linux" or sys.platform.startswith("freebsd")) and system_info.has_wayland_display_manager():
+ logger.debug("Show request permission dialog.")
+ dbus_portal_show_request_permission_dialog(
+ title=dialog_title, text=linux_dialog_text