When I drag a maximized window to another screen with the "Wobbly Windows" effect turned on, weird flickering artifacts are shown on the original screen. Sometimes these are just a few pixels, sometimes they show large parts of the window. This does not happen when dragging non-maximized windows. The attached screenshot shows a quite extreme example which I could only achieve with Chrome and the "Use system titlebar and borders" setting turned off (with that setting turned on, artifacts are usually less dramatic). However, some artifacts can also be produced with other applications such as Krita. Using proprietary nvidia driver and TwinView. Reproducible: Always
Created attachment 101552 [details] Screenshot
please provide output of: qdbus org.kde.KWin /KWin supportInformation
Sure. https://paste.kde.org/pl2kiokt6
Copy from paste: Version ======= KWin version: 5.8.1 Qt Version: 5.7.0 Qt compile version: 5.7.0 XCB compile version: 1.12 Operation Mode: X11 only Build Options ============= KWIN_BUILD_DECORATIONS: yes KWIN_BUILD_TABBOX: yes KWIN_BUILD_ACTIVITIES: yes HAVE_INPUT: yes HAVE_DRM: yes HAVE_GBM: yes HAVE_X11_XCB: yes HAVE_EPOXY_GLX: yes HAVE_WAYLAND_EGL: yes X11 === Vendor: The X.Org Foundation Vendor Release: 11804000 Protocol Version/Revision: 11/0 SHAPE: yes; Version: 0x11 RANDR: yes; Version: 0x14 DAMAGE: yes; Version: 0x11 Composite: yes; Version: 0x4 RENDER: yes; Version: 0xb XFIXES: yes; Version: 0x50 SYNC: yes; Version: 0x31 GLX: yes; Version: 0x0 Decoration ========== Plugin: org.kde.breeze Theme: Blur: 0 onAllDesktopsAvailable: true alphaChannelSupported: true closeOnDoubleClickOnMenu: false decorationButtonsLeft: 0, 9 decorationButtonsRight: 6, 3, 4, 5 borderSize: 3 gridUnit: 10 font: Noto Sans,10,-1,5,50,0,0,0,0,0 smallSpacing: 2 largeSpacing: 10 Options ======= focusPolicy: 0 nextFocusPrefersMouse: false clickRaise: true autoRaise: false autoRaiseInterval: 0 delayFocusInterval: 0 shadeHover: false shadeHoverInterval: 250 separateScreenFocus: false placement: 4 focusPolicyIsReasonable: true borderSnapZone: 10 windowSnapZone: 10 centerSnapZone: 0 snapOnlyWhenOverlapping: false rollOverDesktops: true focusStealingPreventionLevel: 1 legacyFullscreenSupport: false operationTitlebarDblClick: 5000 operationMaxButtonLeftClick: 5000 operationMaxButtonMiddleClick: 5015 operationMaxButtonRightClick: 5014 commandActiveTitlebar1: 0 commandActiveTitlebar2: 30 commandActiveTitlebar3: 2 commandInactiveTitlebar1: 4 commandInactiveTitlebar2: 30 commandInactiveTitlebar3: 2 commandWindow1: 7 commandWindow2: 8 commandWindow3: 8 commandWindowWheel: 31 commandAll1: 10 commandAll2: 3 commandAll3: 14 keyCmdAllModKey: 16777251 showGeometryTip: false condensedTitle: false electricBorderMaximize: true electricBorderTiling: true electricBorderCornerRatio: 0.25 borderlessMaximizedWindows: false killPingTimeout: 5000 hideUtilityWindowsForInactive: true inactiveTabsSkipTaskbar: false autogroupSimilarWindows: false autogroupInForeground: true compositingMode: 1 useCompositing: true compositingInitialized: true hiddenPreviews: 1 glSmoothScale: 1 colorCorrected: false xrenderSmoothScale: false maxFpsInterval: 16666666 refreshRate: 0 vBlankTime: 6000000 glStrictBinding: false glStrictBindingFollowsDriver: true glCoreProfile: true glPreferBufferSwap: 99 glPlatformInterface: 1 windowsBlockCompositing: true Screen Edges ============ desktopSwitching: false desktopSwitchingMovingClients: false cursorPushBackDistance: 1x1 timeThreshold: 150 reActivateThreshold: 350 actionTopLeft: 1 actionTop: 0 actionTopRight: 0 actionRight: 0 actionBottomRight: 0 actionBottom: 0 actionBottomLeft: 0 actionLeft: 0 Screens ======= Multi-Head: no Active screen follows mouse: no Number of Screens: 2 Screen 0: --------- Name: DVI-I-1 Geometry: 0,0,2560x1440 Refresh Rate: 59.9506 Screen 1: --------- Name: DVI-D-0 Geometry: 2560,0,2560x1440 Refresh Rate: 59.9506 Compositing =========== Compositing is active Compositing Type: OpenGL OpenGL vendor string: NVIDIA Corporation OpenGL renderer string: GeForce GTX 960/PCIe/SSE2 OpenGL version string: 3.1.0 NVIDIA 370.28 OpenGL platform interface: GLX OpenGL shading language version string: 1.40 NVIDIA via Cg compiler Driver: NVIDIA Driver version: 370.28 GPU class: Unknown OpenGL version: 3.1 GLSL version: 1.40 X server version: 1.18.4 Linux kernel version: 4.8.1 Direct rendering: Requires strict binding: no GLSL shaders: yes Texture NPOT support: yes Virtual Machine: no OpenGL 2 Shaders are used Painting blocks for vertical retrace: yes Loaded Effects: --------------- zoom dimscreen slidingpopups kwin4_effect_login wobblywindows slide screenshot magiclamp kwin4_effect_windowaperture glide kwin4_effect_translucency desktopgrid kwin4_effect_morphingpopups kwin4_effect_fade kwin4_effect_maximize presentwindows kwin4_effect_dialogparent highlightwindow blur contrast startupfeedback screenedge kscreen Currently Active Effects: ------------------------- blur contrast Effect Settings: ---------------- zoom: zoomFactor: 1.2 mousePointer: 0 mouseTracking: 0 enableFocusTracking: false followFocus: true focusDelay: 350 moveFactor: 20 targetZoom: 1 dimscreen: slidingpopups: fadeInTime: 150 fadeOutTime: 250 kwin4_effect_login: wobblywindows: stiffness: 0.15 drag: 0.55 moveFactor: 0.1 xTesselation: 20 yTesselation: 20 minVelocity: 0 maxVelocity: 1000 stopVelocity: 0.5 minAcceleration: 0 maxAcceleration: 1000 stopAcceleration: 0.5 moveEffectEnabled: true openEffectEnabled: false closeEffectEnabled: false moveWobble: true resizeWobble: true slide: screenshot: magiclamp: animationDuration: 250 kwin4_effect_windowaperture: glide: duration: 350 effect: 0 angle: 1 kwin4_effect_translucency: desktopgrid: zoomDuration: 300 border: 10 desktopNameAlignment: 0 layoutMode: 0 customLayoutRows: 2 usePresentWindows: true kwin4_effect_morphingpopups: kwin4_effect_fade: kwin4_effect_maximize: presentwindows: layoutMode: 0 showCaptions: true showIcons: true doNotCloseWindows: false ignoreMinimized: false accuracy: 20 fillGaps: true fadeDuration: 150 showPanel: false leftButtonWindow: 1 rightButtonWindow: 2 middleButtonWindow: 0 leftButtonDesktop: 2 middleButtonDesktop: 0 rightButtonDesktop: 0 kwin4_effect_dialogparent: highlightwindow: blur: blurRadius: 12 cacheTexture: true contrast: startupfeedback: type: 0 screenedge: kscreen:
I get this too on Arch Linux, Plasma 5.9.3.
With Intel Modesettings driver.
I confirm all of this - exactly the same artifacts in multi monitor setup with intel drivers
Seems a bad interaction between Wobbly windows plugin and maximize effect. Disabling one of them makes the flickering goes away.
I can confirm that this bug also occurs when trying to snap a maximised window to one side of a screen. I can also confirm that the method @Antonio Orefice suggested (disabling maximise effect) works...
The bug does not seem to occur on Wayland (if someone can confirm).
I'm not seeing with Wobbly windows effect in X11, on Wayland the Max/Unmax window effect isn't working currently https://bugs.kde.org/show_bug.cgi?id=384462 - but Wobbly effect seems to work ok on single laptop monitor setup Distribution: Netrunner Rolling Kernel: 4.18.0-1-MANJARO Plasma: 5.13.3 Apps: 18.04.3 Qt: 5.11.1 Frameworks: 5.47.0 Wayland: 1.15.0 Graphics: Card-1: Intel Haswell-ULT Integrated Graphics driver: i915 v: kernel bus ID: 00:02.0 chip ID: 8086:0a16 Display: wayland server: X.Org 1.20.0 driver: intel unloaded: modesetting compositor: kwin_wayland tty: N/A OpenGL: renderer: Mesa DRI Intel Haswell Mobile v: 4.5 Mesa 18.1.4 compat-v: 3.0 direct render: Yes KWin Support Information: ========================== Version ======= KWin version: 5.13.3 Qt Version: 5.11.1 Qt compile version: 5.11.1 XCB compile version: 1.13 Operation Mode: Xwayland Build Options ============= KWIN_BUILD_DECORATIONS: yes KWIN_BUILD_TABBOX: yes KWIN_BUILD_ACTIVITIES: yes HAVE_DRM: yes HAVE_GBM: yes HAVE_X11_XCB: yes HAVE_EPOXY_GLX: yes HAVE_WAYLAND_EGL: yes X11 === Vendor: The X.Org Foundation Vendor Release: 12000000 Protocol Version/Revision: 11/0 SHAPE: yes; Version: 0x11 RANDR: yes; Version: 0x14 DAMAGE: yes; Version: 0x11 Composite: yes; Version: 0x4 RENDER: yes; Version: 0xb XFIXES: yes; Version: 0x50 SYNC: yes; Version: 0x31 GLX: yes; Version: 0x0 Decoration ========== Plugin: org.kde.breeze Theme: Blur: 0 onAllDesktopsAvailable: false alphaChannelSupported: true closeOnDoubleClickOnMenu: false decorationButtonsLeft: 0, 9, 1 decorationButtonsRight: 6, 3, 4, 5 borderSize: 3 gridUnit: 10 font: Noto Sans,10,-1,5,50,0,0,0,0,0,Regular smallSpacing: 2 largeSpacing: 10 Platform ========== Name: DRM Active: true Atomic Mode Setting: true Options ======= focusPolicy: 0 nextFocusPrefersMouse: false clickRaise: true autoRaise: false autoRaiseInterval: 0 delayFocusInterval: 0 shadeHover: false shadeHoverInterval: 250 separateScreenFocus: false placement: 4 focusPolicyIsReasonable: true borderSnapZone: 10 windowSnapZone: 10 centerSnapZone: 0 snapOnlyWhenOverlapping: false rollOverDesktops: true focusStealingPreventionLevel: 1 legacyFullscreenSupport: false operationTitlebarDblClick: 5000 operationMaxButtonLeftClick: 5000 operationMaxButtonMiddleClick: 5015 operationMaxButtonRightClick: 5014 commandActiveTitlebar1: 0 commandActiveTitlebar2: 30 commandActiveTitlebar3: 2 commandInactiveTitlebar1: 4 commandInactiveTitlebar2: 30 commandInactiveTitlebar3: 2 commandWindow1: 7 commandWindow2: 8 commandWindow3: 8 commandWindowWheel: 31 commandAll1: 10 commandAll2: 3 commandAll3: 14 keyCmdAllModKey: 16777251 showGeometryTip: false condensedTitle: false electricBorderMaximize: true electricBorderTiling: false electricBorderCornerRatio: 0.25 borderlessMaximizedWindows: false killPingTimeout: 5000 hideUtilityWindowsForInactive: true inactiveTabsSkipTaskbar: false autogroupSimilarWindows: false autogroupInForeground: true compositingMode: 2 useCompositing: true compositingInitialized: true hiddenPreviews: 1 glSmoothScale: 2 xrenderSmoothScale: false maxFpsInterval: 16666666 refreshRate: 0 vBlankTime: 6000000 glStrictBinding: false glStrictBindingFollowsDriver: true glCoreProfile: false glPreferBufferSwap: 112 glPlatformInterface: 2 windowsBlockCompositing: true Screen Edges ============ desktopSwitching: false desktopSwitchingMovingClients: false cursorPushBackDistance: 1x1 timeThreshold: 150 reActivateThreshold: 350 actionTopLeft: 0 actionTop: 0 actionTopRight: 0 actionRight: 0 actionBottomRight: 0 actionBottom: 0 actionBottomLeft: 0 actionLeft: 0 Screens ======= Multi-Head: no Active screen follows mouse: yes Number of Screens: 1 Screen 0: --------- Name: B140RTN03.0 eDP-1-unknown Geometry: 0,0,1600x900 Scale: 1 Refresh Rate: 60 Compositing =========== Compositing is active Compositing Type: OpenGL OpenGL vendor string: Intel Open Source Technology Center OpenGL renderer string: Mesa DRI Intel(R) Haswell Mobile OpenGL version string: 3.0 Mesa 18.1.4 OpenGL platform interface: EGL OpenGL shading language version string: 1.30 Driver: Intel GPU class: Haswell OpenGL version: 3.0 GLSL version: 1.30 Mesa version: 18.1.4 X server version: 1.20 Linux kernel version: 4.18 Direct rendering: Requires strict binding: no GLSL shaders: yes Texture NPOT support: yes Virtual Machine: no OpenGL 2 Shaders are used Painting blocks for vertical retrace: no Loaded Effects: --------------- zoom kwin4_effect_frozenapp kwin4_effect_fade kwin4_effect_logout kwin4_effect_windowaperture kwin4_effect_login kwin4_effect_maximize kwin4_effect_morphingpopups kwin4_effect_translucency kwin4_effect_dialogparent slidingpopups wobblywindows slide screenshot minimizeanimation desktopgrid coverswitch colorpicker presentwindows highlightwindow blur contrast startupfeedback screenedge kscreen Currently Active Effects: ------------------------- kwin4_effect_fade blur contrast screenedge Effect Settings: ---------------- zoom: zoomFactor: 1.2 mousePointer: 0 mouseTracking: 0 enableFocusTracking: false followFocus: true focusDelay: 350 moveFactor: 20 targetZoom: 1 kwin4_effect_frozenapp: kwin4_effect_fade: kwin4_effect_logout: kwin4_effect_windowaperture: kwin4_effect_login: kwin4_effect_maximize: kwin4_effect_morphingpopups: kwin4_effect_translucency: kwin4_effect_dialogparent: slidingpopups: fadeInTime: 150 fadeOutTime: 250 wobblywindows: stiffness: 0.15 drag: 0.8 moveFactor: 0.1 xTesselation: 20 yTesselation: 20 minVelocity: 0 maxVelocity: 1000 stopVelocity: 0.5 minAcceleration: 0 maxAcceleration: 1000 stopAcceleration: 0.5 moveEffectEnabled: true openEffectEnabled: false closeEffectEnabled: false moveWobble: true resizeWobble: true slide: screenshot: minimizeanimation: desktopgrid: zoomDuration: 300 border: 10 desktopNameAlignment: 0 layoutMode: 0 customLayoutRows: 2 usePresentWindows: true coverswitch: animationDuration: 200 animateSwitch: true animateStart: true animateStop: true reflection: true windowTitle: true zPosition: 900 primaryTabBox: false secondaryTabBox: false colorpicker: presentwindows: layoutMode: 0 showCaptions: true showIcons: true doNotCloseWindows: false ignoreMinimized: false accuracy: 20 fillGaps: true fadeDuration: 150 showPanel: false leftButtonWindow: 1 rightButtonWindow: 2 middleButtonWindow: 0 leftButtonDesktop: 2 middleButtonDesktop: 0 rightButtonDesktop: 0 highlightwindow: blur: contrast: startupfeedback: type: 1 screenedge: kscreen:
I have the same graphical glitches even when using a single desktop. I confirm that disabling the maximization effect, the problem seems to disappear.
Git commit c2ffcfdc218c94fc93e1960a8760883eef4e4495 by Vlad Zagorodniy. Committed on 09/10/2018 at 15:30. Pushed by vladz into branch 'Plasma/5.14'. [effects/wobblywindows] Fix visual artifacts caused by maximize effect Summary: If one wants to drag a maximized window while he or she has enabled both the Wobbly Windows and the Maximize effect, visual artifacts can be shown. When the Maximize effect animates transition from maximize to restore, some parts of the window can overshoot repaint regions(because of wobbliness), leaving us with the visual artifacts. To fix that, we have to take into account current scale and translation when calculating dirty region in the Wobbly Windows effect. FIXED-IN: 5.14.1 Test Plan: When dragging maximized windows, there are no visual artifacts anymore. Reviewers: #kwin, davidedmundson Reviewed By: #kwin, davidedmundson Subscribers: abetts, kwin Tags: #kwin Differential Revision: https://phabricator.kde.org/D15961 M +8 -2 effects/wobblywindows/wobblywindows.cpp M +4 -1 effects/wobblywindows/wobblywindows.h https://commits.kde.org/kwin/c2ffcfdc218c94fc93e1960a8760883eef4e4495
@Vlad Zagorodniy thank you very much. Plasma 5.14.1 has just released and I can confirm that this issue is finally fixed. Thank you!
Created attachment 115776 [details] Title bar detaching from window The fix solved the previous glitch. However it seems to have introduced a little artifact, where the title bar seems to detach from the window (when wobbly windows is active)
(In reply to Luca from comment #15) > Created attachment 115776 [details] > Title bar detaching from window > > The fix solved the previous glitch. > > However it seems to have introduced a little artifact, where the title bar > seems to detach from the window (when wobbly windows is active) No, that glitch wasn't introduced by the fix. That's caused by the texture bleeding. See bug 257566.