Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package niri for openSUSE:Factory checked in 
at 2024-11-13 15:29:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/niri (Old)
 and      /work/SRC/openSUSE:Factory/.niri.new.2017 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "niri"

Wed Nov 13 15:29:43 2024 rev:8 rq:1223917 version:0.1.10.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/niri/niri.changes        2024-11-11 
13:44:06.656760204 +0100
+++ /work/SRC/openSUSE:Factory/.niri.new.2017/niri.changes      2024-11-13 
15:30:11.274040700 +0100
@@ -1,0 +2,11 @@
+Wed Nov 13 11:04:01 UTC 2024 - Muhammad Akbar Yanuar Mantari <mantari...@pm.me>
+
+- Update to version 0.1.10.1:
+  * Fixed scrolling not working when the mouse {} or touchpad {}
+    section is omitted from the config file.
+  * Made the mouse cursor show up on scroll which makes scrolling
+    work when the cursor was hidden.
+  * Fixed a crash when holding Space in the screenshot UI.
+  * Bound touch-dragging with held Mod to interactive window move.
+
+-------------------------------------------------------------------

Old:
----
  niri-0.1.10.tar.gz

New:
----
  niri-0.1.10.1.tar.gz

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

Other differences:
------------------
++++++ niri.spec ++++++
--- /var/tmp/diff_new_pack.SDDWo8/_old  2024-11-13 15:30:11.870065618 +0100
+++ /var/tmp/diff_new_pack.SDDWo8/_new  2024-11-13 15:30:11.874065785 +0100
@@ -18,13 +18,13 @@
 
 %bcond_without test
 Name:           niri
-Version:        0.1.10
+Version:        0.1.10.1
 Release:        0
 Summary:        Scrollable-tiling Wayland compositor
 License:        GPL-3.0-or-later
 URL:            https://github.com/YaLTeR/niri
 Source0:        %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
-Source1:        
%{url}/releases/download/v%{version}/niri-%{version}-vendored-dependencies.tar.xz
+Source1:        
%{url}/releases/download/v0.1.10/niri-0.1.10-vendored-dependencies.tar.xz
 Source2:        cargo_config
 BuildRequires:  cargo-packaging
 BuildRequires:  clang

++++++ niri-0.1.10.tar.gz -> niri-0.1.10.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/niri-0.1.10/Cargo.lock new/niri-0.1.10.1/Cargo.lock
--- old/niri-0.1.10/Cargo.lock  2024-11-09 15:57:52.000000000 +0100
+++ new/niri-0.1.10.1/Cargo.lock        2024-11-13 08:39:54.000000000 +0100
@@ -2390,7 +2390,7 @@
 
 [[package]]
 name = "niri"
-version = "0.1.10"
+version = "0.1.10-1"
 dependencies = [
  "anyhow",
  "approx 0.5.1",
@@ -2444,7 +2444,7 @@
 
 [[package]]
 name = "niri-config"
-version = "0.1.10"
+version = "0.1.10-1"
 dependencies = [
  "bitflags 2.6.0",
  "csscolorparser",
@@ -2461,7 +2461,7 @@
 
 [[package]]
 name = "niri-ipc"
-version = "0.1.10"
+version = "0.1.10-1"
 dependencies = [
  "clap",
  "schemars",
@@ -2471,7 +2471,7 @@
 
 [[package]]
 name = "niri-visual-tests"
-version = "0.1.10"
+version = "0.1.10-1"
 dependencies = [
  "anyhow",
  "gtk4",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/niri-0.1.10/Cargo.toml new/niri-0.1.10.1/Cargo.toml
--- old/niri-0.1.10/Cargo.toml  2024-11-09 15:57:52.000000000 +0100
+++ new/niri-0.1.10.1/Cargo.toml        2024-11-13 08:39:54.000000000 +0100
@@ -2,7 +2,7 @@
 members = ["niri-visual-tests"]
 
 [workspace.package]
-version = "0.1.10"
+version = "0.1.10-1"
 description = "A scrollable-tiling Wayland compositor"
 authors = ["Ivan Molodetskikh <yalt...@gmail.com>"]
 license = "GPL-3.0-or-later"
@@ -64,8 +64,8 @@
 libc = "0.2.162"
 libdisplay-info = "0.1.0"
 log = { version = "0.4.22", features = ["max_level_trace", 
"release_max_level_debug"] }
-niri-config = { version = "0.1.10", path = "niri-config" }
-niri-ipc = { version = "0.1.10", path = "niri-ipc", features = ["clap"] }
+niri-config = { version = "0.1.10-1", path = "niri-config" }
+niri-ipc = { version = "0.1.10-1", path = "niri-ipc", features = ["clap"] }
 notify-rust = { version = "~4.10.0", optional = true }
 ordered-float = "4.5.0"
 pango = { version = "0.20.4", features = ["v1_44"] }
@@ -139,7 +139,7 @@
 debug = false
 
 [package.metadata.generate-rpm]
-version = "0.1.10"
+version = "0.1.10.1"
 assets = [
     { source = "target/release/niri", dest = "/usr/bin/", mode = "755" },
     { source = "resources/niri-session", dest = "/usr/bin/", mode = "755" },
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/niri-0.1.10/niri-config/Cargo.toml 
new/niri-0.1.10.1/niri-config/Cargo.toml
--- old/niri-0.1.10/niri-config/Cargo.toml      2024-11-09 15:57:52.000000000 
+0100
+++ new/niri-0.1.10.1/niri-config/Cargo.toml    2024-11-13 08:39:54.000000000 
+0100
@@ -12,7 +12,7 @@
 csscolorparser = "0.7.0"
 knuffel = "3.2.0"
 miette = "5.10.0"
-niri-ipc = { version = "0.1.10", path = "../niri-ipc" }
+niri-ipc = { version = "0.1.10-1", path = "../niri-ipc" }
 regex = "1.11.1"
 smithay = { workspace = true, features = ["backend_libinput"] }
 tracing.workspace = true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/niri-0.1.10/niri-config/src/lib.rs 
new/niri-0.1.10.1/niri-config/src/lib.rs
--- old/niri-0.1.10/niri-config/src/lib.rs      2024-11-09 15:57:52.000000000 
+0100
+++ new/niri-0.1.10.1/niri-config/src/lib.rs    2024-11-13 08:39:54.000000000 
+0100
@@ -188,8 +188,8 @@
     pub disabled_on_external_mouse: bool,
     #[knuffel(child)]
     pub middle_emulation: bool,
-    #[knuffel(child, unwrap(argument), default = FloatOrInt(1.0))]
-    pub scroll_factor: FloatOrInt<0, 100>,
+    #[knuffel(child, unwrap(argument))]
+    pub scroll_factor: Option<FloatOrInt<0, 100>>,
 }
 
 #[derive(knuffel::Decode, Debug, Default, PartialEq)]
@@ -210,8 +210,8 @@
     pub left_handed: bool,
     #[knuffel(child)]
     pub middle_emulation: bool,
-    #[knuffel(child, unwrap(argument), default = FloatOrInt(1.0))]
-    pub scroll_factor: FloatOrInt<0, 100>,
+    #[knuffel(child, unwrap(argument))]
+    pub scroll_factor: Option<FloatOrInt<0, 100>>,
 }
 
 #[derive(knuffel::Decode, Debug, Default, PartialEq)]
@@ -3183,7 +3183,7 @@
                         left_handed: false,
                         disabled_on_external_mouse: true,
                         middle_emulation: false,
-                        scroll_factor: FloatOrInt(0.9),
+                        scroll_factor: Some(FloatOrInt(0.9)),
                     },
                     mouse: Mouse {
                         off: false,
@@ -3194,7 +3194,7 @@
                         scroll_button: Some(273),
                         left_handed: false,
                         middle_emulation: true,
-                        scroll_factor: FloatOrInt(0.2),
+                        scroll_factor: Some(FloatOrInt(0.2)),
                     },
                     trackpoint: Trackpoint {
                         off: true,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/niri-0.1.10/niri-visual-tests/Cargo.toml 
new/niri-0.1.10.1/niri-visual-tests/Cargo.toml
--- old/niri-0.1.10/niri-visual-tests/Cargo.toml        2024-11-09 
15:57:52.000000000 +0100
+++ new/niri-0.1.10.1/niri-visual-tests/Cargo.toml      2024-11-13 
08:39:54.000000000 +0100
@@ -11,8 +11,8 @@
 adw = { version = "0.7.1", package = "libadwaita", features = ["v1_4"] }
 anyhow.workspace = true
 gtk = { version = "0.9.3", package = "gtk4", features = ["v4_12"] }
-niri = { version = "0.1.10", path = ".." }
-niri-config = { version = "0.1.10", path = "../niri-config" }
+niri = { version = "0.1.10-1", path = ".." }
+niri-config = { version = "0.1.10-1", path = "../niri-config" }
 smithay.workspace = true
 tracing.workspace = true
 tracing-subscriber.workspace = true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/niri-0.1.10/src/input/mod.rs 
new/niri-0.1.10.1/src/input/mod.rs
--- old/niri-0.1.10/src/input/mod.rs    2024-11-09 15:57:52.000000000 +0100
+++ new/niri-0.1.10.1/src/input/mod.rs  2024-11-13 08:39:54.000000000 +0100
@@ -31,6 +31,7 @@
 use smithay::utils::{Logical, Point, Rectangle, Transform, SERIAL_COUNTER};
 use smithay::wayland::pointer_constraints::{with_pointer_constraint, 
PointerConstraint};
 use smithay::wayland::tablet_manager::{TabletDescriptor, TabletSeatTrait};
+use touch_move_grab::TouchMoveGrab;
 
 use self::move_grab::MoveGrab;
 use self::resize_grab::ResizeGrab;
@@ -540,6 +541,10 @@
                 }
             }
             Action::ConfirmScreenshot => {
+                if !self.niri.screenshot_ui.is_open() {
+                    return;
+                }
+
                 self.backend.with_primary_renderer(|renderer| {
                     match self.niri.screenshot_ui.capture(renderer) {
                         Ok((size, pixels)) => {
@@ -560,6 +565,10 @@
                 self.niri.queue_redraw_all();
             }
             Action::CancelScreenshot => {
+                if !self.niri.screenshot_ui.is_open() {
+                    return;
+                }
+
                 self.niri.screenshot_ui.close();
                 self.niri
                     .cursor_manager
@@ -1743,6 +1752,12 @@
     fn on_pointer_axis<I: InputBackend>(&mut self, event: I::PointerAxisEvent) 
{
         let source = event.source();
 
+        // We received an event for the regular pointer, so show it now. This 
is also needed for
+        // update_pointer_contents() below to return the real contents, 
necessary for the pointer
+        // axis event to reach the window.
+        self.niri.pointer_hidden = false;
+        self.niri.tablet_cursor_location = None;
+
         let horizontal_amount_v120 = event.amount_v120(Axis::Horizontal);
         let vertical_amount_v120 = event.amount_v120(Axis::Vertical);
 
@@ -1882,10 +1897,11 @@
         }
 
         let scroll_factor = match source {
-            AxisSource::Wheel => 
self.niri.config.borrow().input.mouse.scroll_factor.0,
-            AxisSource::Finger => 
self.niri.config.borrow().input.touchpad.scroll_factor.0,
-            _ => 1.0,
+            AxisSource::Wheel => 
self.niri.config.borrow().input.mouse.scroll_factor,
+            AxisSource::Finger => 
self.niri.config.borrow().input.touchpad.scroll_factor,
+            _ => None,
         };
+        let scroll_factor = scroll_factor.map(|x| x.0).unwrap_or(1.);
 
         let horizontal_amount = horizontal_amount.unwrap_or_else(|| {
             // Winit backend, discrete scrolling.
@@ -2352,12 +2368,40 @@
             return;
         };
 
+        let serial = SERIAL_COUNTER.next_serial();
+
         let under = self.niri.contents_under(touch_location);
 
         if !handle.is_grabbed() {
             if let Some(window) = under.window {
                 self.niri.layout.activate_window(&window);
 
+                // Check if we need to start an interactive move.
+                let mods = 
self.niri.seat.get_keyboard().unwrap().modifier_state();
+                let mod_down = match self.backend.mod_key() {
+                    CompositorMod::Super => mods.logo,
+                    CompositorMod::Alt => mods.alt,
+                };
+                if mod_down {
+                    let (output, pos_within_output) =
+                        self.niri.output_under(touch_location).unwrap();
+                    let output = output.clone();
+
+                    if self.niri.layout.interactive_move_begin(
+                        window.clone(),
+                        &output,
+                        pos_within_output,
+                    ) {
+                        let start_data = TouchGrabStartData {
+                            focus: None,
+                            slot: evt.slot(),
+                            location: touch_location,
+                        };
+                        let grab = TouchMoveGrab::new(start_data, 
window.clone());
+                        handle.set_grab(self, grab, serial);
+                    }
+                }
+
                 // FIXME: granular.
                 self.niri.queue_redraw_all();
             } else if let Some(output) = under.output {
@@ -2369,7 +2413,6 @@
             self.niri.focus_layer_surface_if_on_demand(under.layer);
         };
 
-        let serial = SERIAL_COUNTER.next_serial();
         handle.down(
             self,
             under.surface,

Reply via email to