control: fixed -1 4:6.3.2.1-1 Le samedi 22 février 2025, 08:10:53 UTC+1 Antonio a écrit : > Dear Maintainer, > > I found a patch that avoids the desktop freeze, at least until the > problem is solved. Using the system I have not seen any side effects, so > I think it might be useful to include it in the "kwin-wayland" package > to avoid unwanted desktop freezes. > > The path (see below) affects the "libkwin6_6.3.0.1-2_amd64.deb" package > that contains the "/usr/lib/x86_64-linux-gnu/libkwin.so.6.3.0" library. > > see also https://bugs.kde.org/show_bug.cgi?id=499913 > > Thanks, > Antonio > > > --- a/kwin-6.3.0/src/window.cpp 2025-02-06 12:01:48.000000000 +0100 > +++ b/kwin-6.3.0/src/window.cpp 2025-02-21 15:06:37.885455302 +0100 > @@ -50,6 +50,12 @@ > #include <QMouseEvent> > #include <QStyleHints> > > +#include <time.h> > +#include <unistd.h> > +time_t maxtime=1; > +useconds_t waitmsec=10; > + > + > namespace KWin > { > > @@ -1542,7 +1548,9 @@ > int lastVisiblePixels = -1; > QRectF lastTry = nextMoveResizeGeom; > bool titleFailed = false; > - for (;;) { > + time_t starttime=time(NULL); > + while((time(NULL)-starttime)<maxtime) { > + usleep(waitmsec); > const QRect titleRect = > bTitleRect.translated(nextMoveResizeGeom.topLeft()).toRect(); > const int requiredPixels = std::min(100 * (transposed ? > titleRect.width() : titleRect.height()), titleRect.width() * > titleRect.height()); > > @@ -1665,7 +1673,9 @@ > } > bool transposed = false; > QRectF bTitleRect = titleBarRect(nextMoveResizeGeom, transposed); > - for (;;) { > + time_t starttime=time(NULL); > + while((time(NULL)-starttime)<maxtime) { > + usleep(waitmsec); > QRectF currentTry = nextMoveResizeGeom; > const QRect titleRect = > bTitleRect.translated(currentTry.topLeft()).toRect(); > const int requiredPixels = std::min(100 * (transposed ? > titleRect.width() : titleRect.height()), titleRect.width() * > titleRect.height()); > >