Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package xdg-desktop-portal-gnome for 
openSUSE:Factory checked in at 2023-04-23 22:43:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xdg-desktop-portal-gnome (Old)
 and      /work/SRC/openSUSE:Factory/.xdg-desktop-portal-gnome.new.1533 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xdg-desktop-portal-gnome"

Sun Apr 23 22:43:37 2023 rev:9 rq:1082109 version:44.1

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/xdg-desktop-portal-gnome/xdg-desktop-portal-gnome.changes
        2023-03-24 15:17:40.586027724 +0100
+++ 
/work/SRC/openSUSE:Factory/.xdg-desktop-portal-gnome.new.1533/xdg-desktop-portal-gnome.changes
      2023-04-23 22:44:24.405675154 +0200
@@ -1,0 +2,11 @@
+Fri Apr 21 14:56:38 UTC 2023 - Bjørn Lie <[email protected]>
+
+- Update to version 44.1:
+  + Improve handling of non-existing files on the filechooser
+    portal
+  + Minor debugging improvements to the backgrounds portal
+  + More precise initialization timing
+  + Fix duplicate monitor and window streams
+  + Updated translations.
+
+-------------------------------------------------------------------

Old:
----
  xdg-desktop-portal-gnome-44.0.tar.xz

New:
----
  xdg-desktop-portal-gnome-44.1.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ xdg-desktop-portal-gnome.spec ++++++
--- /var/tmp/diff_new_pack.BS9yKx/_old  2023-04-23 22:44:24.865677753 +0200
+++ /var/tmp/diff_new_pack.BS9yKx/_new  2023-04-23 22:44:24.869677775 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           xdg-desktop-portal-gnome
-Version:        44.0
+Version:        44.1
 Release:        0
 Summary:        A backend implementation for xdg-desktop-portal
 License:        LGPL-2.1-or-later

++++++ xdg-desktop-portal-gnome-44.0.tar.xz -> 
xdg-desktop-portal-gnome-44.1.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-gnome-44.0/NEWS 
new/xdg-desktop-portal-gnome-44.1/NEWS
--- old/xdg-desktop-portal-gnome-44.0/NEWS      2023-03-19 22:24:49.000000000 
+0100
+++ new/xdg-desktop-portal-gnome-44.1/NEWS      2023-04-21 13:57:54.000000000 
+0200
@@ -1,3 +1,12 @@
+Changes in 44.1
+=================
+
+- Improve handling of non-existing files on the filechooser portal
+- Minor debugging improvements to the backgrounds portal
+- More precise initialization timing
+- Fix duplicate monitor and window streams
+- Translation updates
+
 Changes in 44.0
 =================
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/xdg-desktop-portal-gnome-44.0/data/xdg-desktop-portal-gnome.service.in 
new/xdg-desktop-portal-gnome-44.1/data/xdg-desktop-portal-gnome.service.in
--- old/xdg-desktop-portal-gnome-44.0/data/xdg-desktop-portal-gnome.service.in  
2023-03-19 22:24:49.000000000 +0100
+++ new/xdg-desktop-portal-gnome-44.1/data/xdg-desktop-portal-gnome.service.in  
2023-04-21 13:57:54.000000000 +0200
@@ -1,5 +1,8 @@
 [Unit]
 Description=Portal service (GNOME implementation)
+After=graphical-session.target
+Requisite=graphical-session.target
+PartOf=graphical-session.target
 
 [Service]
 Type=dbus
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-gnome-44.0/meson.build 
new/xdg-desktop-portal-gnome-44.1/meson.build
--- old/xdg-desktop-portal-gnome-44.0/meson.build       2023-03-19 
22:24:49.000000000 +0100
+++ new/xdg-desktop-portal-gnome-44.1/meson.build       2023-04-21 
13:57:54.000000000 +0200
@@ -1,7 +1,7 @@
 project(
   'xdg-desktop-portal-gnome',
   'c',
-  version: '44.0',
+  version: '44.1',
   meson_version: '>= 0.57.0',
   license: 'LGPLv2.1+'
 )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-gnome-44.0/po/fur.po 
new/xdg-desktop-portal-gnome-44.1/po/fur.po
--- old/xdg-desktop-portal-gnome-44.0/po/fur.po 2023-03-19 22:24:49.000000000 
+0100
+++ new/xdg-desktop-portal-gnome-44.1/po/fur.po 2023-04-21 13:57:54.000000000 
+0200
@@ -6,9 +6,10 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal-gnome main\n"
-"Report-Msgid-Bugs-To: 
https://gitlab.gnome.org/GNOME/xdg-desktop-portal-gnome/issues\n";
-"POT-Creation-Date: 2022-07-09 18:28+0000\n"
-"PO-Revision-Date: 2022-07-24 17:50+0000\n"
+"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/xdg-desktop-portal-";
+"gnome/issues\n"
+"POT-Creation-Date: 2023-01-25 22:32+0000\n"
+"PO-Revision-Date: 2023-04-05 17:56+0200\n"
 "Last-Translator: Fabio Tomat <[email protected]>\n"
 "Language-Team: Friulian <[email protected]>\n"
 "Language: fur\n"
@@ -16,7 +17,7 @@
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "X-Editor: HaiPO 1.2 RC4\n"
-"X-Generator: Poedit 3.0.1\n"
+"X-Generator: Poedit 3.2.2\n"
 
 #: data/xdg-desktop-portal-gnome.desktop.in.in:4
 msgid "Portal"
@@ -26,7 +27,7 @@
 msgid "Select an Image"
 msgstr "Selezione une imagjin"
 
-#: src/accountdialog.c:155 src/wallpaperdialog.ui:14
+#: src/accountdialog.c:155 src/wallpaperdialog.ui:26
 msgid "Cancel"
 msgstr "Anule"
 
@@ -51,30 +52,29 @@
 #, c-format
 msgid "Share your personal information with the requesting application? %s"
 msgstr ""
-"Condividi lis tôs informazions personâls cu la aplicazion che lis domande? "
-"%s"
+"Condividi lis tôs informazions personâls cu la aplicazion che lis domande? 
%s"
 
 #: src/accountdialog.ui:4
 msgid "Share Details"
 msgstr "Condivît detais"
 
-#: src/accountdialog.ui:12 src/appchooserdialog.ui:12
-#: src/dynamic-launcher.c:265 src/filechooser.c:451
-#: src/remotedesktopdialog.ui:13 src/screencastdialog.ui:14
-#: src/screenshotdialog.ui:14
+#: src/accountdialog.ui:23 src/appchooserdialog.ui:12
+#: src/dynamic-launcher.c:266 src/filechooser.c:535
+#: src/remotedesktopdialog.ui:25 src/screencastdialog.ui:26
+#: src/screenshotdialog.ui:26
 msgid "_Cancel"
 msgstr "_Anule"
 
-#: src/accountdialog.ui:19 src/remotedesktopdialog.ui:21
-#: src/screencastdialog.ui:22 src/screenshotdialog.ui:37
+#: src/accountdialog.ui:30 src/remotedesktopdialog.ui:33
+#: src/screencastdialog.ui:34 src/screenshotdialog.ui:49
 msgid "_Share"
 msgstr "_Condivît"
 
-#: src/accountdialog.ui:72
+#: src/accountdialog.ui:83
 msgid "Name"
 msgstr "Non"
 
-#: src/accountdialog.ui:84
+#: src/accountdialog.ui:95
 msgid "Username"
 msgstr "Non utent"
 
@@ -110,7 +110,7 @@
 msgid "Open With…"
 msgstr "Vierç cun…"
 
-#: src/appchooserdialog.ui:20 src/filechooser.c:446
+#: src/appchooserdialog.ui:20 src/filechooser.c:530
 msgid "_Open"
 msgstr "_Vierç"
 
@@ -122,66 +122,39 @@
 msgid "_Find More in Software"
 msgstr "_Cjate di plui su Software"
 
-#: src/background.c:214 src/background.c:305
-#, c-format
-msgid "“%s” is running in the background"
-msgstr "“%s“ al è in esecuzion in sotfont"
-
-#: src/background.c:216
-msgid ""
-"This might be for a legitimate reason, but the application has not provided 
one.\n"
-"\n"
-"Note that forcing an application to quit might cause data loss."
-msgstr ""
-"Chest al podarès jessi par une reson legjitime, ma la aplicazion no 'nd à 
dade une.\n"
-"\n"
-"Note che sfuarçâ la jessude di une aplicazion al podarès causâ pierditis 
di dâts."
-
-#: src/background.c:219
-msgid "Force quit"
-msgstr "Sfuarce la jessude"
-
-#: src/background.c:220
-msgid "Allow"
-msgstr "Pemet"
-
-#: src/background.c:303
-msgid "Background activity"
-msgstr "Ativitât di sotfont"
-
-#: src/background.c:311
-msgid "Find out more"
-msgstr "Scuvierç di plui"
-
-#: src/dynamic-launcher.c:257
+#: src/dynamic-launcher.c:258
 msgid "Create Web Application"
 msgstr "Cree aplicazion web"
 
-#: src/dynamic-launcher.c:259
+#: src/dynamic-launcher.c:260
 msgid "Create Application"
 msgstr "Cree aplicazion"
 
-#: src/dynamic-launcher.c:267
+#: src/dynamic-launcher.c:268
 msgid "C_reate"
 msgstr "C_ree"
 
-#: src/filechooser.c:446
+#: src/filechooser.c:530
 msgid "_Select"
 msgstr "_Selezione"
 
-#: src/filechooser.c:448
+#: src/filechooser.c:532
 msgid "_Save"
 msgstr "_Salve"
 
-#: src/filechooser.c:617
+#: src/filechooser.c:714
 msgid "Open files read-only"
 msgstr "Vierç i files in dome-leture"
 
+#: src/filechooser.c:721
+msgid "Open directories read-only"
+msgstr "Vierç lis cartelis in dome-leture"
+
 #: src/remotedesktopdialog.ui:7
 msgid "Remote desktop"
 msgstr "Scritori lontan"
 
-#: src/remotedesktopdialog.ui:64
+#: src/remotedesktopdialog.ui:76
 msgid "Allow remote interaction"
 msgstr "Permet interazion di lontan"
 
@@ -193,21 +166,21 @@
 msgid "Virtual monitor"
 msgstr "Visôr virtuâl"
 
-#: src/screencastwidget.c:542
+#: src/screencastwidget.c:540
 #, c-format
 msgid "Select monitor to share with %s"
 msgstr "Selezione il visôr di condividi cun %s"
 
-#: src/screencastwidget.c:544
+#: src/screencastwidget.c:542
 #, c-format
 msgid "Select window to share with %s"
 msgstr "Selezione il barcon di condividi cun %s"
 
-#: src/screencastwidget.c:549
+#: src/screencastwidget.c:547
 msgid "Select monitor to share with the requesting application"
 msgstr "Selezione il visôr di condividi cu la aplicazion che lu domande"
 
-#: src/screencastwidget.c:550
+#: src/screencastwidget.c:548
 msgid "Select window to share with the requesting application"
 msgstr "Selezione il barcon di condividi cu la aplicazion che lu domande"
 
@@ -223,12 +196,12 @@
 msgid "Entire Screen"
 msgstr "Schermi intîr"
 
-#: src/screenshotdialog.c:420
+#: src/screenshotdialog.c:435
 #, c-format
 msgid "Share this screenshot with %s?"
 msgstr "Condivît cheste schermade cun %s?"
 
-#: src/screenshotdialog.c:424
+#: src/screenshotdialog.c:439
 msgid "Share this screenshot with the requesting application?"
 msgstr "Condividi cheste schermade cu la aplicazion che le domande?"
 
@@ -236,47 +209,47 @@
 msgid "Screenshot"
 msgstr "Schermade"
 
-#: src/screenshotdialog.ui:30
+#: src/screenshotdialog.ui:42
 msgid "_Options…"
 msgstr "_Opzions…"
 
-#: src/screenshotdialog.ui:55
+#: src/screenshotdialog.ui:67
 msgid "Take _Screenshot"
 msgstr "Cature _schermade"
 
-#: src/screenshotdialog.ui:108
+#: src/screenshotdialog.ui:120
 msgid "Take Screenshot"
 msgstr "Cature la schermade"
 
-#: src/screenshotdialog.ui:118
+#: src/screenshotdialog.ui:130
 msgid "Grab the whole sc_reen"
 msgstr "Cjape dut il sche_rmi"
 
-#: src/screenshotdialog.ui:128
+#: src/screenshotdialog.ui:140
 msgid "Grab the current _window"
 msgstr "Cjape il _barcon corint"
 
-#: src/screenshotdialog.ui:138
+#: src/screenshotdialog.ui:150
 msgid "Select _area to grab"
 msgstr "Selezione la _aree di cjapâ"
 
-#: src/screenshotdialog.ui:150
+#: src/screenshotdialog.ui:162
 msgid "Grab after a _delay of"
 msgstr "Cjape _dopo un ritart di"
 
-#: src/screenshotdialog.ui:161
+#: src/screenshotdialog.ui:173
 msgid "seconds"
 msgstr "seconts"
 
-#: src/screenshotdialog.ui:170
+#: src/screenshotdialog.ui:182
 msgid "Effects"
 msgstr "Efiets"
 
-#: src/screenshotdialog.ui:180
+#: src/screenshotdialog.ui:192
 msgid "Include _pointer"
 msgstr "Inclût il _pontadôr"
 
-#: src/screenshotdialog.ui:188
+#: src/screenshotdialog.ui:200
 msgid "Include the window _border"
 msgstr "Inclût i ôrs dal barc_on"
 
@@ -288,11 +261,11 @@
 msgid "Set Background"
 msgstr "Stabilìs fonts"
 
-#: src/wallpaperdialog.ui:20
+#: src/wallpaperdialog.ui:32
 msgid "Set"
 msgstr "Stabilìs"
 
-#: src/wallpaperdialog.ui:51
+#: src/wallpaperdialog.ui:63
 msgid "Failed to load image file"
 msgstr "Nol è stât pussibil cjariâ il file de imagjin"
 
@@ -300,6 +273,34 @@
 msgid "Activities"
 msgstr "Ativitâts"
 
+#, c-format
+#~ msgid "“%s” is running in the background"
+#~ msgstr "“%s“ al è in esecuzion in sotfont"
+
+#~ msgid ""
+#~ "This might be for a legitimate reason, but the application has not "
+#~ "provided one.\n"
+#~ "\n"
+#~ "Note that forcing an application to quit might cause data loss."
+#~ msgstr ""
+#~ "Chest al podarès jessi par une reson legjitime, ma la aplicazion no 'nd à
 "
+#~ "dade une.\n"
+#~ "\n"
+#~ "Note che sfuarçâ la jessude di une aplicazion al podarès causâ 
pierditis "
+#~ "di dâts."
+
+#~ msgid "Force quit"
+#~ msgstr "Sfuarce la jessude"
+
+#~ msgid "Allow"
+#~ msgstr "Pemet"
+
+#~ msgid "Background activity"
+#~ msgstr "Ativitât di sotfont"
+
+#~ msgid "Find out more"
+#~ msgstr "Scuvierç di plui"
+
 #~ msgid "applications-system-symbolic"
 #~ msgstr "applications-system-symbolic"
 
@@ -316,4 +317,5 @@
 #~ msgstr "Selezione i dispositîfs di condividi cun %s"
 
 #~ msgid "Select devices to share with the requesting application"
-#~ msgstr "Selezione i dispositîfs di condividi cu la aplicazion che ju 
domande"
+#~ msgstr ""
+#~ "Selezione i dispositîfs di condividi cu la aplicazion che ju domande"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-gnome-44.0/po/nl.po 
new/xdg-desktop-portal-gnome-44.1/po/nl.po
--- old/xdg-desktop-portal-gnome-44.0/po/nl.po  2023-03-19 22:24:49.000000000 
+0100
+++ new/xdg-desktop-portal-gnome-44.1/po/nl.po  2023-04-21 13:57:54.000000000 
+0200
@@ -1,23 +1,23 @@
 # Dutch translation for xdg-desktop-portal-gnome.
 # Copyright (C) 2022 xdg-desktop-portal-gnome's COPYRIGHT HOLDER
 # This file is distributed under the same license as the 
xdg-desktop-portal-gnome package.
-# Nathan Follens <[email protected]>, 2022.
+# Nathan Follens <[email protected]>, 2022-2023.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: xdg-desktop-portal-gnome gnome-42\n"
 "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/xdg-desktop-portal-";
 "gnome/issues\n"
-"POT-Creation-Date: 2022-10-07 16:57+0000\n"
-"PO-Revision-Date: 2022-11-02 00:21+0100\n"
+"POT-Creation-Date: 2023-01-25 22:32+0000\n"
+"PO-Revision-Date: 2023-03-26 17:11+0200\n"
 "Last-Translator: Nathan Follens <[email protected]>\n"
-"Language-Team: Dutch <[email protected]>\n"
+"Language-Team: Dutch <https://matrix.to/#/#nl:gnome.org>\n"
 "Language: nl\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Poedit 3.1.1\n"
+"X-Generator: Poedit 3.2.2\n"
 
 #: data/xdg-desktop-portal-gnome.desktop.in.in:4
 msgid "Portal"
@@ -27,7 +27,7 @@
 msgid "Select an Image"
 msgstr "Kies een afbeelding"
 
-#: src/accountdialog.c:155 src/wallpaperdialog.ui:14
+#: src/accountdialog.c:155 src/wallpaperdialog.ui:26
 msgid "Cancel"
 msgstr "Annuleren"
 
@@ -57,23 +57,23 @@
 msgid "Share Details"
 msgstr "Details delen"
 
-#: src/accountdialog.ui:12 src/appchooserdialog.ui:12
-#: src/dynamic-launcher.c:265 src/filechooser.c:534
-#: src/remotedesktopdialog.ui:13 src/screencastdialog.ui:14
-#: src/screenshotdialog.ui:14
+#: src/accountdialog.ui:23 src/appchooserdialog.ui:12
+#: src/dynamic-launcher.c:266 src/filechooser.c:535
+#: src/remotedesktopdialog.ui:25 src/screencastdialog.ui:26
+#: src/screenshotdialog.ui:26
 msgid "_Cancel"
 msgstr "_Annuleren"
 
-#: src/accountdialog.ui:19 src/remotedesktopdialog.ui:21
-#: src/screencastdialog.ui:22 src/screenshotdialog.ui:37
+#: src/accountdialog.ui:30 src/remotedesktopdialog.ui:33
+#: src/screencastdialog.ui:34 src/screenshotdialog.ui:49
 msgid "_Share"
 msgstr "_Delen"
 
-#: src/accountdialog.ui:72
+#: src/accountdialog.ui:83
 msgid "Name"
 msgstr "Naam"
 
-#: src/accountdialog.ui:84
+#: src/accountdialog.ui:95
 msgid "Username"
 msgstr "Gebruikersnaam"
 
@@ -109,7 +109,7 @@
 msgid "Open With…"
 msgstr "Openen met…"
 
-#: src/appchooserdialog.ui:20 src/filechooser.c:529
+#: src/appchooserdialog.ui:20 src/filechooser.c:530
 msgid "_Open"
 msgstr "_Openen"
 
@@ -121,69 +121,39 @@
 msgid "_Find More in Software"
 msgstr "_Zoeken in Software"
 
-#: src/background.c:214 src/background.c:305
-#, c-format
-msgid "“%s” is running in the background"
-msgstr "‘%s’ draait op de achtergrond"
-
-#: src/background.c:216
-msgid ""
-"This might be for a legitimate reason, but the application has not provided "
-"one.\n"
-"\n"
-"Note that forcing an application to quit might cause data loss."
-msgstr ""
-"Hier kan een geldige reden voor zijn, maar de toepassing heeft er geen "
-"opgegeven.\n"
-"\n"
-"Let op: een toepassing geforceerd afsluiten kan leiden tot verlies van "
-"bepaalde gegevens."
-
-#: src/background.c:219
-msgid "Force quit"
-msgstr "Afsluiten forceren"
-
-#: src/background.c:220
-msgid "Allow"
-msgstr "Toestaan"
-
-#: src/background.c:303
-msgid "Background activity"
-msgstr "Achtergrondactiviteit"
-
-#: src/background.c:311
-msgid "Find out more"
-msgstr "Kom meer te weten"
-
-#: src/dynamic-launcher.c:257
+#: src/dynamic-launcher.c:258
 msgid "Create Web Application"
 msgstr "Webtoepassing aanmaken"
 
-#: src/dynamic-launcher.c:259
+#: src/dynamic-launcher.c:260
 msgid "Create Application"
 msgstr "Toepassing aanmaken"
 
-#: src/dynamic-launcher.c:267
+#: src/dynamic-launcher.c:268
 msgid "C_reate"
 msgstr "Aan_maken"
 
-#: src/filechooser.c:529
+#: src/filechooser.c:530
 msgid "_Select"
 msgstr "_Selecteren"
 
-#: src/filechooser.c:531
+#: src/filechooser.c:532
 msgid "_Save"
 msgstr "Op_slaan"
 
-#: src/filechooser.c:713
+#: src/filechooser.c:714
 msgid "Open files read-only"
 msgstr "Bestanden als alleen-lezen openen"
 
+#: src/filechooser.c:721
+msgid "Open directories read-only"
+msgstr "Mappen als alleen-lezen openen"
+
 #: src/remotedesktopdialog.ui:7
 msgid "Remote desktop"
 msgstr "Bureaublad op afstand"
 
-#: src/remotedesktopdialog.ui:64
+#: src/remotedesktopdialog.ui:76
 msgid "Allow remote interaction"
 msgstr "Interactie vanop afstand toestaan"
 
@@ -195,21 +165,21 @@
 msgid "Virtual monitor"
 msgstr "Virtueel beeldscherm"
 
-#: src/screencastwidget.c:541
+#: src/screencastwidget.c:540
 #, c-format
 msgid "Select monitor to share with %s"
 msgstr "Kies een beeldscherm om met %s te delen"
 
-#: src/screencastwidget.c:543
+#: src/screencastwidget.c:542
 #, c-format
 msgid "Select window to share with %s"
 msgstr "Kies een venster om met %s te delen"
 
-#: src/screencastwidget.c:548
+#: src/screencastwidget.c:547
 msgid "Select monitor to share with the requesting application"
 msgstr "Kies een beeldscherm om met de toepassing te delen"
 
-#: src/screencastwidget.c:549
+#: src/screencastwidget.c:548
 msgid "Select window to share with the requesting application"
 msgstr "Kies een venster om met de toepassing te delen"
 
@@ -238,47 +208,47 @@
 msgid "Screenshot"
 msgstr "Schermafdruk"
 
-#: src/screenshotdialog.ui:30
+#: src/screenshotdialog.ui:42
 msgid "_Options…"
 msgstr "_Opties…"
 
-#: src/screenshotdialog.ui:55
+#: src/screenshotdialog.ui:67
 msgid "Take _Screenshot"
 msgstr "_Schermafdruk maken"
 
-#: src/screenshotdialog.ui:108
+#: src/screenshotdialog.ui:120
 msgid "Take Screenshot"
 msgstr "Schermafdruk maken"
 
-#: src/screenshotdialog.ui:118
+#: src/screenshotdialog.ui:130
 msgid "Grab the whole sc_reen"
 msgstr "Het hele _scherm"
 
-#: src/screenshotdialog.ui:128
+#: src/screenshotdialog.ui:140
 msgid "Grab the current _window"
 msgstr "Het huidige _venster"
 
-#: src/screenshotdialog.ui:138
+#: src/screenshotdialog.ui:150
 msgid "Select _area to grab"
 msgstr "Selecteer een _gebied"
 
-#: src/screenshotdialog.ui:150
+#: src/screenshotdialog.ui:162
 msgid "Grab after a _delay of"
 msgstr "Met een _vertraging van"
 
-#: src/screenshotdialog.ui:161
+#: src/screenshotdialog.ui:173
 msgid "seconds"
 msgstr "seconden"
 
-#: src/screenshotdialog.ui:170
+#: src/screenshotdialog.ui:182
 msgid "Effects"
 msgstr "Effecten"
 
-#: src/screenshotdialog.ui:180
+#: src/screenshotdialog.ui:192
 msgid "Include _pointer"
 msgstr "Muisaanwijzer o_pnemen"
 
-#: src/screenshotdialog.ui:188
+#: src/screenshotdialog.ui:200
 msgid "Include the window _border"
 msgstr "De _vensterrand in de schermafdruk opnemen"
 
@@ -290,11 +260,11 @@
 msgid "Set Background"
 msgstr "Bureaubladachtergrond instellen"
 
-#: src/wallpaperdialog.ui:20
+#: src/wallpaperdialog.ui:32
 msgid "Set"
 msgstr "Instellen"
 
-#: src/wallpaperdialog.ui:51
+#: src/wallpaperdialog.ui:63
 msgid "Failed to load image file"
 msgstr "Laden van afbeeldingsbestand mislukt"
 
@@ -302,5 +272,33 @@
 msgid "Activities"
 msgstr "Activiteiten"
 
+#, c-format
+#~ msgid "“%s” is running in the background"
+#~ msgstr "‘%s’ draait op de achtergrond"
+
+#~ msgid ""
+#~ "This might be for a legitimate reason, but the application has not "
+#~ "provided one.\n"
+#~ "\n"
+#~ "Note that forcing an application to quit might cause data loss."
+#~ msgstr ""
+#~ "Hier kan een geldige reden voor zijn, maar de toepassing heeft er geen "
+#~ "opgegeven.\n"
+#~ "\n"
+#~ "Let op: een toepassing geforceerd afsluiten kan leiden tot verlies van "
+#~ "bepaalde gegevens."
+
+#~ msgid "Force quit"
+#~ msgstr "Afsluiten forceren"
+
+#~ msgid "Allow"
+#~ msgstr "Toestaan"
+
+#~ msgid "Background activity"
+#~ msgstr "Achtergrondactiviteit"
+
+#~ msgid "Find out more"
+#~ msgstr "Kom meer te weten"
+
 #~ msgid "applications-system-symbolic"
 #~ msgstr "applications-system-symbolic"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-gnome-44.0/po/zh_CN.po 
new/xdg-desktop-portal-gnome-44.1/po/zh_CN.po
--- old/xdg-desktop-portal-gnome-44.0/po/zh_CN.po       2023-03-19 
22:24:49.000000000 +0100
+++ new/xdg-desktop-portal-gnome-44.1/po/zh_CN.po       2023-04-21 
13:57:54.000000000 +0200
@@ -10,16 +10,16 @@
 "Project-Id-Version: xdg-desktop-portal-gnome master\n"
 "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/xdg-desktop-portal-";
 "gnome/issues\n"
-"POT-Creation-Date: 2022-05-09 05:56+0000\n"
-"PO-Revision-Date: 2022-05-22 09:00+0800\n"
-"Last-Translator: lumingzh <[email protected]>\n"
+"POT-Creation-Date: 2023-01-25 22:32+0000\n"
+"PO-Revision-Date: 2023-04-04 11:32-0400\n"
+"Last-Translator: Boyuan Yang <[email protected]>\n"
 "Language-Team: Chinese - China <[email protected]>\n"
 "Language: zh_CN\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Gtranslator 42.0\n"
-"Plural-Forms: nplurals=1; plural=0\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Poedit 3.2.2\n"
 
 #: data/xdg-desktop-portal-gnome.desktop.in.in:4
 msgid "Portal"
@@ -29,7 +29,7 @@
 msgid "Select an Image"
 msgstr "选择一张图像"
 
-#: src/accountdialog.c:155 src/wallpaperdialog.ui:14
+#: src/accountdialog.c:155 src/wallpaperdialog.ui:26
 msgid "Cancel"
 msgstr "取消"
 
@@ -59,23 +59,23 @@
 msgid "Share Details"
 msgstr "分享详情"
 
-#: src/accountdialog.ui:12 src/appchooserdialog.ui:12
-#: src/dynamic-launcher.c:265 src/filechooser.c:451
-#: src/remotedesktopdialog.ui:13 src/screencastdialog.ui:14
-#: src/screenshotdialog.ui:14
+#: src/accountdialog.ui:23 src/appchooserdialog.ui:12
+#: src/dynamic-launcher.c:266 src/filechooser.c:535
+#: src/remotedesktopdialog.ui:25 src/screencastdialog.ui:26
+#: src/screenshotdialog.ui:26
 msgid "_Cancel"
 msgstr "取消(_C)"
 
-#: src/accountdialog.ui:19 src/remotedesktopdialog.ui:21
-#: src/screencastdialog.ui:22 src/screenshotdialog.ui:37
+#: src/accountdialog.ui:30 src/remotedesktopdialog.ui:33
+#: src/screencastdialog.ui:34 src/screenshotdialog.ui:49
 msgid "_Share"
 msgstr "分享(_S)"
 
-#: src/accountdialog.ui:72
+#: src/accountdialog.ui:83
 msgid "Name"
 msgstr "名字"
 
-#: src/accountdialog.ui:84
+#: src/accountdialog.ui:95
 msgid "Username"
 msgstr "用户名"
 
@@ -107,7 +107,7 @@
 msgid "Open With…"
 msgstr "打开方式…"
 
-#: src/appchooserdialog.ui:20 src/filechooser.c:446
+#: src/appchooserdialog.ui:20 src/filechooser.c:530
 msgid "_Open"
 msgstr "打开(_O)"
 
@@ -119,67 +119,39 @@
 msgid "_Find More in Software"
 msgstr "在“软件”中了解更多(_F)"
 
-#: src/background.c:214 src/background.c:305
-#, c-format
-msgid "“%s” is running in the background"
-msgstr "“%s”正在后台运行"
-
-#: src/background.c:216
-msgid ""
-"This might be for a legitimate reason, but the application has not provided "
-"one.\n"
-"\n"
-"Note that forcing an application to quit might cause data loss."
-msgstr ""
-"后台运行可能是出于正当原因,但应用程序未提供理由。\n"
-"\n"
-"请注意,强制应用程序退出可能导致数据丢失。"
-
-#: src/background.c:219
-msgid "Force quit"
-msgstr "强制退出"
-
-#: src/background.c:220
-msgid "Allow"
-msgstr "允许"
-
-#: src/background.c:303
-msgid "Background activity"
-msgstr "后台活动"
-
-#: src/background.c:311
-msgid "Find out more"
-msgstr "了解更多"
-
-#: src/dynamic-launcher.c:257
+#: src/dynamic-launcher.c:258
 msgid "Create Web Application"
 msgstr "创建网页应用程序"
 
-#: src/dynamic-launcher.c:259
+#: src/dynamic-launcher.c:260
 msgid "Create Application"
 msgstr "创建应用程序"
 
-#: src/dynamic-launcher.c:267
+#: src/dynamic-launcher.c:268
 msgid "C_reate"
 msgstr "创建(_R)"
 
-#: src/filechooser.c:446
+#: src/filechooser.c:530
 msgid "_Select"
 msgstr "选择(_S)"
 
-#: src/filechooser.c:448
+#: src/filechooser.c:532
 msgid "_Save"
 msgstr "保存(_S)"
 
-#: src/filechooser.c:617
+#: src/filechooser.c:714
 msgid "Open files read-only"
 msgstr "以只读方式打开文件"
 
+#: src/filechooser.c:721
+msgid "Open directories read-only"
+msgstr "以只读方式打开目录"
+
 #: src/remotedesktopdialog.ui:7
 msgid "Remote desktop"
 msgstr "远程桌面"
 
-#: src/remotedesktopdialog.ui:64
+#: src/remotedesktopdialog.ui:76
 msgid "Allow remote interaction"
 msgstr "允许远程交互"
 
@@ -191,21 +163,21 @@
 msgid "Virtual monitor"
 msgstr "虚拟监视器"
 
-#: src/screencastwidget.c:542
+#: src/screencastwidget.c:540
 #, c-format
 msgid "Select monitor to share with %s"
 msgstr "选择与 %s 共享的监视器"
 
-#: src/screencastwidget.c:544
+#: src/screencastwidget.c:542
 #, c-format
 msgid "Select window to share with %s"
 msgstr "选择与 %s 共享的窗口"
 
-#: src/screencastwidget.c:549
+#: src/screencastwidget.c:547
 msgid "Select monitor to share with the requesting application"
 msgstr "选择与发出请求的应用程序共享的监视器"
 
-#: src/screencastwidget.c:550
+#: src/screencastwidget.c:548
 msgid "Select window to share with the requesting application"
 msgstr "选择与发出请求的应用程序共享的窗口"
 
@@ -221,12 +193,12 @@
 msgid "Entire Screen"
 msgstr "整个屏幕"
 
-#: src/screenshotdialog.c:420
+#: src/screenshotdialog.c:435
 #, c-format
 msgid "Share this screenshot with %s?"
 msgstr "要与 %s 分享截图吗?"
 
-#: src/screenshotdialog.c:424
+#: src/screenshotdialog.c:439
 msgid "Share this screenshot with the requesting application?"
 msgstr "与发出请求的应用程序共享此截图吗?"
 
@@ -234,51 +206,51 @@
 msgid "Screenshot"
 msgstr "截屏"
 
-#: src/screenshotdialog.ui:30
+#: src/screenshotdialog.ui:42
 msgid "_Options…"
 msgstr "选项(_O)…"
 
-#: src/screenshotdialog.ui:55
+#: src/screenshotdialog.ui:67
 msgid "Take _Screenshot"
 msgstr "截图"
 
-#: src/screenshotdialog.ui:108
+#: src/screenshotdialog.ui:120
 msgid "Take Screenshot"
 msgstr "截图"
 
-#: src/screenshotdialog.ui:118
+#: src/screenshotdialog.ui:130
 msgid "Grab the whole sc_reen"
 msgstr "抓取当前屏幕(_R)"
 
-#: src/screenshotdialog.ui:128
+#: src/screenshotdialog.ui:140
 msgid "Grab the current _window"
 msgstr "抓取当前窗口(_W)"
 
-#: src/screenshotdialog.ui:138
+#: src/screenshotdialog.ui:150
 msgid "Select _area to grab"
 msgstr "选择截取区域(_A)"
 
-#: src/screenshotdialog.ui:150
+#: src/screenshotdialog.ui:162
 msgid "Grab after a _delay of"
 msgstr "在延迟后抓取(_D)"
 
-#: src/screenshotdialog.ui:161
+#: src/screenshotdialog.ui:173
 msgid "seconds"
 msgstr "秒"
 
-#: src/screenshotdialog.ui:170
+#: src/screenshotdialog.ui:182
 msgid "Effects"
 msgstr "效果"
 
-#: src/screenshotdialog.ui:180
+#: src/screenshotdialog.ui:192
 msgid "Include _pointer"
 msgstr "包含指针(_P)"
 
-#: src/screenshotdialog.ui:188
+#: src/screenshotdialog.ui:200
 msgid "Include the window _border"
 msgstr "包含窗口边框(_B)"
 
-#: src/settings.c:247
+#: src/settings.c:246
 msgid "Requested setting not found"
 msgstr "未找到请求的设置"
 
@@ -286,18 +258,44 @@
 msgid "Set Background"
 msgstr "设置背景"
 
-#: src/wallpaperdialog.ui:20
+#: src/wallpaperdialog.ui:32
 msgid "Set"
 msgstr "设置"
 
-#: src/wallpaperdialog.ui:51
+#: src/wallpaperdialog.ui:63
 msgid "Failed to load image file"
 msgstr "无法加载图像文件"
 
-#: src/wallpaperpreview.ui:50
+#: src/wallpaperpreview.ui:48
 msgid "Activities"
 msgstr "活动"
 
+#, c-format
+#~ msgid "“%s” is running in the background"
+#~ msgstr "“%s”正在后台运行"
+
+#~ msgid ""
+#~ "This might be for a legitimate reason, but the application has not "
+#~ "provided one.\n"
+#~ "\n"
+#~ "Note that forcing an application to quit might cause data loss."
+#~ msgstr ""
+#~ "后台运行可能是出于正当原因
,但应用程序未提供理由。\n"
+#~ "\n"
+#~ "请注意,强制应用程序退出可能导致数据丢失。"
+
+#~ msgid "Force quit"
+#~ msgstr "强制退出"
+
+#~ msgid "Allow"
+#~ msgstr "允许"
+
+#~ msgid "Background activity"
+#~ msgstr "后台活动"
+
+#~ msgid "Find out more"
+#~ msgstr "了解更多"
+
 #~ msgid "applications-system-symbolic"
 #~ msgstr "applications-system-symbolic"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-gnome-44.0/src/background.c 
new/xdg-desktop-portal-gnome-44.1/src/background.c
--- old/xdg-desktop-portal-gnome-44.0/src/background.c  2023-03-19 
22:24:49.000000000 +0100
+++ new/xdg-desktop-portal-gnome-44.1/src/background.c  2023-04-21 
13:57:54.000000000 +0200
@@ -39,6 +39,21 @@
   return app;
 }
 
+static const char *
+app_state_to_str (AppState state)
+{
+  switch (state)
+    {
+    case BACKGROUND:
+      return "BACKGROUND";
+    case RUNNING:
+      return "RUNNING";
+    case ACTIVE:
+      return "ACTIVE";
+    }
+  g_assert_not_reached ();
+}
+
 static GVariant *
 get_app_state (void)
 {
@@ -83,6 +98,8 @@
           if (seats != NULL)
             state = MAX (state, ACTIVE);
 
+          g_debug ("\tUpdating app '%s' state to %s", app, app_state_to_str 
(state));
+
           g_hash_table_insert (app_states, app, GINT_TO_POINTER (state));
         }
     }
@@ -289,7 +306,8 @@
       if ((v1 == BACKGROUND && v2 != BACKGROUND) ||
           (v1 != BACKGROUND && v2 == BACKGROUND))
         {
-          g_debug ("App %s changed state: %u != %u", app_id, v1, v2);
+          g_debug ("App %s changed state: %s != %s", app_id,
+                   app_state_to_str (v1), app_state_to_str (v2));
           changed = TRUE;
         }
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/xdg-desktop-portal-gnome-44.0/src/displaystatetracker.c 
new/xdg-desktop-portal-gnome-44.1/src/displaystatetracker.c
--- old/xdg-desktop-portal-gnome-44.0/src/displaystatetracker.c 2023-03-19 
22:24:49.000000000 +0100
+++ new/xdg-desktop-portal-gnome-44.1/src/displaystatetracker.c 2023-04-21 
13:57:54.000000000 +0200
@@ -62,7 +62,7 @@
 
 static DisplayStateTracker *_display_state_tracker;
 
-static void
+void
 monitor_free (Monitor *monitor)
 {
   g_free (monitor->connector);
@@ -71,6 +71,19 @@
   g_free (monitor);
 }
 
+Monitor *
+monitor_dup (Monitor *monitor)
+{
+  Monitor *new_monitor;
+
+  new_monitor = g_new0 (Monitor, 1);
+  new_monitor->connector = g_strdup (monitor->connector);
+  new_monitor->match_string = g_strdup (monitor->match_string);
+  new_monitor->display_name = g_strdup (monitor->display_name);
+
+  return new_monitor;
+}
+
 const char *
 monitor_get_connector (Monitor *monitor)
 {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/xdg-desktop-portal-gnome-44.0/src/displaystatetracker.h 
new/xdg-desktop-portal-gnome-44.1/src/displaystatetracker.h
--- old/xdg-desktop-portal-gnome-44.0/src/displaystatetracker.h 2023-03-19 
22:24:49.000000000 +0100
+++ new/xdg-desktop-portal-gnome-44.1/src/displaystatetracker.h 2023-04-21 
13:57:54.000000000 +0200
@@ -26,6 +26,10 @@
 G_DECLARE_FINAL_TYPE (DisplayStateTracker, display_state_tracker,
                       DISPLAY, STATE_TRACKER, GObject)
 
+void monitor_free (Monitor *monitor);
+
+Monitor * monitor_dup (Monitor *monitor);
+
 const char * monitor_get_connector (Monitor *monitor);
 
 const char * monitor_get_match_string (Monitor *monitor);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/xdg-desktop-portal-gnome-44.0/src/externalwindow-wayland.c 
new/xdg-desktop-portal-gnome-44.1/src/externalwindow-wayland.c
--- old/xdg-desktop-portal-gnome-44.0/src/externalwindow-wayland.c      
2023-03-19 22:24:49.000000000 +0100
+++ new/xdg-desktop-portal-gnome-44.1/src/externalwindow-wayland.c      
2023-04-21 13:57:54.000000000 +0200
@@ -249,22 +249,9 @@
     g_debug ("Missing X11 interop protocol support");
 }
 
-static void
-on_service_channel_name_appeared (GDBusConnection *connection,
-                                  const char      *name,
-                                  const char      *name_owner,
-                                  gpointer         user_data)
-{
-  gboolean *name_appeared = user_data;
-
-  *name_appeared = TRUE;
-}
-
 GdkDisplay *
 init_external_window_wayland_display (GError **error)
 {
-  guint watch_name_id;
-  gboolean name_appeared = FALSE;
   g_autoptr(OrgGnomeMutterServiceChannel) proxy = NULL;
   g_autoptr(GVariant) fd_variant = NULL;
   g_autoptr(GUnixFDList) fd_list = NULL;
@@ -272,17 +259,6 @@
   g_autofree char *fd_str = NULL;
   GdkDisplay *display;
 
-  watch_name_id =
-    g_bus_watch_name (G_BUS_TYPE_SESSION,
-                      "org.gnome.Mutter.ServiceChannel",
-                      G_BUS_NAME_WATCHER_FLAGS_NONE,
-                      on_service_channel_name_appeared,
-                      NULL,
-                      &name_appeared, NULL);
-  while (!name_appeared)
-    g_main_context_iteration (NULL, TRUE);
-  g_bus_unwatch_name (watch_name_id);
-
   proxy = org_gnome_mutter_service_channel_proxy_new_for_bus_sync (
     G_BUS_TYPE_SESSION,
     (G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START |
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-gnome-44.0/src/externalwindow.c 
new/xdg-desktop-portal-gnome-44.1/src/externalwindow.c
--- old/xdg-desktop-portal-gnome-44.0/src/externalwindow.c      2023-03-19 
22:24:49.000000000 +0100
+++ new/xdg-desktop-portal-gnome-44.1/src/externalwindow.c      2023-04-21 
13:57:54.000000000 +0200
@@ -90,10 +90,14 @@
   const char *session_type;
 
   session_type = getenv ("XDG_SESSION_TYPE");
+#ifdef HAVE_GTK_WAYLAND
   if (g_strcmp0 (session_type, "wayland") == 0)
     return init_external_window_wayland_display (error);
-  else if (g_strcmp0 (session_type, "x11") == 0)
+#endif
+#ifdef HAVE_GTK_X11
+  if (g_strcmp0 (session_type, "x11") == 0)
     return init_external_window_x11_display (error);
+#endif
 
   g_set_error (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
                "Unsupported or missing session type '%s'",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-gnome-44.0/src/filechooser.c 
new/xdg-desktop-portal-gnome-44.1/src/filechooser.c
--- old/xdg-desktop-portal-gnome-44.0/src/filechooser.c 2023-03-19 
22:24:49.000000000 +0100
+++ new/xdg-desktop-portal-gnome-44.1/src/filechooser.c 2023-04-21 
13:57:54.000000000 +0200
@@ -650,7 +650,17 @@
       if (g_variant_lookup (arg_options, "current_file", "^&ay", &path))
         {
           g_autoptr(GFile) file = g_file_new_for_path (path);
-          gtk_file_chooser_set_file (GTK_FILE_CHOOSER (dialog), file, NULL);
+          if (g_file_test (path, G_FILE_TEST_EXISTS))
+            {
+              gtk_file_chooser_set_file (GTK_FILE_CHOOSER (dialog), file, 
NULL);
+            }
+          else
+            {
+              g_autoptr(GFile) folder = g_file_get_parent (file);
+              g_autofree char *name = g_file_get_basename (file);
+              gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (dialog), 
folder, NULL);
+              gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (dialog), 
name);
+            }
         }
       else
         {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-gnome-44.0/src/screencast.c 
new/xdg-desktop-portal-gnome-44.1/src/screencast.c
--- old/xdg-desktop-portal-gnome-44.0/src/screencast.c  2023-03-19 
22:24:49.000000000 +0100
+++ new/xdg-desktop-portal-gnome-44.1/src/screencast.c  2023-04-21 
13:57:54.000000000 +0200
@@ -471,6 +471,24 @@
   return best_match;
 }
 
+void
+screen_cast_stream_info_free (ScreenCastStreamInfo *info)
+{
+  switch (info->type)
+    {
+    case SCREEN_CAST_SOURCE_TYPE_MONITOR:
+      g_clear_pointer (&info->data.monitor, monitor_free);
+      break;
+    case SCREEN_CAST_SOURCE_TYPE_WINDOW:
+      g_clear_pointer (&info->data.window, window_free);
+      break;
+    case SCREEN_CAST_SOURCE_TYPE_VIRTUAL:
+      break;
+    }
+
+  g_free (info);
+}
+
 static gboolean
 restore_stream_from_data (ScreenCastSession *screen_cast_session)
 
@@ -488,7 +506,8 @@
   if (!screen_cast_session->restored.data)
     return FALSE;
 
-  streams = g_ptr_array_new_with_free_func (g_free);
+  streams =
+    g_ptr_array_new_with_free_func ((GDestroyNotify) 
screen_cast_stream_info_free);
 
   g_variant_get (screen_cast_session->restored.data,
                  RESTORE_VARIANT_TYPE,
@@ -514,7 +533,7 @@
 
             info = g_new0 (ScreenCastStreamInfo, 1);
             info->type = SCREEN_CAST_SOURCE_TYPE_MONITOR;
-            info->data.monitor = monitor;
+            info->data.monitor = monitor_dup (monitor);
             info->id = id;
             g_ptr_array_add (streams, info);
           }
@@ -539,7 +558,7 @@
 
             info = g_new0 (ScreenCastStreamInfo, 1);
             info->type = SCREEN_CAST_SOURCE_TYPE_WINDOW;
-            info->data.window = window;
+            info->data.window = window_dup (window);
             info->id = id;
             g_ptr_array_add (streams, info);
           }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-gnome-44.0/src/screencast.h 
new/xdg-desktop-portal-gnome-44.1/src/screencast.h
--- old/xdg-desktop-portal-gnome-44.0/src/screencast.h  2023-03-19 
22:24:49.000000000 +0100
+++ new/xdg-desktop-portal-gnome-44.1/src/screencast.h  2023-04-21 
13:57:54.000000000 +0200
@@ -65,3 +65,5 @@
 
 gboolean screen_cast_init (GDBusConnection *connection,
                            GError **error);
+
+void screen_cast_stream_info_free (ScreenCastStreamInfo *info);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-gnome-44.0/src/screencastwidget.c 
new/xdg-desktop-portal-gnome-44.1/src/screencastwidget.c
--- old/xdg-desktop-portal-gnome-44.0/src/screencastwidget.c    2023-03-19 
22:24:49.000000000 +0100
+++ new/xdg-desktop-portal-gnome-44.1/src/screencastwidget.c    2023-04-21 
13:57:54.000000000 +0200
@@ -101,9 +101,10 @@
   escaped_name = g_markup_escape_text (window_get_title (window), -1);
   adw_preferences_row_set_title (ADW_PREFERENCES_ROW (row), escaped_name);
 
-  g_object_set_qdata (G_OBJECT (row),
-                      quark_window_widget_data,
-                      window);
+  g_object_set_qdata_full (G_OBJECT (row),
+                           quark_window_widget_data,
+                           window_dup (window),
+                           (GDestroyNotify) window_free);
   g_object_set_data (G_OBJECT (row), "check", check_image);
   return row;
 }
@@ -127,9 +128,12 @@
       Monitor *monitor = l->data;
 
       if (!l->prev)
-        g_object_set_qdata (G_OBJECT (row),
-                            quark_monitor_widget_data,
-                            monitor);
+        {
+          g_object_set_qdata_full (G_OBJECT (row),
+                                   quark_monitor_widget_data,
+                                   monitor_dup (monitor),
+                                   (GDestroyNotify) monitor_free);
+        }
 
       g_string_append (string, monitor_get_display_name (monitor));
 
@@ -594,7 +598,8 @@
   uint32_t id = 0;
   GList *l;
 
-  streams = g_ptr_array_new_with_free_func (g_free);
+  streams =
+    g_ptr_array_new_with_free_func ((GDestroyNotify) 
screen_cast_stream_info_free);
 
   selected_monitor_rows =
     gtk_list_box_get_selected_rows (GTK_LIST_BOX (self->monitor_list));
@@ -615,7 +620,7 @@
         {
           info = g_new0 (ScreenCastStreamInfo, 1);
           info->type = SCREEN_CAST_SOURCE_TYPE_MONITOR;
-          info->data.monitor = monitor;
+          info->data.monitor = monitor_dup (monitor);
           info->id = id++;
           g_ptr_array_add (streams, info);
         }
@@ -636,7 +641,7 @@
 
       info = g_new0 (ScreenCastStreamInfo, 1);
       info->type = SCREEN_CAST_SOURCE_TYPE_WINDOW;
-      info->data.window = window;
+      info->data.window = window_dup (window);
       info->id = id++;
       g_ptr_array_add (streams, info);
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-gnome-44.0/src/shellintrospect.c 
new/xdg-desktop-portal-gnome-44.1/src/shellintrospect.c
--- old/xdg-desktop-portal-gnome-44.0/src/shellintrospect.c     2023-03-19 
22:24:49.000000000 +0100
+++ new/xdg-desktop-portal-gnome-44.1/src/shellintrospect.c     2023-04-21 
13:57:54.000000000 +0200
@@ -62,7 +62,7 @@
 
 static ShellIntrospect *_shell_introspect;
 
-static void
+void
 window_free (Window *window)
 {
   g_free (window->title);
@@ -70,6 +70,19 @@
   g_free (window);
 }
 
+Window *
+window_dup (Window *window)
+{
+  Window *new_window;
+
+  new_window = g_new0 (Window, 1);
+  new_window->id = window->id;
+  new_window->title = g_strdup (window->title);
+  new_window->app_id = g_strdup (window->app_id);
+
+  return new_window;
+}
+
 static void
 get_windows_cb (GObject *source_object,
                 GAsyncResult *res,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xdg-desktop-portal-gnome-44.0/src/shellintrospect.h 
new/xdg-desktop-portal-gnome-44.1/src/shellintrospect.h
--- old/xdg-desktop-portal-gnome-44.0/src/shellintrospect.h     2023-03-19 
22:24:49.000000000 +0100
+++ new/xdg-desktop-portal-gnome-44.1/src/shellintrospect.h     2023-04-21 
13:57:54.000000000 +0200
@@ -34,6 +34,10 @@
 
 void shell_introspect_unref_listeners (ShellIntrospect *shell_introspect);
 
+void window_free (Window *window);
+
+Window * window_dup (Window *window);
+
 const char * window_get_app_id (Window *window);
 
 const char * window_get_title (Window *window);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/xdg-desktop-portal-gnome-44.0/src/xdg-desktop-portal-gnome.c 
new/xdg-desktop-portal-gnome-44.1/src/xdg-desktop-portal-gnome.c
--- old/xdg-desktop-portal-gnome-44.0/src/xdg-desktop-portal-gnome.c    
2023-03-19 22:24:49.000000000 +0100
+++ new/xdg-desktop-portal-gnome-44.1/src/xdg-desktop-portal-gnome.c    
2023-04-21 13:57:54.000000000 +0200
@@ -241,13 +241,6 @@
   bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
   textdomain (GETTEXT_PACKAGE);
 
-  if (!init_gtk (&error))
-    {
-      g_printerr ("Failed to initialize display server connection: %s\n",
-                  error->message);
-      return 1;
-    }
-
   context = g_option_context_new ("- portal backends");
   g_option_context_set_summary (context,
       "A backend implementation for xdg-desktop-portal.");
@@ -283,6 +276,13 @@
 
   g_set_prgname ("xdg-desktop-portal-gnome");
 
+  if (!init_gtk (&error))
+    {
+      g_printerr ("Failed to initialize display server connection: %s\n",
+                  error->message);
+      return 1;
+    }
+
   loop = g_main_loop_new (NULL, FALSE);
 
   outstanding_handles = g_hash_table_new (g_str_hash, g_str_equal);

Reply via email to