diff --git a/app/src/main/java/io/xpipe/app/core/AppWindowHelper.java b/app/src/main/java/io/xpipe/app/core/AppWindowHelper.java index 327743005..9b68429fb 100644 --- a/app/src/main/java/io/xpipe/app/core/AppWindowHelper.java +++ b/app/src/main/java/io/xpipe/app/core/AppWindowHelper.java @@ -49,6 +49,11 @@ public class AppWindowHelper { var n = newValue.doubleValue(); var o = oldValue.doubleValue(); if (stage.isShowing() && areNumbersValid(o, n)) { + // Ignore rounding events + if (Math.abs(n - o) < 0.5) { + return; + } + if (!xSet.getAndSet(true) && !stage.isMaximized() && n <= 0.0 && o > 0.0 && Math.abs(n - o) > 100) { stage.setX(o); } @@ -60,6 +65,11 @@ public class AppWindowHelper { var n = newValue.doubleValue(); var o = oldValue.doubleValue(); if (stage.isShowing() && areNumbersValid(o, n)) { + // Ignore rounding events + if (Math.abs(n - o) < 0.5) { + return; + } + if (!ySet.getAndSet(true) && !stage.isMaximized() && n <= 0.0 && o > 0.0 && Math.abs(n - o) > 20) { stage.setY(o); }