Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package xdg-desktop-portal-wlr for
openSUSE:Factory checked in at 2025-12-05 16:55:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xdg-desktop-portal-wlr (Old)
and /work/SRC/openSUSE:Factory/.xdg-desktop-portal-wlr.new.1939 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xdg-desktop-portal-wlr"
Fri Dec 5 16:55:36 2025 rev:11 rq:1321118 version:0.8.1
Changes:
--------
---
/work/SRC/openSUSE:Factory/xdg-desktop-portal-wlr/xdg-desktop-portal-wlr.changes
2025-10-22 12:20:47.666870485 +0200
+++
/work/SRC/openSUSE:Factory/.xdg-desktop-portal-wlr.new.1939/xdg-desktop-portal-wlr.changes
2025-12-05 16:56:02.946911124 +0100
@@ -1,0 +2,7 @@
+Thu Dec 4 10:26:32 UTC 2025 - Arnav Singh <[email protected]>
+
+- Update to 0.8.1:
+ * Support simple choosers returning a toplevel name.
+ * Various improvements.
+
+-------------------------------------------------------------------
Old:
----
xdg-desktop-portal-wlr-0.8.0.tar.gz
xdg-desktop-portal-wlr-0.8.0.tar.gz.sig
New:
----
xdg-desktop-portal-wlr-0.8.1.tar.gz
xdg-desktop-portal-wlr-0.8.1.tar.gz.sig
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xdg-desktop-portal-wlr.spec ++++++
--- /var/tmp/diff_new_pack.v9OLxs/_old 2025-12-05 16:56:05.018997755 +0100
+++ /var/tmp/diff_new_pack.v9OLxs/_new 2025-12-05 16:56:05.038998592 +0100
@@ -17,7 +17,7 @@
Name: xdg-desktop-portal-wlr
-Version: 0.8.0
+Version: 0.8.1
Release: 0
Summary: An xdg-desktop-portal backend for wlroots
License: MIT
++++++ xdg-desktop-portal-wlr-0.8.0.tar.gz ->
xdg-desktop-portal-wlr-0.8.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/xdg-desktop-portal-wlr-0.8.0/contrib/config.sample
new/xdg-desktop-portal-wlr-0.8.1/contrib/config.sample
--- old/xdg-desktop-portal-wlr-0.8.0/contrib/config.sample 2025-10-21
14:24:44.000000000 +0200
+++ new/xdg-desktop-portal-wlr-0.8.1/contrib/config.sample 2025-12-04
11:07:33.000000000 +0100
@@ -1,5 +1,5 @@
[screencast]
output_name=
max_fps=30
-chooser_cmd=slurp -f %o -or
+chooser_cmd=slurp -f 'Monitor: %o' -or
chooser_type=simple
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/xdg-desktop-portal-wlr-0.8.0/include/screencast_common.h
new/xdg-desktop-portal-wlr-0.8.1/include/screencast_common.h
--- old/xdg-desktop-portal-wlr-0.8.0/include/screencast_common.h
2025-10-21 14:24:44.000000000 +0200
+++ new/xdg-desktop-portal-wlr-0.8.1/include/screencast_common.h
2025-12-04 11:07:33.000000000 +0100
@@ -226,9 +226,8 @@
uint32_t id;
struct wl_output *output;
struct zxdg_output_v1 *xdg_output;
- char *make;
- char *model;
char *name;
+ char *description;
int x;
int y;
int width;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/xdg-desktop-portal-wlr-0.8.0/meson.build
new/xdg-desktop-portal-wlr-0.8.1/meson.build
--- old/xdg-desktop-portal-wlr-0.8.0/meson.build 2025-10-21
14:24:44.000000000 +0200
+++ new/xdg-desktop-portal-wlr-0.8.1/meson.build 2025-12-04
11:07:33.000000000 +0100
@@ -1,7 +1,7 @@
project(
'xdg-desktop-portal-wlr',
'c',
- version: '0.8.0',
+ version: '0.8.1',
license: 'MIT',
meson_version: '>=0.60.0',
default_options: ['c_std=c11', 'warning_level=2', 'werror=true'],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/xdg-desktop-portal-wlr-0.8.0/src/screencast/chooser.c
new/xdg-desktop-portal-wlr-0.8.1/src/screencast/chooser.c
--- old/xdg-desktop-portal-wlr-0.8.0/src/screencast/chooser.c 2025-10-21
14:24:44.000000000 +0200
+++ new/xdg-desktop-portal-wlr-0.8.1/src/screencast/chooser.c 2025-12-04
11:07:33.000000000 +0100
@@ -111,12 +111,20 @@
return name;
}
-static char *get_output_label(struct xdpw_wlr_output *output) {
- return format_str("Monitor: %s", output->name);
+static char *get_output_label(struct xdpw_wlr_output *output, enum
xdpw_chooser_types chooser_type) {
+ if (chooser_type == XDPW_CHOOSER_DMENU) {
+ return format_str("Monitor: %s %s", output->name,
output->description);
+ } else {
+ return format_str("Monitor: %s", output->name);
+ }
}
-static char *get_toplevel_label(struct xdpw_toplevel *toplevel) {
- return format_str("Window: %s (%s)", toplevel->title,
toplevel->identifier);
+static char *get_toplevel_label(struct xdpw_toplevel *toplevel, enum
xdpw_chooser_types chooser_type) {
+ if (chooser_type == XDPW_CHOOSER_DMENU) {
+ return format_str("Window: %s (%s)", toplevel->title,
toplevel->identifier);
+ } else {
+ return format_str("Window: %s", toplevel->identifier);
+ }
}
static bool wlr_chooser(const struct xdpw_chooser *chooser,
@@ -136,7 +144,7 @@
if (type_mask & MONITOR) {
struct xdpw_wlr_output *out;
wl_list_for_each(out, &ctx->output_list, link) {
- char *label = get_output_label(out);
+ char *label = get_output_label(out,
chooser->type);
fprintf(chooser_in, "%s\n", label);
free(label);
}
@@ -144,7 +152,7 @@
if (type_mask & WINDOW) {
struct xdpw_toplevel *toplevel;
wl_list_for_each(toplevel, &ctx->toplevels, link) {
- char *label = get_toplevel_label(toplevel);
+ char *label = get_toplevel_label(toplevel,
chooser->type);
fprintf(chooser_in, "%s\n", label);
free(label);
}
@@ -171,9 +179,13 @@
bool found = false;
struct xdpw_wlr_output *out;
wl_list_for_each(out, &ctx->output_list, link) {
- char *label = get_output_label(out);
+ char *label = get_output_label(out, chooser->type);
found = strcmp(selected_label, label) == 0;
free(label);
+ if (!found && chooser->type == XDPW_CHOOSER_SIMPLE) {
+ // Compatibility with xdg-desktop-portal-wlr < v0.8.0
+ found = strcmp(selected_label, out->name) == 0;
+ }
if (found) {
target->type = MONITOR;
target->output = out;
@@ -186,7 +198,7 @@
if (found) {
break;
}
- char *label = get_toplevel_label(toplevel);
+ char *label = get_toplevel_label(toplevel, chooser->type);
found = strcmp(selected_label, label) == 0;
free(label);
if (found) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/xdg-desktop-portal-wlr-0.8.0/src/screencast/screencast.c
new/xdg-desktop-portal-wlr-0.8.1/src/screencast/screencast.c
--- old/xdg-desktop-portal-wlr-0.8.0/src/screencast/screencast.c
2025-10-21 14:24:44.000000000 +0200
+++ new/xdg-desktop-portal-wlr-0.8.1/src/screencast/screencast.c
2025-12-04 11:07:33.000000000 +0100
@@ -139,8 +139,8 @@
if (type_mask & MONITOR) {
struct xdpw_wlr_output *output;
wl_list_for_each(output, &ctx->output_list, link) {
- logprint(INFO, "wlroots: capturable output: %s model:
%s id: %i name: %s",
- output->make, output->model, output->id,
output->name);
+ logprint(INFO, "wlroots: capturable output: %i %s",
+ output->id, output->name);
}
}
if (type_mask & WINDOW) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/xdg-desktop-portal-wlr-0.8.0/src/screencast/wlr_screencast.c
new/xdg-desktop-portal-wlr-0.8.1/src/screencast/wlr_screencast.c
--- old/xdg-desktop-portal-wlr-0.8.0/src/screencast/wlr_screencast.c
2025-10-21 14:24:44.000000000 +0200
+++ new/xdg-desktop-portal-wlr-0.8.1/src/screencast/wlr_screencast.c
2025-12-04 11:07:33.000000000 +0100
@@ -72,8 +72,6 @@
int32_t x, int32_t y, int32_t phys_width, int32_t phys_height,
int32_t subpixel, const char *make, const char *model, int32_t
transform) {
struct xdpw_wlr_output *output = data;
- output->make = strdup(make);
- output->model = strdup(model);
output->transformation = transform;
}
@@ -102,7 +100,9 @@
static void wlr_output_handle_description(void *data, struct wl_output
*wl_output,
const char *description) {
- /* Nothing to do */
+ struct xdpw_wlr_output *output = data;
+ free(output->description);
+ output->description = strdup(description);
}
static const struct wl_output_listener wlr_output_listener = {
@@ -186,8 +186,7 @@
static void wlr_remove_output(struct xdpw_wlr_output *out) {
free(out->name);
- free(out->make);
- free(out->model);
+ free(out->description);
if (out->xdg_output) {
zxdg_output_v1_destroy(out->xdg_output);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/xdg-desktop-portal-wlr-0.8.0/xdg-desktop-portal-wlr.5.scd
new/xdg-desktop-portal-wlr-0.8.1/xdg-desktop-portal-wlr.5.scd
--- old/xdg-desktop-portal-wlr-0.8.0/xdg-desktop-portal-wlr.5.scd
2025-10-21 14:24:44.000000000 +0200
+++ new/xdg-desktop-portal-wlr-0.8.1/xdg-desktop-portal-wlr.5.scd
2025-12-04 11:07:33.000000000 +0100
@@ -29,7 +29,7 @@
exec_before=disable_notifications.sh
exec_after=enable_notifications.sh
chooser_type=simple
-chooser_cmd=slurp -f %o -or
+chooser_cmd=slurp -f 'Monitor: %o' -or
```
# SCREENCAST OPTIONS
@@ -84,8 +84,12 @@
The chooser can be any program or script with the following behaviour:
- It returns any error code except 127. The error code 127 is internally used
to signal
that no command could be found and all output from it will be ignored.
-- It returns the name of a valid output on stdout as given by
**wayland-info**(1).
- Everything else will be handled as declined by the user.
+- It returns a string on stdout, which is valid if it matches on of the the
following:
+ - For simple choosers:
+ - The prefix "Monitor: " followed by the name of a valid output as given
by **wayland-info**(1).
+ - The prefix "Window: " followed by the ext-foreign-toplevel-list-v1
identifier as given by **lswt**(1).
+ - For dmenu choosers: one of the lines provided via stdin.
+ Everything else will be handled as declined by the user.
- To signal that the user has declined screencast, the chooser should exit
without
anything on stdout.