Bug 304404

Summary: Track mouse effect does not explicitly set the opacity
Product: [Plasma] kwin Reporter: Thomas Mitterfellner <thomas>
Component: effects-variousAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: 4.9.0   
Target Milestone: 4.9.1   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In: 4.9.1
Attachments: Screenshot of the task switcher settings
Possible patch

Description Thomas Mitterfellner 2012-08-01 23:03:09 UTC
It seems that the accessibility effect 'track mouse' does not work anymore (regression after I updated from 4.8.4 to 4.9.0). I had it assigned to the the modifier keys CTRL+META. I tried to assign a key combination to it, but the stars encircling the mouse cursor still don't show when pressing it.

Reproducible: Always

Steps to Reproduce:
1. enable track mouse effect, e.g. setting the modifier keys CTRL and META as shortcut
2. press CTRL+META

Actual Results:  
No visible change on the screen

Expected Results:  
Yellow stars should have been circling around the mouse cursor (or at least some other effect making the mouse cursor discoverable more easily).
Comment 1 Martin Flöser 2012-08-02 05:49:07 UTC
Please have a close look and start moving the mouse when you pressed the shortcut. It's no longer a circle of stars.
Comment 2 Thomas Mitterfellner 2012-08-02 09:06:31 UTC
First off: I logged into my desktop freshly today and I saw the new effect when pressing the shortcut. It is harder to see than the circling stars, maybe because it is smaller. I like the fact that it has two 'colors' (b&w) though, because it can probably be seen on differently colored backgrounds – is there an easy way to configure/program the colors/sizes/number of bars?

The other thing is: the effect seems to stop working once I use the window switcher (ALT+TAB). In one test, I had the impression that the effect was just a bit more faded after using the switcher once and then it disappeared completely after another switching (but I might be mistaken on this since I could not really reproduce this). What I could reproduce is: 
1. fresh login: effect works
2. hit ALT+TAB to display the window switcher
Result: effect stops working, I found no way to re-enable it other than to logout/login
Comment 3 Martin Flöser 2012-08-02 09:13:39 UTC
> 2. hit ALT+TAB to display the window switcher
> Result: effect stops working, I found no way to re-enable it other than to
> logout/login
which window switcher are you using? Do you press Alt+Tab while the track 
mouse is shown or how do you do that?
Comment 4 Thomas Mitterfellner 2012-08-02 09:23:28 UTC
I'm using box switch. I do not use the effect while doing ALT+TAB, but just hit ALT+TAB to display the switcher, then try the effect again, which does not show anymore. It is really strange: sometimes the effect seems to disappear completely, sometimes it is just VERY translucent. Btw., I found a way to re-enable it other than to logout/login: zoom the whole desktop, then the effect works again (also in the unzoomed state). But as soon as I use the box switch again, there are these strange goings on with the track effect.
Comment 5 Martin Flöser 2012-08-02 09:28:34 UTC
> I'm using box switch. 
that's not possible. Box Switch is no longer used as an alt+tab effect. Could 
you please provide an overview of all the settings regarding Alt+Tab you have 
done?
Comment 6 Thomas Lübking 2012-08-02 09:37:22 UTC
(In reply to comment #2)
> is there an easy way to configure/program the colors/sizes/number of bars?

/usr/share/apps/kwin/tm_inner.png 
/usr/share/apps/kwin/tm_outer.png 

override them in ~/.kde/share/apps/kwin - I'm not sure about size change handling atm - you'll have to try ;-)
Comment 7 Thomas Mitterfellner 2012-08-02 09:43:16 UTC
@Thomas: Thanks for the information; I'll have a look at it later.

@Martin: I don't really know what to tell you other than: I've checked 'Box Switch' on the Configure desktop effects page. I've now unchecked this, logged out/in, but the behavior did not change (box switch seems to be active still).
Comment 8 Martin Flöser 2012-08-02 10:04:06 UTC
>I don't really know what to tell you other than: I've checked 'Box
> Switch' on the Configure desktop effects page. I've now unchecked this,
> logged out/in, but the behavior did not change (box switch seems to be
> active still).
Alt+F3 -> More Actions -> Window Manager Settings... -> Task Switcher

Please screenshot this window
Comment 9 Thomas Mitterfellner 2012-08-02 10:08:29 UTC
Created attachment 72892 [details]
Screenshot of the task switcher settings
Comment 10 Martin Flöser 2012-08-02 10:17:40 UTC
I gave a try to the same settings but are not able to reproduce the issue.

Please post the output of when facing the problem:
qdbus org.kde.kwin /KWin supportInformation
Comment 11 Thomas Mitterfellner 2012-08-02 10:22:17 UTC
KWin Support Information:
The following information should be used when requesting support on e.g. http://forum.kde.org.
It provides information about the currently running instance, which options are used,
what OpenGL driver and which effects are running.
Please post the information provided underneath this introductory text to a paste bin service
like http://paste.kde.org instead of pasting into support threads.

==========================

Options
=======
focusPolicy: 0
nextFocusPrefersMouse: false
clickRaise: true
autoRaise: false
autoRaiseInterval: 0
delayFocusInterval: 0
shadeHover: false
shadeHoverInterval: 250
tiling: false
tilingLayout: 0
tilingRaisePolicy: 0
separateScreenFocus: false
activeMouseScreen: false
placement: 4
focusPolicyIsReasonable: true
borderSnapZone: 10
windowSnapZone: 10
centerSnapZone: 0
snapOnlyWhenOverlapping: false
showDesktopIsMinimizeAll: false
rollOverDesktops: true
focusStealingPreventionLevel: 1
legacyFullscreenSupport: false
operationTitlebarDblClick: 
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
electricBorders: false
electricBorderDelay: 150
electricBorderCooldown: 350
electricBorderPushbackPixels: 1
electricBorderMaximize: true
electricBorderTiling: true
borderlessMaximizedWindows: false
killPingTimeout: 5000
hideUtilityWindowsForInactive: true
inactiveTabsSkipTaskbar: false
autogroupSimilarWindows: false
autogroupInForeground: true
compositingMode: 1
useCompositing: true
compositingInitialized: true
hiddenPreviews: 0
unredirectFullscreen: false
glSmoothScale: 0
glVSync: true
xrenderSmoothScale: false
maxFpsInterval: 17
refreshRate: 0
vBlankTime: 6144
glDirect: true
glStrictBinding: false
glStrictBindingFollowsDriver: true

Compositing
===========
Qt Graphics System: raster
Compositing is active
Compositing Type: OpenGL
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GT 525M/PCIe/SSE2
OpenGL version string: 4.2.0 NVIDIA 295.49
Driver: NVIDIA
Driver version: 295.49
GPU class: GF100
OpenGL version: 4.2
X server version: 1.10.4
Linux kernel version: 3.1.10
Direct rendering: yes
Requires strict binding: no
GLSL shaders:  yes
Texture NPOT support:  yes
OpenGL 2 Shaders are used

Loaded Effects:
---------------
kwin4_effect_trackmouse
kwin4_effect_zoom
kwin4_effect_invert
kwin4_effect_login
kwin4_effect_slidingpopups
kwin4_effect_translucency
kwin4_effect_screenshot
kwin4_effect_slide
kwin4_effect_desktopgrid
kwin4_effect_fade
kwin4_effect_dialogparent
kwin4_effect_highlightwindow
kwin4_effect_presentwindows
kwin4_effect_blur
kwin4_effect_logout
kwin4_effect_dashboard
kwin4_effect_outline
kwin4_effect_startupfeedback

Currently Active Effects:
-------------------------
kwin4_effect_translucency
kwin4_effect_blur

When I press my track mouse shortcut just shortly before issuing the command, I also get

kwin4_effect_trackmouse

under Currently Active Effects. Yet, I don't see the mouse tracking.
Comment 12 Thomas Lübking 2012-08-02 17:51:16 UTC
Opacity changes come with fading in/out non clients (reliably with popup menus, the switcher falls into that category) and GLSL  -> the shaders are not correctly  "popped"

This is possibly a more general problem.
Comment 13 Thomas Mitterfellner 2012-08-02 18:41:18 UTC
I discovered that using e.g. the 'Large icons' switcher, this does not seem to happen. Also, https://bugs.kde.org/show_bug.cgi?id=304435 does not happen anymore. 
Once I choose the thumbnail switcher again, however, I see both of these strange phenomena.
Comment 14 Martin Flöser 2012-08-16 06:25:50 UTC
Created attachment 73226 [details]
Possible patch

If you have any chance, please try the attached patch. I'm quite confident that it will fix the issue, but I am myself not able to reproduce the issue, so I cannot test it.
Comment 15 Thomas Lübking 2012-08-18 10:57:10 UTC
"Ship It!" - works for me.

*cough*
shader->setUniform(GLShader::ModulationConstant, QVector4D(1.0));?
*cough*
shader->setUniform(GLShader::ModulationConstant, QVector4D(1.0, 1.0, 1.0, 1.0));!

;-)
Comment 16 Martin Flöser 2012-08-18 11:36:57 UTC
I'm wondering how that could compile here...
Comment 17 Martin Flöser 2012-08-19 12:13:20 UTC
Git commit 091b9fd562683e127490433f416e3735cd01042f by Martin Gräßlin.
Committed on 16/08/2012 at 08:19.
Pushed by graesslin into branch 'KDE/4.9'.

Reset shader state in TrackMouse effect prior to render it

The Shader might have left-overs from last usage which might
cause the effect to not work properly.
FIXED-IN: 4.9.1
Reviewed By: Thomas Lübking

M  +5    -2    kwin/effects/trackmouse/trackmouse.cpp

http://commits.kde.org/kde-workspace/091b9fd562683e127490433f416e3735cd01042f