Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package at-spi2-core for openSUSE:Factory checked in at 2026-05-30 22:55:08 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/at-spi2-core (Old) and /work/SRC/openSUSE:Factory/.at-spi2-core.new.1937 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "at-spi2-core" Sat May 30 22:55:08 2026 rev:126 rq:1355921 version:2.60.4 Changes: -------- --- /work/SRC/openSUSE:Factory/at-spi2-core/at-spi2-core.changes 2026-05-05 15:15:53.264466798 +0200 +++ /work/SRC/openSUSE:Factory/.at-spi2-core.new.1937/at-spi2-core.changes 2026-05-30 22:56:09.179392864 +0200 @@ -1,0 +2,8 @@ +Sat May 23 14:42:55 UTC 2026 - Bjørn Lie <[email protected]> + +- Update to version 2.60.4: + + AtspiDeviceA11yManager: Make use of pid when returned by + queryPointer + + Fix deregistering application-specific event listeners + +------------------------------------------------------------------- Old: ---- at-spi2-core-2.60.3.tar.xz New: ---- at-spi2-core-2.60.4.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ at-spi2-core.spec ++++++ --- /var/tmp/diff_new_pack.k83LyA/_old 2026-05-30 22:56:10.839460977 +0200 +++ /var/tmp/diff_new_pack.k83LyA/_new 2026-05-30 22:56:10.843461141 +0200 @@ -23,7 +23,7 @@ %define atspiconfdir %{?_distconfdir}%{!?_distconfdir:%{_sysconfdir}} Name: at-spi2-core -Version: 2.60.3 +Version: 2.60.4 Release: 0 Summary: Assistive Technology Service Provider Interface - D-Bus based implementation License: LGPL-2.1-or-later ++++++ _scmsync.obsinfo ++++++ --- /var/tmp/diff_new_pack.k83LyA/_old 2026-05-30 22:56:10.903463603 +0200 +++ /var/tmp/diff_new_pack.k83LyA/_new 2026-05-30 22:56:10.911463932 +0200 @@ -1,6 +1,6 @@ -mtime: 1777486438 -commit: 65e6cf4256063ff5c2c51a36e02d1ce403c8872fc3eed3c9590867481c0a4500 +mtime: 1779547476 +commit: 0bb33636dafcd42460e68eaef4ee9b1700007348fa7bcbd7f053045eb5180e72 url: https://src.opensuse.org/GNOME/at-spi2-core -revision: 65e6cf4256063ff5c2c51a36e02d1ce403c8872fc3eed3c9590867481c0a4500 +revision: 0bb33636dafcd42460e68eaef4ee9b1700007348fa7bcbd7f053045eb5180e72 projectscmsync: https://src.opensuse.org/GNOME/_ObsPrj ++++++ _service ++++++ --- /var/tmp/diff_new_pack.k83LyA/_old 2026-05-30 22:56:10.939465080 +0200 +++ /var/tmp/diff_new_pack.k83LyA/_new 2026-05-30 22:56:10.947465409 +0200 @@ -3,7 +3,7 @@ <service name="obs_scm" mode="manual"> <param name="scm">git</param> <param name="url">https://gitlab.gnome.org/GNOME/at-spi2-core.git</param> - <param name="revision">2.60.3</param> + <param name="revision">2.60.4</param> <param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param> <param name="versionrewrite-pattern">(.*)\+0</param> <param name="versionrewrite-replacement">\1</param> ++++++ at-spi2-core-2.60.3.tar.xz -> at-spi2-core-2.60.4.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/at-spi2-core-2.60.3/NEWS new/at-spi2-core-2.60.4/NEWS --- old/at-spi2-core-2.60.3/NEWS 2026-04-29 17:23:50.000000000 +0200 +++ new/at-spi2-core-2.60.4/NEWS 2026-05-23 15:19:40.000000000 +0200 @@ -1,3 +1,9 @@ +What's new in at-spi2-core 2.60.4: + +* AtspiDeviceA11yManager: Make use of pid when returned by queryPointer + +* Fix deregistering application-specific event listeners + What's new in at-spi2-core 2.60.3: * libatspi: Fix another NULL pointer dereference. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/at-spi2-core-2.60.3/atspi/atspi-constants.h new/at-spi2-core-2.60.4/atspi/atspi-constants.h --- old/at-spi2-core-2.60.3/atspi/atspi-constants.h 2026-04-29 17:23:50.000000000 +0200 +++ new/at-spi2-core-2.60.4/atspi/atspi-constants.h 2026-05-23 15:19:40.000000000 +0200 @@ -1895,7 +1895,7 @@ * * Since: 2.59 */ -#define ATSPI_REGISTRY_VERSION 1 +#define ATSPI_REGISTRY_VERSION 2 /** * ATSPI_SELECTION_VERSION: * diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/at-spi2-core-2.60.3/atspi/atspi-device-a11y-manager.c new/at-spi2-core-2.60.4/atspi/atspi-device-a11y-manager.c --- old/at-spi2-core-2.60.3/atspi/atspi-device-a11y-manager.c 2026-04-29 17:23:50.000000000 +0200 +++ new/at-spi2-core-2.60.4/atspi/atspi-device-a11y-manager.c 2026-05-23 15:19:40.000000000 +0200 @@ -397,6 +397,7 @@ gchar *object_path = NULL; double x = 0, y = 0; AtspiAccessible *obj; + gint pid = -1; if (!ret) return; @@ -404,12 +405,19 @@ g_variant_get (ret, "(@a{sv}dd)", &values, &x, &y); g_variant_lookup (values, "app-dbus-name", "s", &bus_name); g_variant_lookup (values, "toplevel-object-path", "o", &object_path); + g_variant_lookup (values, "pid", "i", &pid); if (bus_name && object_path) { obj = _atspi_ref_accessible (bus_name, object_path); g_signal_emit_by_name (device, "pointer-moved", obj, (gint) x, (gint) y); g_object_unref (obj); } + else if (pid > 0) + { + obj = _atspi_get_accessible_from_pid (pid); + g_signal_emit_by_name (device, "pointer-moved", obj, (gint) x, (gint) y); + g_object_unref (obj); + } g_free (bus_name); g_free (object_path); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/at-spi2-core-2.60.3/atspi/atspi-device-x11.c new/at-spi2-core-2.60.4/atspi/atspi-device-x11.c --- old/at-spi2-core-2.60.3/atspi/atspi-device-x11.c 2026-04-29 17:23:50.000000000 +0200 +++ new/at-spi2-core-2.60.4/atspi/atspi-device-x11.c 2026-05-23 15:19:40.000000000 +0200 @@ -984,32 +984,6 @@ return pid; } -static AtspiAccessible * -get_accessible_from_pid (pid_t pid) -{ - AtspiAccessible *desktop = atspi_get_desktop (0); - gint count = atspi_accessible_get_child_count (desktop, NULL); - gint i; - guint child_pid; - - for (i = 0; i < count; i++) - { - AtspiAccessible *child = atspi_accessible_get_child_at_index (desktop, i, NULL); - if (!child) - continue; - child_pid = atspi_accessible_get_process_id (child, NULL); - if (child_pid == pid) - { - g_object_unref (desktop); - return child; - } - g_object_unref (child); - } - - g_object_unref (desktop); - return NULL; -} - static gboolean poll_mouse_moved (AtspiDeviceX11 *x11_device) { @@ -1045,7 +1019,7 @@ return TRUE; pid = get_pid_from_window (priv->display, child); - accessible = get_accessible_from_pid (pid); + accessible = _atspi_get_accessible_from_pid (pid); if (accessible) { g_signal_emit_by_name (x11_device, "pointer-moved", accessible, win_x_return, win_y_return); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/at-spi2-core-2.60.3/atspi/atspi-event-listener.c new/at-spi2-core-2.60.4/atspi/atspi-event-listener.c --- old/at-spi2-core-2.60.3/atspi/atspi-event-listener.c 2026-04-29 17:23:50.000000000 +0200 +++ new/at-spi2-core-2.60.4/atspi/atspi-event-listener.c 2026-05-23 15:19:40.000000000 +0200 @@ -398,7 +398,7 @@ gchar *matchrule; (*matchrule_array) = g_ptr_array_new (); matchrule = g_strdup_printf ("type='signal',interface='org.a11y.atspi.Event.%s'", category); - if (app) + if (app && app->parent.app) { gchar *new_str = g_strconcat (matchrule, ",sender='", app->parent.app->bus_name, "'", @@ -899,7 +899,7 @@ gint i; GList *l; - if (!convert_event_type_to_dbus (event_type, &category, &name, &detail, NULL, &matchrule_array)) + if (!convert_event_type_to_dbus (event_type, &category, &name, &detail, NULL, NULL)) { return FALSE; } @@ -926,21 +926,28 @@ } else event_listeners = g_list_remove (event_listeners, e); + convert_event_type_to_dbus (event_type, NULL, NULL, NULL, e->app, &matchrule_array); for (i = 0; i < matchrule_array->len; i++) { char *matchrule = g_ptr_array_index (matchrule_array, i); dbus_bus_remove_match (_atspi_bus (), matchrule, NULL); + g_free (matchrule); + } + g_ptr_array_free (matchrule_array, TRUE); + if (!e->app || e->app->parent.app) + { + const char *app_bus_name = (e->app ? e->app->parent.app->bus_name : ""); + message = dbus_message_new_method_call (atspi_bus_registry, + atspi_path_registry, + atspi_interface_registry, + "DeregisterEvent"); + if (!message) + return FALSE; + dbus_message_append_args (message, DBUS_TYPE_STRING, &event_type, DBUS_TYPE_STRING, &app_bus_name, DBUS_TYPE_INVALID); + reply = _atspi_dbus_send_with_reply_and_block (message, error); + if (reply) + dbus_message_unref (reply); } - message = dbus_message_new_method_call (atspi_bus_registry, - atspi_path_registry, - atspi_interface_registry, - "DeregisterEvent"); - if (!message) - return FALSE; - dbus_message_append_args (message, DBUS_TYPE_STRING, &event_type, DBUS_TYPE_INVALID); - reply = _atspi_dbus_send_with_reply_and_block (message, error); - if (reply) - dbus_message_unref (reply); if (!in_send) listener_entry_free (e); @@ -952,9 +959,6 @@ g_free (name); if (detail) g_free (detail); - for (i = 0; i < matchrule_array->len; i++) - g_free (g_ptr_array_index (matchrule_array, i)); - g_ptr_array_free (matchrule_array, TRUE); return TRUE; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/at-spi2-core-2.60.3/atspi/atspi-misc-private.h new/at-spi2-core-2.60.4/atspi/atspi-misc-private.h --- old/at-spi2-core-2.60.3/atspi/atspi-misc-private.h 2026-04-29 17:23:50.000000000 +0200 +++ new/at-spi2-core-2.60.4/atspi/atspi-misc-private.h 2026-05-23 15:19:40.000000000 +0200 @@ -161,4 +161,6 @@ gchar *_atspi_strdup_and_adjust_for_dbus (const char *s); gboolean _atspi_key_is_on_keypad (gint keycode); + +AtspiAccessible *_atspi_get_accessible_from_pid (pid_t pid); G_END_DECLS diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/at-spi2-core-2.60.3/atspi/atspi-misc.c new/at-spi2-core-2.60.4/atspi/atspi-misc.c --- old/at-spi2-core-2.60.3/atspi/atspi-misc.c 2026-04-29 17:23:50.000000000 +0200 +++ new/at-spi2-core-2.60.4/atspi/atspi-misc.c 2026-05-23 15:19:40.000000000 +0200 @@ -2269,3 +2269,29 @@ return dbus_server_setup_with_g_main (server, context); } #endif + +AtspiAccessible * +_atspi_get_accessible_from_pid (pid_t pid) +{ + AtspiAccessible *desktop = atspi_get_desktop (0); + gint count = atspi_accessible_get_child_count (desktop, NULL); + gint i; + guint child_pid; + + for (i = 0; i < count; i++) + { + AtspiAccessible *child = atspi_accessible_get_child_at_index (desktop, i, NULL); + if (!child) + continue; + child_pid = atspi_accessible_get_process_id (child, NULL); + if (child_pid == pid) + { + g_object_unref (desktop); + return child; + } + g_object_unref (child); + } + + g_object_unref (desktop); + return NULL; +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/at-spi2-core-2.60.3/meson.build new/at-spi2-core-2.60.4/meson.build --- old/at-spi2-core-2.60.3/meson.build 2026-04-29 17:23:50.000000000 +0200 +++ new/at-spi2-core-2.60.4/meson.build 2026-05-23 15:19:40.000000000 +0200 @@ -1,5 +1,5 @@ project('at-spi2-core', 'c', - version: '2.60.3', + version: '2.60.4', license: 'LGPLv2.1+', default_options: [ 'buildtype=debugoptimized', diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/at-spi2-core-2.60.3/po/sk.po new/at-spi2-core-2.60.4/po/sk.po --- old/at-spi2-core-2.60.3/po/sk.po 2026-04-29 17:23:50.000000000 +0200 +++ new/at-spi2-core-2.60.4/po/sk.po 2026-05-23 15:19:40.000000000 +0200 @@ -18,8 +18,8 @@ msgstr "" "Project-Id-Version: atk\n" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/at-spi2-core/issues/\n" -"POT-Creation-Date: 2026-04-11 15:09+0000\n" -"PO-Revision-Date: 2026-04-23 22:08+0200\n" +"POT-Creation-Date: 2026-04-29 15:22+0000\n" +"PO-Revision-Date: 2026-04-30 09:37+0200\n" "Last-Translator: Jose Riha <[email protected]>\n" "Language-Team: Slovak <[email protected]>\n" "Language: sk\n" @@ -82,8 +82,7 @@ # property blurb #: atk/atkobject.c:274 msgid "Object instance’s name formatted for assistive technology access" -msgstr "" -"Názov inštancie objektu naformátovaný pre zjednodušené ovládanie" +msgstr "Názov inštancie objektu naformátovaný pre zjednodušené ovládanie" # property name #: atk/atkobject.c:280 @@ -103,7 +102,8 @@ #: atk/atkobject.c:288 msgid "Parent of the current accessible as returned by atk_object_get_parent()" msgstr "" -"Rodič aktuálneho zjednodušeného ovládania tak, ako ho vracia funkcia atk_object_get_parent()" +"Rodič aktuálneho zjednodušeného ovládania tak, ako ho vracia funkcia " +"atk_object_get_parent()" # property name #: atk/atkobject.c:304 @@ -234,7 +234,6 @@ # pv: podľa mňa nie je zobrazené v UI, len pri návrhu UI. Možno zvážiť názov pre prístupnosť. Predstavujem si to ako label pre poli v aplikácii typu designer # property name #: atk/atkobject.c:440 -#| msgid "Accessible Name" msgid "Accessible ID" msgstr "ID pre zjednodušené ovládanie" @@ -243,7 +242,6 @@ msgstr "ID pre dostupnosť; užitočné pre automatizované testovanie" #: atk/atkobject.c:447 -#| msgid "text" msgid "Help text" msgstr "Pomocný text" @@ -435,11 +433,11 @@ #: atspi/atspi-misc.c:58 msgid "check box" -msgstr "zaškrtávacie pole" +msgstr "začiarkavacie pole" #: atspi/atspi-misc.c:59 msgid "check menu item" -msgstr "zaškrtávacia položka ponuky" +msgstr "začiarkavacia položka ponuky" #: atspi/atspi-misc.c:60 msgid "color chooser" @@ -582,7 +580,6 @@ msgstr "ukazovateľ priebehu" #: atspi/atspi-misc.c:95 -#| msgid "menu button" msgid "button" msgstr "tlačidlo" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/at-spi2-core-2.60.3/po/th.po new/at-spi2-core-2.60.4/po/th.po --- old/at-spi2-core-2.60.3/po/th.po 2026-04-29 17:23:50.000000000 +0200 +++ new/at-spi2-core-2.60.4/po/th.po 2026-05-23 15:19:40.000000000 +0200 @@ -8,15 +8,15 @@ msgstr "" "Project-Id-Version: atk\n" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/at-spi2-core/issues/\n" -"POT-Creation-Date: 2024-08-06 21:05+0000\n" -"PO-Revision-Date: 2024-10-01 11:49+0700\n" +"POT-Creation-Date: 2026-04-29 15:22+0000\n" +"PO-Revision-Date: 2026-04-30 22:06+0700\n" "Last-Translator: Theppitak Karoonboonyanan <[email protected]>\n" "Language-Team: Thai <[email protected]>\n" "Language: th\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 3.5\n" +"X-Generator: Poedit 3.9\n" #: atk/atkhyperlink.c:127 msgid "Selected Link" @@ -112,9 +112,11 @@ #: atk/atkobject.c:348 msgid "" -"Is used to notify that the table caption has changed; this property should not be used. accessible-table-" -"caption-object should be used instead" -msgstr "ใช้แจ้งเหตุเมื่อป้ายบรรยายตารางมีการเปลี่ยนแปลง ไม่ควรใช้ช่องข้อมูลนี้ แต่ควรใช้ accessible-table-caption-object แทน" +"Is used to notify that the table caption has changed; this property should not be used. " +"accessible-table-caption-object should be used instead" +msgstr "" +"ใช้แจ้งเหตุเมื่อป้ายบรรยายตารางมีการเปลี่ยนแปลง ไม่ควรใช้ช่องข้อมูลนี้ แต่ควรใช้ accessible-table-caption-" +"object แทน" #: atk/atkobject.c:362 msgid "Accessible Table Column Header" @@ -337,480 +339,484 @@ msgid "best" msgstr "ดีที่สุด" -#: atspi/atspi-component.c:352 atspi/atspi-misc.c:1232 atspi/atspi-value.c:123 +#: atspi/atspi-component.c:341 atspi/atspi-misc.c:1232 atspi/atspi-value.c:123 msgid "The application no longer exists" msgstr "แอปพลิเคชันไม่มีอยู่อีกต่อไปแล้ว" -#: atspi/atspi-misc.c:49 +#: atspi/atspi-misc.c:51 msgid "invalid" msgstr "ไม่ถูกต้อง" -#: atspi/atspi-misc.c:50 +#: atspi/atspi-misc.c:52 msgid "accelerator label" msgstr "ฉลากคีย์ด่วน" -#: atspi/atspi-misc.c:51 +#: atspi/atspi-misc.c:53 msgid "alert" msgstr "แจ้งเหตุ" -#: atspi/atspi-misc.c:52 +#: atspi/atspi-misc.c:54 msgid "animation" msgstr "ภาพเคลื่อนไหว" -#: atspi/atspi-misc.c:53 +#: atspi/atspi-misc.c:55 msgid "arrow" msgstr "ลูกศร" -#: atspi/atspi-misc.c:54 +#: atspi/atspi-misc.c:56 msgid "calendar" msgstr "ปฏิทิน" -#: atspi/atspi-misc.c:55 +#: atspi/atspi-misc.c:57 msgid "canvas" msgstr "ผ้าใบวาดรูป" -#: atspi/atspi-misc.c:56 +#: atspi/atspi-misc.c:58 msgid "check box" msgstr "กล่องกาเครื่องหมาย" -#: atspi/atspi-misc.c:57 +#: atspi/atspi-misc.c:59 msgid "check menu item" msgstr "รายการเมนูกาเครื่องหมาย" -#: atspi/atspi-misc.c:58 +#: atspi/atspi-misc.c:60 msgid "color chooser" msgstr "กล่องเลือกสี" -#: atspi/atspi-misc.c:59 +#: atspi/atspi-misc.c:61 msgid "column header" msgstr "หัวข้อคอลัมน์" -#: atspi/atspi-misc.c:60 +#: atspi/atspi-misc.c:62 msgid "combo box" msgstr "กล่องคอมโบ" -#: atspi/atspi-misc.c:61 +#: atspi/atspi-misc.c:63 msgid "dateeditor" msgstr "กล่องแก้ไขวันที่" -#: atspi/atspi-misc.c:62 +#: atspi/atspi-misc.c:64 msgid "desktop icon" msgstr "ไอคอนเดสก์ท็อป" -#: atspi/atspi-misc.c:63 +#: atspi/atspi-misc.c:65 msgid "desktop frame" msgstr "กรอบเดสก์ท็อป" -#: atspi/atspi-misc.c:64 +#: atspi/atspi-misc.c:66 msgid "dial" msgstr "หมุนโทรศัพท์" -#: atspi/atspi-misc.c:65 +#: atspi/atspi-misc.c:67 msgid "dialog" msgstr "กล่องโต้ตอบ" -#: atspi/atspi-misc.c:66 +#: atspi/atspi-misc.c:68 msgid "directory pane" msgstr "ช่องไดเรกทอรี" -#: atspi/atspi-misc.c:67 +#: atspi/atspi-misc.c:69 msgid "drawing area" msgstr "พื้นที่วาดรูป" -#: atspi/atspi-misc.c:68 +#: atspi/atspi-misc.c:70 msgid "file chooser" msgstr "กล่องเลือกไฟล์" -#: atspi/atspi-misc.c:69 +#: atspi/atspi-misc.c:71 msgid "filler" msgstr "ช่องเติม" #. I know it looks wrong but that is what Java returns -#: atspi/atspi-misc.c:71 +#: atspi/atspi-misc.c:73 msgid "fontchooser" msgstr "กล่องเลือกแบบอักษร" -#: atspi/atspi-misc.c:72 +#: atspi/atspi-misc.c:74 msgid "frame" msgstr "กรอบ" -#: atspi/atspi-misc.c:73 +#: atspi/atspi-misc.c:75 msgid "glass pane" msgstr "ช่องหน้าต่างแบบใส" -#: atspi/atspi-misc.c:74 +#: atspi/atspi-misc.c:76 msgid "html container" msgstr "เครื่องบรรจุ html" -#: atspi/atspi-misc.c:75 +#: atspi/atspi-misc.c:77 msgid "icon" msgstr "ไอคอน" -#: atspi/atspi-misc.c:76 +#: atspi/atspi-misc.c:78 msgid "image" msgstr "รูปภาพ" -#: atspi/atspi-misc.c:77 +#: atspi/atspi-misc.c:79 msgid "internal frame" msgstr "กรอบภายใน" -#: atspi/atspi-misc.c:78 +#: atspi/atspi-misc.c:80 msgid "label" msgstr "ป้ายชื่อ" -#: atspi/atspi-misc.c:79 +#: atspi/atspi-misc.c:81 msgid "layered pane" msgstr "ช่องหน้าต่างแบบเป็นชั้น" -#: atspi/atspi-misc.c:80 +#: atspi/atspi-misc.c:82 msgid "list" msgstr "รายชื่อ" -#: atspi/atspi-misc.c:81 +#: atspi/atspi-misc.c:83 msgid "list item" msgstr "รายการรายชื่อ" -#: atspi/atspi-misc.c:82 +#: atspi/atspi-misc.c:84 msgid "menu" msgstr "เมนู" -#: atspi/atspi-misc.c:83 +#: atspi/atspi-misc.c:85 msgid "menu bar" msgstr "แถบเมนู" -#: atspi/atspi-misc.c:84 +#: atspi/atspi-misc.c:86 msgid "menu button" msgstr "ปุ่มเมนู" -#: atspi/atspi-misc.c:85 +#: atspi/atspi-misc.c:87 msgid "menu item" msgstr "รายการเมนู" -#: atspi/atspi-misc.c:86 +#: atspi/atspi-misc.c:88 msgid "option pane" msgstr "ช่องหน้าต่างตัวเลือก" -#: atspi/atspi-misc.c:87 +#: atspi/atspi-misc.c:89 msgid "page tab" msgstr "แท็บของหน้า" -#: atspi/atspi-misc.c:88 +#: atspi/atspi-misc.c:90 msgid "page tab list" msgstr "รายการแท็บของหน้า" -#: atspi/atspi-misc.c:89 +#: atspi/atspi-misc.c:91 msgid "panel" msgstr "พาเนล" -#: atspi/atspi-misc.c:90 +#: atspi/atspi-misc.c:92 msgid "password text" msgstr "ข้อความรหัสผ่าน" -#: atspi/atspi-misc.c:91 +#: atspi/atspi-misc.c:93 msgid "popup menu" msgstr "เมนูผุดขึ้น" -#: atspi/atspi-misc.c:92 +#: atspi/atspi-misc.c:94 msgid "progress bar" msgstr "แถบบอกความคืบหน้า" -#: atspi/atspi-misc.c:93 +#: atspi/atspi-misc.c:95 msgid "button" msgstr "ปุ่ม" -#: atspi/atspi-misc.c:94 +#: atspi/atspi-misc.c:96 msgid "radio button" msgstr "ปุ่มวิทยุ" -#: atspi/atspi-misc.c:95 +#: atspi/atspi-misc.c:97 msgid "radio menu item" msgstr "รายการเมนูแบบปุ่มวิทยุ" -#: atspi/atspi-misc.c:96 +#: atspi/atspi-misc.c:98 msgid "root pane" msgstr "ช่องหลัก" -#: atspi/atspi-misc.c:97 +#: atspi/atspi-misc.c:99 msgid "row header" msgstr "หัวแถว" -#: atspi/atspi-misc.c:98 +#: atspi/atspi-misc.c:100 msgid "scroll bar" msgstr "แถบเลื่อน" -#: atspi/atspi-misc.c:99 +#: atspi/atspi-misc.c:101 msgid "scroll pane" msgstr "ช่องแถบเลื่อน" -#: atspi/atspi-misc.c:100 +#: atspi/atspi-misc.c:102 msgid "separator" msgstr "เส้นแบ่ง" -#: atspi/atspi-misc.c:101 +#: atspi/atspi-misc.c:103 msgid "slider" msgstr "ปุ่มรางเลื่อน" -#: atspi/atspi-misc.c:102 +#: atspi/atspi-misc.c:104 msgid "split pane" msgstr "กล่องแบ่งช่อง" -#: atspi/atspi-misc.c:103 +#: atspi/atspi-misc.c:105 msgid "spin button" msgstr "ปุ่มปรับเลข" -#: atspi/atspi-misc.c:104 +#: atspi/atspi-misc.c:106 msgid "statusbar" msgstr "แถบสถานะ" -#: atspi/atspi-misc.c:105 +#: atspi/atspi-misc.c:107 +msgid "switch" +msgstr "สวิตช์" + +#: atspi/atspi-misc.c:108 msgid "table" msgstr "ตาราง" -#: atspi/atspi-misc.c:106 +#: atspi/atspi-misc.c:109 msgid "table cell" msgstr "เซลล์ตาราง" -#: atspi/atspi-misc.c:107 +#: atspi/atspi-misc.c:110 msgid "table column header" msgstr "หัวคอลัมน์ของตาราง" -#: atspi/atspi-misc.c:108 +#: atspi/atspi-misc.c:111 msgid "table row header" msgstr "หัวแถวของตาราง" -#: atspi/atspi-misc.c:109 +#: atspi/atspi-misc.c:112 msgid "tear off menu item" msgstr "รายการเมนูฉีกออก" -#: atspi/atspi-misc.c:110 +#: atspi/atspi-misc.c:113 msgid "terminal" msgstr "เทอร์มินัล" -#: atspi/atspi-misc.c:111 +#: atspi/atspi-misc.c:114 msgid "text" msgstr "ข้อความ" -#: atspi/atspi-misc.c:112 +#: atspi/atspi-misc.c:115 msgid "toggle button" msgstr "ปุ่มสลับค่า" -#: atspi/atspi-misc.c:113 +#: atspi/atspi-misc.c:116 msgid "tool bar" msgstr "แถบเครื่องมือ" -#: atspi/atspi-misc.c:114 +#: atspi/atspi-misc.c:117 msgid "tool tip" msgstr "คำแนะนำเครื่องมือ" -#: atspi/atspi-misc.c:115 +#: atspi/atspi-misc.c:118 msgid "tree" msgstr "ต้นไม้" -#: atspi/atspi-misc.c:116 +#: atspi/atspi-misc.c:119 msgid "tree table" msgstr "ตารางแบบต้นไม้" -#: atspi/atspi-misc.c:117 +#: atspi/atspi-misc.c:120 msgid "unknown" msgstr "ไม่ทราบ" -#: atspi/atspi-misc.c:118 +#: atspi/atspi-misc.c:121 msgid "viewport" msgstr "ช่องมอง" -#: atspi/atspi-misc.c:119 +#: atspi/atspi-misc.c:122 msgid "window" msgstr "หน้าต่าง" -#: atspi/atspi-misc.c:120 +#: atspi/atspi-misc.c:123 msgid "header" msgstr "หัวกระดาษ" -#: atspi/atspi-misc.c:121 +#: atspi/atspi-misc.c:124 msgid "footer" msgstr "ท้ายกระดาษ" -#: atspi/atspi-misc.c:122 +#: atspi/atspi-misc.c:125 msgid "paragraph" msgstr "ย่อหน้า" -#: atspi/atspi-misc.c:123 +#: atspi/atspi-misc.c:126 msgid "ruler" msgstr "ไม้บรรทัด" -#: atspi/atspi-misc.c:124 +#: atspi/atspi-misc.c:127 msgid "application" msgstr "โปรแกรม" -#: atspi/atspi-misc.c:125 +#: atspi/atspi-misc.c:128 msgid "autocomplete" msgstr "เติมเต็มคำอัตโนมัติ" -#: atspi/atspi-misc.c:126 +#: atspi/atspi-misc.c:129 msgid "edit bar" msgstr "แถบแก้ไข" -#: atspi/atspi-misc.c:127 +#: atspi/atspi-misc.c:130 msgid "embedded component" msgstr "องค์ประกอบฝังตัว" -#: atspi/atspi-misc.c:128 +#: atspi/atspi-misc.c:131 msgid "entry" msgstr "ช่องป้อนข้อความ" -#: atspi/atspi-misc.c:129 +#: atspi/atspi-misc.c:132 msgid "chart" msgstr "แผนภูมิ" -#: atspi/atspi-misc.c:130 +#: atspi/atspi-misc.c:133 msgid "caption" msgstr "ป้ายบรรยาย" -#: atspi/atspi-misc.c:131 +#: atspi/atspi-misc.c:134 msgid "document frame" msgstr "กรอบเอกสาร" -#: atspi/atspi-misc.c:132 +#: atspi/atspi-misc.c:135 msgid "heading" msgstr "หัวข้อเรื่อง" -#: atspi/atspi-misc.c:133 +#: atspi/atspi-misc.c:136 msgid "page" msgstr "หน้า" -#: atspi/atspi-misc.c:134 +#: atspi/atspi-misc.c:137 msgid "section" msgstr "หัวข้อ" -#: atspi/atspi-misc.c:135 +#: atspi/atspi-misc.c:138 msgid "redundant object" msgstr "ออบเจกต์ส่วนเกิน" -#: atspi/atspi-misc.c:136 +#: atspi/atspi-misc.c:139 msgid "form" msgstr "แบบฟอร์ม" -#: atspi/atspi-misc.c:137 +#: atspi/atspi-misc.c:140 msgid "link" msgstr "ลิงก์" -#: atspi/atspi-misc.c:138 +#: atspi/atspi-misc.c:141 msgid "input method window" msgstr "หน้าต่างวิธีป้อนข้อความ" -#: atspi/atspi-misc.c:139 +#: atspi/atspi-misc.c:142 msgid "table row" msgstr "แถวของตาราง" -#: atspi/atspi-misc.c:140 +#: atspi/atspi-misc.c:143 msgid "tree item" msgstr "รายการในต้นไม้" -#: atspi/atspi-misc.c:141 +#: atspi/atspi-misc.c:144 msgid "document spreadsheet" msgstr "เอกสารตารางคำนวณ" -#: atspi/atspi-misc.c:142 +#: atspi/atspi-misc.c:145 msgid "document presentation" msgstr "เอกสารงานนำเสนอ" -#: atspi/atspi-misc.c:143 +#: atspi/atspi-misc.c:146 msgid "document text" msgstr "เอกสารข้อความ" -#: atspi/atspi-misc.c:144 +#: atspi/atspi-misc.c:147 msgid "document web" msgstr "เอกสารเว็บ" -#: atspi/atspi-misc.c:145 +#: atspi/atspi-misc.c:148 msgid "document email" msgstr "เอกสารอีเมล" -#: atspi/atspi-misc.c:146 +#: atspi/atspi-misc.c:149 msgid "comment" msgstr "หมายเหตุ" -#: atspi/atspi-misc.c:147 +#: atspi/atspi-misc.c:150 msgid "list box" msgstr "กล่องรายการ" -#: atspi/atspi-misc.c:148 +#: atspi/atspi-misc.c:151 msgid "grouping" msgstr "การจัดกลุ่ม" -#: atspi/atspi-misc.c:149 +#: atspi/atspi-misc.c:152 msgid "image map" msgstr "แผนที่ในรูปภาพ" -#: atspi/atspi-misc.c:150 +#: atspi/atspi-misc.c:153 msgid "notification" msgstr "การแจ้งเหตุ" -#: atspi/atspi-misc.c:151 +#: atspi/atspi-misc.c:154 msgid "info bar" msgstr "แถบข้อมูล" -#: atspi/atspi-misc.c:152 +#: atspi/atspi-misc.c:155 msgid "level bar" msgstr "แถบระดับ" -#: atspi/atspi-misc.c:153 +#: atspi/atspi-misc.c:156 msgid "title bar" msgstr "แถบชื่อ" -#: atspi/atspi-misc.c:154 +#: atspi/atspi-misc.c:157 msgid "block quote" msgstr "ข้อความอ้างอิง" -#: atspi/atspi-misc.c:155 +#: atspi/atspi-misc.c:158 msgid "audio" msgstr "เสียง" -#: atspi/atspi-misc.c:156 +#: atspi/atspi-misc.c:159 msgid "video" msgstr "วิดีโอ" -#: atspi/atspi-misc.c:157 +#: atspi/atspi-misc.c:160 msgid "definition" msgstr "ความคมชัด" -#: atspi/atspi-misc.c:158 +#: atspi/atspi-misc.c:161 msgid "article" msgstr "บทความ" -#: atspi/atspi-misc.c:159 +#: atspi/atspi-misc.c:162 msgid "landmark" msgstr "ตำแหน่งสำคัญ" -#: atspi/atspi-misc.c:160 +#: atspi/atspi-misc.c:163 msgid "log" msgstr "ปูมบันทึก" -#: atspi/atspi-misc.c:161 +#: atspi/atspi-misc.c:164 msgid "marquee" msgstr "ตัวอักษรวิ่ง" -#: atspi/atspi-misc.c:162 +#: atspi/atspi-misc.c:165 msgid "math" msgstr "คณิตศาสตร์" -#: atspi/atspi-misc.c:163 +#: atspi/atspi-misc.c:166 msgid "rating" msgstr "การจัดระดับ" -#: atspi/atspi-misc.c:164 +#: atspi/atspi-misc.c:167 msgid "timer" msgstr "เวลานับถอยหลัง" -#: atspi/atspi-misc.c:165 +#: atspi/atspi-misc.c:168 msgid "description list" msgstr "รายชื่อคำอธิบาย" -#: atspi/atspi-misc.c:166 +#: atspi/atspi-misc.c:169 msgid "description term" msgstr "คำบอกรายละเอียด" -#: atspi/atspi-misc.c:167 +#: atspi/atspi-misc.c:170 msgid "description value" msgstr "ค่าของคำอธิบาย" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/at-spi2-core-2.60.3/registryd/registry.c new/at-spi2-core-2.60.4/registryd/registry.c --- old/at-spi2-core-2.60.3/registryd/registry.c 2026-04-29 17:23:50.000000000 +0200 +++ new/at-spi2-core-2.60.4/registryd/registry.c 2026-05-23 15:19:40.000000000 +0200 @@ -314,7 +314,7 @@ } static void -remove_events (SpiRegistry *registry, const char *bus_name, const char *event) +remove_events (SpiRegistry *registry, const char *bus_name, const char *event, const char *app) { gchar **remove_data; GList *list; @@ -332,6 +332,7 @@ EventData *evdata = list->data; list = list->next; if (!g_strcmp0 (evdata->listener_bus_name, bus_name) && + (!event[0] || !g_strcmp0 (evdata->app_bus_name, app)) && event_is_subtype (evdata->data, remove_data)) { g_strfreev (evdata->data); @@ -387,7 +388,7 @@ } } - remove_events (registry, old, ""); + remove_events (registry, old, "", ""); } } } @@ -1050,13 +1051,27 @@ const char *orig_name; gchar *name; const char *sender = dbus_message_get_sender (message); + const char *signature = dbus_message_get_signature (message); + const char *app; - if (!dbus_message_get_args (message, NULL, DBUS_TYPE_STRING, &orig_name, - DBUS_TYPE_INVALID)) + if (strcmp (signature, "s") == 0) + { + dbus_message_get_args (message, NULL, DBUS_TYPE_STRING, &orig_name, + DBUS_TYPE_INVALID); + app = ""; + } + else if (strcmp (signature, "ss") == 0) + { + dbus_message_get_args (message, NULL, DBUS_TYPE_STRING, &orig_name, + DBUS_TYPE_STRING, &app, + DBUS_TYPE_INVALID); + } + else return NULL; + name = ensure_proper_format (orig_name); - remove_events (registry, sender, name); + remove_events (registry, sender, name, app); g_free (name); return dbus_message_new_method_return (message); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/at-spi2-core-2.60.3/xml/Registry.xml new/at-spi2-core-2.60.4/xml/Registry.xml --- old/at-spi2-core-2.60.3/xml/Registry.xml 2026-04-29 17:23:50.000000000 +0200 +++ new/at-spi2-core-2.60.4/xml/Registry.xml 2026-05-23 15:19:40.000000000 +0200 @@ -59,12 +59,17 @@ deregistered. See RegisterEvent for a description of the format of this string. + @app_bus_name: The application that this request pertains to. + If the event listener was registered only for a certain application, + then the value passed should matched the app_bus_name passed for the + corresponding RegisterEvent call. + Indicates that an AT is no longer interested in listening to a particular event. - TODO: Add app_bus_name here. --> <method name="DeregisterEvent"> <arg direction="in" name="event" type="s"/> + <arg direction="in" name="app_bus_name" type="s"/> </method> <!-- ++++++ at-spi2-core.obsinfo ++++++ --- /var/tmp/diff_new_pack.k83LyA/_old 2026-05-30 22:56:11.427485104 +0200 +++ /var/tmp/diff_new_pack.k83LyA/_new 2026-05-30 22:56:11.435485432 +0200 @@ -1,5 +1,5 @@ name: at-spi2-core -version: 2.60.3 -mtime: 1777476230 -commit: d2c5f8a4663c286eb927a6e4ed799135fcaf3018 +version: 2.60.4 +mtime: 1779542380 +commit: 533995e24ec8a3e32cda623dfc79f38aea83bd25 ++++++ build.specials.obscpio ++++++ ++++++ build.specials.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/.gitignore new/.gitignore --- old/.gitignore 1970-01-01 01:00:00.000000000 +0100 +++ new/.gitignore 2026-05-23 16:44:36.000000000 +0200 @@ -0,0 +1,5 @@ +*.obscpio +*.osc +_build.* +.pbuild +osc-collab.*
