Bug 428408

Summary: [Wayland] Cannot close title bar context menu
Product: [Plasma] kwin Reporter: Germano Massullo (Thetra) <germano.massullo>
Component: wayland-genericAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED FIXED    
Severity: normal CC: bugseforuns, justin.zobel, nate, s1994928
Priority: NOR    
Version First Reported In: 5.20.2   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Germano Massullo (Thetra) 2020-10-29 00:43:50 UTC
If you right click on a window title bar, and you do not choose any of the possible actions, you will not be able to close the context menu


qdbus org.kde.KWin /KWin supportInformation

Version
=======
KWin version: 5.20.2
Qt Version: 5.15.1
Qt compile version: 5.15.1
XCB compile version: 1.13.1

Operation Mode: Xwayland

Build Options
=============
KWIN_BUILD_DECORATIONS: yes
KWIN_BUILD_TABBOX: yes
KWIN_BUILD_ACTIVITIES: yes
HAVE_DRM: yes
HAVE_GBM: yes
HAVE_EGL_STREAMS: yes
HAVE_X11_XCB: yes
HAVE_EPOXY_GLX: yes
HAVE_WAYLAND_EGL: yes

X11
===
Vendor: Fedora Project
Vendor Release: 12009000
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: 
Plugin recommends border size: None
Blur: 0
onAllDesktopsAvailable: true
alphaChannelSupported: true
closeOnDoubleClickOnMenu: false
decorationButtonsLeft: 0, 2
decorationButtonsRight: 6, 3, 4, 5
borderSize: 0
gridUnit: 12
font: Droid Sans [1ASC],11,-1,5,50,0,0,0,0,0
smallSpacing: 3
largeSpacing: 12

Platform
==========
Name: DRM
Active: true
Atomic Mode Setting: true
Using EGL Streams: false

Options
=======
focusPolicy: 0
xwaylandCrashPolicy: 
xwaylandMaxCrashCount: 3
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
operationTitlebarDblClick: 5000
operationMaxButtonLeftClick: 5000
operationMaxButtonMiddleClick: 5015
operationMaxButtonRightClick: 5014
commandActiveTitlebar1: 0
commandActiveTitlebar2: 28
commandActiveTitlebar3: 2
commandInactiveTitlebar1: 4
commandInactiveTitlebar2: 28
commandInactiveTitlebar3: 2
commandWindow1: 7
commandWindow2: 8
commandWindow3: 8
commandWindowWheel: 28
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
compositingMode: 1
useCompositing: true
hiddenPreviews: 1
glSmoothScale: 2
xrenderSmoothScale: false
maxFpsInterval: 16666666
refreshRate: 0
vBlankTime: 6000000
glStrictBinding: false
glStrictBindingFollowsDriver: true
glCoreProfile: true
glPreferBufferSwap: 101
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: DP-3
Geometry: 0,0,3072x1728
Scale: 1.25
Refresh Rate: 59.997


Compositing
===========
Compositing is active
Compositing Type: OpenGL
OpenGL vendor string: X.Org
OpenGL renderer string: AMD Radeon (TM) RX 480 Graphics (POLARIS10, DRM 3.38.0, 5.8.16-300.fc33.x86_64, LLVM 11.0.0)
OpenGL version string: 4.6 (Core Profile) Mesa 20.2.1
OpenGL platform interface: EGL
OpenGL shading language version string: 4.60
Driver: RadeonSI
GPU class: Arctic Islands
OpenGL version: 4.6
GLSL version: 4.60
Mesa version: 20.2.1
Linux kernel version: 5.8.16
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:
---------------
showfps
kwin4_effect_sessionquit
screenshot
desktopgrid
kwin4_effect_translucency
colorpicker
kwin4_effect_fullscreen
kwin4_effect_frozenapp
presentwindows
kwin4_effect_dialogparent
highlightwindow
blur
contrast
startupfeedback
kscreen

Currently Active Effects:
-------------------------
showfps
blur
contrast

Effect Settings:
----------------
showfps:
alpha: 0.5
x: 2862
y: 0
fpsTextRect: 
textAlign: 34
textFont: Sans Serif,11,-1,5,50,0,0,0,0,0
textColor: #232627

kwin4_effect_sessionquit:
pluginId: kwin4_effect_sessionquit
isActiveFullScreenEffect: false

screenshot:

desktopgrid:
zoomDuration: 300
border: 10
desktopNameAlignment: 0
layoutMode: 0
customLayoutRows: 2
usePresentWindows: true

kwin4_effect_translucency:
pluginId: kwin4_effect_translucency
isActiveFullScreenEffect: false

colorpicker:

kwin4_effect_fullscreen:
pluginId: kwin4_effect_fullscreen
isActiveFullScreenEffect: false

kwin4_effect_frozenapp:
pluginId: kwin4_effect_frozenapp
isActiveFullScreenEffect: false

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:
pluginId: kwin4_effect_dialogparent
isActiveFullScreenEffect: false

highlightwindow:

blur:

contrast:

startupfeedback:
type: 1

kscreen:
Comment 1 Justin Zobel 2020-10-29 06:30:20 UTC
Can confirm on KDE Neon User Edition.

Workaround is to click outside the application, that will close it.
Comment 2 s1994928 2021-01-30 18:42:25 UTC
Can confirm on KDE Plasma 5.20.90

KWin Support Information is here: https://pastebin.com/spxGKQbv
Comment 3 Bug Janitor Service 2021-01-30 20:44:19 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/647
Comment 4 Vlad Zahorodnii 2021-02-02 14:10:01 UTC
Git commit f5925e2f17770ca805cc4899084a059d16e51798 by Vlad Zahorodnii.
Committed on 02/02/2021 at 14:09.
Pushed by vladz into branch 'master'.

wayland: Introduce internal popup event filter

The event filter allows dismissing the user actions menu by clicking
anywhere outside of it.

M  +38   -0    autotests/integration/internal_window.cpp
M  +39   -47   input.cpp
M  +1    -2    input.h
M  +22   -2    internal_client.cpp
M  +2    -0    internal_client.h
M  +2    -0    popup_input_filter.cpp

https://invent.kde.org/plasma/kwin/commit/f5925e2f17770ca805cc4899084a059d16e51798
Comment 5 Vlad Zahorodnii 2021-02-02 14:15:11 UTC
Git commit 3c965b9caebeb46e2d496144da8b7b4dff5f9f42 by Vlad Zahorodnii.
Committed on 02/02/2021 at 14:15.
Pushed by vladz into branch 'Plasma/5.21'.

wayland: Introduce internal popup event filter

The event filter allows dismissing the user actions menu by clicking
anywhere outside of it.


(cherry picked from commit f5925e2f17770ca805cc4899084a059d16e51798)

M  +38   -0    autotests/integration/internal_window.cpp
M  +39   -47   input.cpp
M  +1    -2    input.h
M  +22   -2    internal_client.cpp
M  +2    -0    internal_client.h
M  +2    -0    popup_input_filter.cpp

https://invent.kde.org/plasma/kwin/commit/3c965b9caebeb46e2d496144da8b7b4dff5f9f42