Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package waycheck for openSUSE:Factory 
checked in at 2025-06-30 13:04:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/waycheck (Old)
 and      /work/SRC/openSUSE:Factory/.waycheck.new.7067 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "waycheck"

Mon Jun 30 13:04:41 2025 rev:14 rq:1288910 version:1.7.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/waycheck/waycheck.changes        2025-02-20 
16:38:15.332712111 +0100
+++ /work/SRC/openSUSE:Factory/.waycheck.new.7067/waycheck.changes      
2025-06-30 13:06:06.404961920 +0200
@@ -1,0 +2,12 @@
+Sat Jun 28 02:09:16 UTC 2025 - Neal Gompa <ngo...@opensuse.org>
+
+- Update to 1.7.0
+  + Add Phosh's protocols 📱
+  + Update upstream protocols to v1.45
+  + Make Compositor text mouse-selectable
+  + Fix text-input-unstable-v3 detection
+  + Move unknown compositor tooltip to a dedicated button
+  + Rename 'Treeland' to 'Deepin'
+  + (a11y) Resolve table-related tab navigation issues
+
+-------------------------------------------------------------------

Old:
----
  waycheck-v1.6.0.tar.gz

New:
----
  waycheck-v1.7.0.tar.gz

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

Other differences:
------------------
++++++ waycheck.spec ++++++
--- /var/tmp/diff_new_pack.SLNirZ/_old  2025-06-30 13:06:07.325000039 +0200
+++ /var/tmp/diff_new_pack.SLNirZ/_new  2025-06-30 13:06:07.325000039 +0200
@@ -19,8 +19,8 @@
 %global qt6_minver 6.5
 
 Name:           waycheck
-Version:        1.6.0
-Release:        0
+Version:        1.7.0
+Release:        1%{?dist}
 Summary:        GUI that displays protocols implemented by a Wayland compositor
 
 License:        Apache-2.0

++++++ waycheck-v1.6.0.tar.gz -> waycheck-v1.7.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/waycheck-v1.6.0/README.md 
new/waycheck-v1.7.0/README.md
--- old/waycheck-v1.6.0/README.md       2025-02-19 04:55:46.000000000 +0100
+++ new/waycheck-v1.7.0/README.md       2025-06-27 21:43:51.000000000 +0200
@@ -1,4 +1,9 @@
-# Waycheck
+# <img src="resources/dev.serebit.Waycheck.svg" alt="Magothy logo" width="24" 
style="position: relative; top: 6px;"/> Waycheck
+
+[![Latest 
release](https://gitlab.freedesktop.org/serebit/waycheck/-/badges/release.svg)](https://gitlab.freedesktop.org/serebit/waycheck/-/releases)
+[![Flathub](https://img.shields.io/flathub/v/dev.serebit.Waycheck)](https://flathub.org/apps/dev.serebit.Waycheck)
+[![Pipeline 
status](https://gitlab.freedesktop.org/serebit/waycheck/badges/main/pipeline.svg)](https://gitlab.freedesktop.org/serebit/waycheck/-/pipelines)
+[![REUSE 
status](https://api.reuse.software/badge/gitlab.freedesktop.org/serebit/waycheck)](https://api.reuse.software/info/gitlab.freedesktop.org/serebit/waycheck)
 
 Waycheck is a simple Qt6 application that displays all of the Wayland 
protocols that your compositor supports, and all of the protocols that it 
doesn't support. It can be used to compare protocol support between 
compositors, or if you're working on your own compositor, to keep track of 
which protocols you still need to implement.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/waycheck-v1.6.0/meson.build 
new/waycheck-v1.7.0/meson.build
--- old/waycheck-v1.6.0/meson.build     2025-02-19 04:55:46.000000000 +0100
+++ new/waycheck-v1.7.0/meson.build     2025-06-27 21:43:51.000000000 +0200
@@ -1,7 +1,7 @@
 project(
     'waycheck',
     'cpp',
-    version: '1.6.0',
+    version: '1.7.0',
     license: 'Apache-2.0',
     meson_version: '>= 0.59.0',
     default_options: ['cpp_std=c++20', 'warning_level=3'],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/waycheck-v1.6.0/resources/dev.serebit.Waycheck.metainfo.xml 
new/waycheck-v1.7.0/resources/dev.serebit.Waycheck.metainfo.xml
--- old/waycheck-v1.6.0/resources/dev.serebit.Waycheck.metainfo.xml     
2025-02-19 04:55:46.000000000 +0100
+++ new/waycheck-v1.7.0/resources/dev.serebit.Waycheck.metainfo.xml     
2025-06-27 21:43:51.000000000 +0200
@@ -65,6 +65,20 @@
   </screenshots>
 
   <releases>
+    <release version="1.7.0" date="2025-06-27">
+      
<url>https://gitlab.freedesktop.org/serebit/waycheck/-/releases/v1.7.0</url>
+      <description>
+        <ul>
+          <li>Update upstream protocol list to v1.45</li>
+          <li>Add Phosh protocols 📱</li>
+          <li>Rename Treeland to Deepin</li>
+          <li>Make "Compositor" text mouse-selectable</li>
+          <li>Fix detection of the text-input-unstable-v3 protocol</li>
+          <li>Move unknown-compositor tooltip to a dedicated button</li>
+          <li>Resolve table-related tab-key navigation issues</li>
+        </ul>
+      </description>
+    </release>
     <release version="1.6.0" date="2025-02-18">
       
<url>https://gitlab.freedesktop.org/serebit/waycheck/-/releases/v1.6.0</url>
       <description>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/waycheck-v1.6.0/src/protocols.cpp 
new/waycheck-v1.7.0/src/protocols.cpp
--- old/waycheck-v1.6.0/src/protocols.cpp       2025-02-19 04:55:46.000000000 
+0100
+++ new/waycheck-v1.7.0/src/protocols.cpp       2025-06-27 21:43:51.000000000 
+0200
@@ -3,6 +3,11 @@
 #include <ranges>
 
 ProtocolStore::ProtocolStore() noexcept {
+    // The format for this table is as follows:
+    // add({ProtocolSource, ProtocolStatus, "Protocol common name", 
"protocol-xml-file-name"}, {"server_global_name_1", ...});
+    // Any and all globals that would be exposed by the Wayland SERVER must be 
added.
+    // Client-side globals must be excluded.
+
     // clang-format off
     add({UPSTREAM, STABLE, "Linux DMA-BUF", "linux-dmabuf-v1"}, 
{"zwp_linux_dmabuf_v1"});
     add({UPSTREAM, STABLE, "Presentation time", "presentation-time"}, 
{"wp_presentation"});
@@ -12,11 +17,13 @@
 
     add({UPSTREAM, STAGING, "Color management", "color-management-v1"}, 
{"wp_color_manager_v1"});
     add({UPSTREAM, STAGING, "Alpha modifier", "alpha-modifier-v1"}, 
{"wp_alpha_modifier_v1"});
+    add({UPSTREAM, STAGING, "Color representation", 
"color-representation-v1"}, {"wp_color_representation_manager_v1"});
     add({UPSTREAM, STAGING, "Commit timing", "commit-timing-v1"}, 
{"wp_commit_timing_manager_v1"});
     add({UPSTREAM, STAGING, "Content type hint", "content-type-v1"}, 
{"wp_content_type_manager_v1"});
     add({UPSTREAM, STAGING, "Cursor shape", "cursor-shape-v1"}, 
{"wp_cursor_shape_manager_v1"});
     add({UPSTREAM, STAGING, "Data control", "ext-data-control-v1"}, 
{"ext_data_control_manager_v1"});
     add({UPSTREAM, STAGING, "DRM lease", "drm-lease-v1"}, 
{"wp_drm_lease_device_v1"});
+    add({UPSTREAM, STAGING, "Background effect", "ext-background-effect-v1"}, 
{"ext_background_effect_manager_v1"});
     add({UPSTREAM, STAGING, "FIFO", "fifo-v1"}, {"wp_fifo_manager_v1"});
     add({UPSTREAM, STAGING, "Image capture source", 
"ext-image-capture-source-v1"}, {"ext_output_image_capture_source_manager_v1", 
"ext_foreign_toplevel_image_capture_source_manager_v1"});
     add({UPSTREAM, STAGING, "Image copy capture", 
"ext-image-copy-capture-v1"}, {"ext_image_copy_capture_manager_v1"});
@@ -24,6 +31,7 @@
     add({UPSTREAM, STAGING, "Fractional scale", "fractional-scale-v1"}, 
{"wp_fractional_scale_manager_v1"});
     add({UPSTREAM, STAGING, "Idle notify", "ext-idle-notify-v1"}, 
{"ext_idle_notifier_v1"});
     add({UPSTREAM, STAGING, "Linux DRM syncobj", "linux-drm-syncobj-v1"}, 
{"wp_linux_drm_syncobj_manager_v1"});
+    add({UPSTREAM, STAGING, "Pointer warp", "pointer-warp-v1"}, 
{"wp_pointer_warp_v1"});
     add({UPSTREAM, STAGING, "Security context", "security-context-v1"}, 
{"wp_security_context_manager_v1"});
     add({UPSTREAM, STAGING, "Session lock", "ext-session-lock-v1"}, 
{"ext_session_lock_manager_v1"});
     add({UPSTREAM, STAGING, "Single-pixel buffer", "single-pixel-buffer-v1"}, 
{"wp_single_pixel_buffer_manager_v1"});
@@ -35,6 +43,7 @@
     add({UPSTREAM, STAGING, "XDG system bell", "xdg-system-bell-v1"}, 
{"xdg_system_bell_v1"});
     add({UPSTREAM, STAGING, "XDG toplevel drag", "xdg-toplevel-drag-v1"}, 
{"xdg_toplevel_drag_manager_v1"});
     add({UPSTREAM, STAGING, "XDG toplevel icon", "xdg-toplevel-icon-v1"}, 
{"xdg_toplevel_icon_manager_v1"});
+    add({UPSTREAM, STAGING, "XDG toplevel tag", "xdg-toplevel-tag-v1"}, 
{"xdg_toplevel_tag_manager_v1"});
     add({UPSTREAM, STAGING, "Xwayland shell", "xwayland-shell-v1"}, 
{"xwayland_shell_v1"});
 
     add({UPSTREAM, UNSTABLE, "Fullscreen shell", 
"fullscreen-shell-unstable-v1"}, {"zwp_fullscreen_shell_v1"});
@@ -47,7 +56,7 @@
     add({UPSTREAM, UNSTABLE, "Pointer gestures", 
"pointer-gestures-unstable-v1"}, {"zwp_pointer_gestures_v1"});
     add({UPSTREAM, UNSTABLE, "Primary selection", 
"primary-selection-unstable-v1"}, {"zwp_primary_selection_device_manager_v1"});
     add({UPSTREAM, UNSTABLE, "Relative pointer", 
"relative-pointer-unstable-v1"}, {"zwp_relative_pointer_manager_v1"});
-    add({UPSTREAM, UNSTABLE, "Text input", "text-input-unstable-v3"}, 
{"zwp_text_input_v3"});
+    add({UPSTREAM, UNSTABLE, "Text input", "text-input-unstable-v3"}, 
{"zwp_text_input_manager_v3"});
     add({UPSTREAM, UNSTABLE, "XDG decoration", "xdg-decoration-unstable-v1"}, 
{"zxdg_decoration_manager_v1"});
     add({UPSTREAM, UNSTABLE, "XDG foreign v1", "xdg-foreign-unstable-v1"}, 
{"zxdg_importer_v1", "zxdg_exporter_v1"});
     add({UPSTREAM, UNSTABLE, "XDG foreign v2", "xdg-foreign-unstable-v2"}, 
{"zxdg_importer_v2", "zxdg_exporter_v2"});
@@ -117,15 +126,15 @@
     add({CHROMEOS, NONE, "Overlay prioritizer", "overlay-prioritizer"}, 
{"overlay_prioritizer"});
     add({CHROMEOS, NONE, "Surface augmenter", "surface-augmenter"}, 
{"surface_augmenter"});
 
-    add({TREELAND, NONE, "Capture", "treeland-capture-unstable-v1"}, 
{"treeland_capture_session_v1"});
-    add({TREELAND, NONE, "DDE shell", "treeland-dde-shell-v1"}, 
{"treeland_dde_shell_manager_v1"});
-    add({TREELAND, NONE, "Foreign toplevel manager", 
"treeland-foreign-toplevel-manager-v1"}, 
{"treeland_foreign_toplevel_manager_v1"});
-    add({TREELAND, NONE, "Output manager", "treeland-output-manager-v1"}, 
{"treeland_output_manager_v1"});
-    add({TREELAND, NONE, "Personalization manager", 
"treeland-personalization-manager-v1"}, 
{"treeland_personalization_manager_v1"});
-    add({TREELAND, NONE, "Shortcut manager", "treeland-shortcut-manager-v1"}, 
{"treeland_shortcut_manager_v1"});
-    add({TREELAND, NONE, "Virtual output manager", 
"treeland-virtual-output-manager-v1"}, {"treeland_virtual_output_manager_v1"});
-    add({TREELAND, NONE, "Wallpaper color", "treeland-wallpaper-color-v1"}, 
{"treeland_wallpaper_color_manager_v1"});
-    add({TREELAND, NONE, "Window management", 
"treeland-window-management-v1"}, {"treeland_window_management_v1"});
+    add({DEEPIN, NONE, "Capture", "treeland-capture-unstable-v1"}, 
{"treeland_capture_session_v1"});
+    add({DEEPIN, NONE, "DDE shell", "treeland-dde-shell-v1"}, 
{"treeland_dde_shell_manager_v1"});
+    add({DEEPIN, NONE, "Foreign toplevel manager", 
"treeland-foreign-toplevel-manager-v1"}, 
{"treeland_foreign_toplevel_manager_v1"});
+    add({DEEPIN, NONE, "Output manager", "treeland-output-manager-v1"}, 
{"treeland_output_manager_v1"});
+    add({DEEPIN, NONE, "Personalization manager", 
"treeland-personalization-manager-v1"}, 
{"treeland_personalization_manager_v1"});
+    add({DEEPIN, NONE, "Shortcut manager", "treeland-shortcut-manager-v1"}, 
{"treeland_shortcut_manager_v1"});
+    add({DEEPIN, NONE, "Virtual output manager", 
"treeland-virtual-output-manager-v1"}, {"treeland_virtual_output_manager_v1"});
+    add({DEEPIN, NONE, "Wallpaper color", "treeland-wallpaper-color-v1"}, 
{"treeland_wallpaper_color_manager_v1"});
+    add({DEEPIN, NONE, "Window management", "treeland-window-management-v1"}, 
{"treeland_window_management_v1"});
 
     add({FROG, NONE, "Frog color management", "frog-color-management-v1"}, 
{"frog_color_management_factory_v1"});
     add({FROG, NONE, "Frog FIFO constraints", "frog-fifo-v1"}, 
{"frog_fifo_manager_v1"});
@@ -135,6 +144,10 @@
     add({GAMESCOPE, NONE, "Gamescope PipeWire", "gamescope-pipewire"}, 
{"gamescope_pipewire"});
     add({GAMESCOPE, NONE, "Gamescope reshade", "gamescope-reshade"}, 
{"gamescope_reshade"});
     add({GAMESCOPE, NONE, "Gamescope swapchain", "gamescope-swapchain"}, 
{"gamescope_swapchain_factory_v2"});
+
+    add({PHOSH, NONE, "Phoc device state", "phoc-device-state-v1"}, 
{"zphoc_device_state_v1"});
+    add({PHOSH, NONE, "Phoc layer shell effects", 
"phoc-layer-shell-effects-v1"}, {"zphoc_layer_shell_effects_v1"});
+    add({PHOSH, NONE, "Phosh private", "phosh-private"}, {"phosh_private"});
     // clang-format on
 }
 
@@ -182,12 +195,14 @@
             return "Weston";
         case CHROMEOS:
             return "ChromeOS";
-        case TREELAND:
-            return "Treeland";
+        case DEEPIN:
+            return "Deepin";
         case FROG:
             return "Frog";
         case GAMESCOPE:
             return "Gamescope";
+        case PHOSH:
+            return "Phosh";
         default:
             return "Unknown";
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/waycheck-v1.6.0/src/protocols.hpp 
new/waycheck-v1.7.0/src/protocols.hpp
--- old/waycheck-v1.6.0/src/protocols.hpp       2025-02-19 04:55:46.000000000 
+0100
+++ new/waycheck-v1.7.0/src/protocols.hpp       2025-06-27 21:43:51.000000000 
+0200
@@ -21,9 +21,10 @@
     COSMIC,
     WESTON,
     CHROMEOS,
-    TREELAND,
+    DEEPIN,
     FROG,
     GAMESCOPE,
+    PHOSH,
 };
 
 struct Protocol {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/waycheck-v1.6.0/src/window.cpp 
new/waycheck-v1.7.0/src/window.cpp
--- old/waycheck-v1.6.0/src/window.cpp  2025-02-19 04:55:46.000000000 +0100
+++ new/waycheck-v1.7.0/src/window.cpp  2025-06-27 21:43:51.000000000 +0200
@@ -64,9 +64,10 @@
     initTable(COSMIC, *ui->cosmicTable);
     initTable(WESTON, *ui->westonTable);
     initTable(CHROMEOS, *ui->chromeosTable);
-    initTable(TREELAND, *ui->treelandTable);
+    initTable(DEEPIN, *ui->deepinTable);
     initTable(FROG, *ui->frogTable);
     initTable(GAMESCOPE, *ui->gamescopeTable);
+    initTable(PHOSH, *ui->phoshTable);
     initTable(UNKNOWN, *ui->unknownTable);
 
     for (auto* protocol : store.getProtocols()) {
@@ -75,7 +76,7 @@
 
     ui->upstreamTable->sortByColumn(1, Qt::AscendingOrder);
     for (auto* table :
-        {ui->upstreamTable, ui->wlrootsTable, ui->kdeTable, ui->cosmicTable, 
ui->westonTable, ui->chromeosTable, ui->frogTable, ui->gamescopeTable}) {
+        {ui->upstreamTable, ui->wlrootsTable, ui->kdeTable, ui->cosmicTable, 
ui->westonTable, ui->chromeosTable, ui->frogTable, ui->gamescopeTable, 
ui->phoshTable}) {
         table->sortByColumn(0, Qt::AscendingOrder);
     }
 
@@ -93,21 +94,29 @@
     // Toolbar components
     auto* compositor = new QLabel(ui->toolbar);
     compositor->setText(QString::asprintf("Compositor: %s", pname.c_str()));
-    if (pname == "Unknown (Sandboxed)") {
-        compositor->setToolTip(
-            "When Waycheck runs in a sandbox, such as Flatpak or Snap, "
-            "it has no way to determine the process name of the Wayland 
server.");
-    } else if (pname == "Unknown") {
-        compositor->setToolTip(
-            "Waycheck could not determine the process name of the Wayland 
server. "
-            "If you're seeing this, please report the issue on our Freedesktop 
GitLab repository.");
-    }
+    compositor->setTextInteractionFlags(Qt::TextSelectableByMouse);
     compositor->setContentsMargins(4, 0, 0, 0);
     QFont font = compositor->font();
     font.setPointSize(14);
     compositor->setFont(font);
     ui->toolbar->addWidget(compositor);
 
+    std::optional<std::string> helpText = std::nullopt;
+    if (pname == "Unknown (Sandboxed)") {
+        helpText = {"<nobr>When Waycheck runs in a sandbox, such as</nobr> 
Flatpak or Snap, "
+            "it has no way to determine the process name of the Wayland 
server."};
+    } else if (pname == "Unknown") {
+        helpText = {"<nobr>Waycheck could not determine the process</nobr> 
name of the Wayland server. "
+            "If you're seeing this message, please report the issue on our 
Freedesktop GitLab repository."};
+    }
+
+    if (helpText.has_value()) {
+        auto* action = new QAction();
+        
action->setIcon(QIcon::fromTheme(QStringLiteral("help-contextual-symbolic")));
+        action->setToolTip(QString::fromStdString(helpText.value()));
+        ui->toolbar->addAction(action);
+    }
+
     auto* spacer = new QWidget(ui->toolbar);
     spacer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
     ui->toolbar->addWidget(spacer);
@@ -224,6 +233,7 @@
     table.setEditTriggers(QAbstractItemView::NoEditTriggers);
     table.setSelectionMode(QAbstractItemView::SingleSelection);
     table.verticalHeader()->setVisible(false);
+    table.setTabKeyNavigation(false);
     table.setItemDelegate(new TableItemDelegate);
     table.setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded);
 
@@ -244,6 +254,16 @@
     connect(model->filteredModel, &QSortFilterProxyModel::rowsInserted, 
resizeColumns);
     connect(model->filteredModel, &QSortFilterProxyModel::rowsRemoved, 
resizeColumns);
 
+    // only allow focus on the currently selected tab
+    connect(ui->toolBox, &QTabWidget::currentChanged, [this, &table](const int 
index) {
+        const int this_index = ui->toolBox->indexOf(&table);
+        if (index == this_index) {
+            table.setFocusPolicy(Qt::StrongFocus);
+        } else {
+            table.setFocusPolicy(Qt::NoFocus);
+        }
+    });
+
     // Set tab title
     auto titleTab = [this, model, &table](bool filtering) {
         const int index = ui->toolBox->indexOf(&table);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/waycheck-v1.6.0/src/window.ui 
new/waycheck-v1.7.0/src/window.ui
--- old/waycheck-v1.6.0/src/window.ui   2025-02-19 04:55:46.000000000 +0100
+++ new/waycheck-v1.7.0/src/window.ui   2025-06-27 21:43:51.000000000 +0200
@@ -64,9 +64,10 @@
       <widget class="QTableView" name="cosmicTable"/>
       <widget class="QTableView" name="westonTable"/>
       <widget class="QTableView" name="chromeosTable"/>
-      <widget class="QTableView" name="treelandTable"/>
+      <widget class="QTableView" name="deepinTable"/>
       <widget class="QTableView" name="frogTable"/>
       <widget class="QTableView" name="gamescopeTable"/>
+      <widget class="QTableView" name="phoshTable"/>
       <widget class="QTableView" name="unknownTable"/>
      </widget>
     </item>

Reply via email to