Summary: | Cursor is sometimes invisible or incorrectly themed | ||
---|---|---|---|
Product: | [Plasma] kwin | Reporter: | Jethro Beekman <kde-bugs> |
Component: | general | Assignee: | KWin default assignee <kwin-bugs-null> |
Status: | RESOLVED DUPLICATE | ||
Severity: | normal | ||
Priority: | NOR | ||
Version: | 4.11.2 | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Attachments: |
C program that dumps cursor pixel data on cursor change
Error case: black arrow Error case: invisible Error case: X |
Description
Jethro Beekman
2013-11-04 06:55:46 UTC
(In reply to comment #1) > KWin 4.10, the cursor would only become invisible/unthemed when showing a > context menu in a GNOME/GTK application. This would be rather an issue with GNOME/GTK > * Using the Desktop Grid and Present Windows KWin effects > * Dragging a Window by it's title bar Sounds like bug #325763 There's patch https://git.reviewboard.kde.org/r/113177/ Is it an unthemed or an invisible pointer? > The cursor that is (not) shown is different for different situations: > > * Immediately after login trough gdm, it shows a black pointer. I saved this > pointer to a file and it looks like the left_ptr from the DMZ-Black > theme. This is very likely the core (unthemed) pointer. The important question here and for the rest is "on what" - if it's the pointer of the desktop window, it's a problem of the desktop window - if it's on a window decoration or during desktop grid etc. it's a problem of the WM and if it's on gtk popups, it's a problem of gtk. a) is "env | grep XCURSOR" set (properly)? (XCURSOR_SIZE, XCURSOR_THEME) b) is it set (properly) in "cat /proc/`pidof kwin`/environ"? Sorry, don't have a lot of time today, I'll try the patch and reply more in depth tomorrow.
> > * Immediately after login trough gdm, it shows a black pointer. I saved this
> > pointer to a file and it looks like the left_ptr from the DMZ-Black
> > theme.
>
> This is very likely the core (unthemed) pointer.
I'm not sure about that... the pointer has some shading to it, I would expect the core pointer to be pure black and white.
> > * Using the Desktop Grid and Present Windows KWin effects > > * Dragging a Window by it's title bar > Sounds like bug #325763 > There's patch https://git.reviewboard.kde.org/r/113177/ Tried this patch, unfortunately it doesn't fix any of the issues I described. > Is it an unthemed or an invisible pointer? I'm not sure I can provide you with a better answer than what I described in my original report. > a) is "env | grep XCURSOR" set (properly)? (XCURSOR_SIZE, XCURSOR_THEME) > b) is it set (properly) in "cat /proc/`pidof kwin`/environ"? These are not set. I tried finding information on these variables online but they don't seem to be used a lot? My cursor theme is specified according to the XDG Icon specification, through /usr/share/icons/default/index.theme Did some more debugging, steps to reproduce: 1. Download Kubuntu 13.10 ISO, boot it (e.g. in a VM) 2. Click 'Try Kubuntu' 3. Open Konsole 4. Type sudo chvt 1 5. Type sudo stop lightdm 6. Type sudo apt-get install xterm dmz-cursor-theme geany 7. Type startx bash 8. Type kwin & geany & 9. Reproduce the issues by doing any the following: * Drag a window by it's titlebar * Press Ctrl-F10 * Right-click in geany (In reply to comment #3) > > Is it an unthemed or an invisible pointer? > > I'm not sure I can provide you with a better answer than what I described in > my original report. An "unthemed" cursor is *not* invisible, but the aliased default cursor (eventually serverside shadowed) of the server. > > a) is "env | grep XCURSOR" set (properly)? (XCURSOR_SIZE, XCURSOR_THEME) > > b) is it set (properly) in "cat /proc/`pidof kwin`/environ"? > > These are not set. I tried finding information on these variables online but > they don't seem to be used a lot? export XCURSOR_THEME=DMZ-White kwin --replace & Last chance: ensure your theme has a "size_all" cursor. If no, smlink it to "fleur" or use this script: http://kde-look.org/content/show.php/Cursor+theme+"fixing"+script?content=161037 Created attachment 83389 [details]
C program that dumps cursor pixel data on cursor change
Created attachment 83390 [details]
Error case: black arrow
Created attachment 83391 [details]
Error case: invisible
Created attachment 83392 [details]
Error case: X
> An "unthemed" cursor is *not* invisible, but the aliased default cursor > (eventually serverside shadowed) of the server. I've attached the cursors in question to this bug. They were captured using a program the source of which is also attached, and then converted to PNG with pnmtopng. Hope this helps. > export XCURSOR_THEME=DMZ-White > kwin --replace & Doesn't help. > Last chance: ensure your theme has a "size_all" cursor. > If no, smlink it to "fleur" or use this script: > http://kde-look.org/content/show.php/ > Cursor+theme+"fixing"+script?content=161037 It doesn't. I'll try this next. > Last chance: ensure your theme has a "size_all" cursor.
> If no, smlink it to "fleur" or use this script:
> http://kde-look.org/content/show.php/
> Cursor+theme+"fixing"+script?content=161037
Thanks, this resolved the 4.11 regression.
I do get: *** WARNING *** No usable cursor for O_HAND. I checked, and none of the themes installed have any of the valid alternatives for that cursor?
would be one of: openhand all_scroll all-scroll 9141b49c8149039304290b508d208c40 *** This bug has been marked as a duplicate of bug 327273 *** For the remaining issue, the GNOME/GTK people are not convinced it's their problem: https://bugzilla.gnome.org/show_bug.cgi?id=711582 try running "kapplymousetheme" for that matter. the idea that the WM would be the item to set the session theme seems odd to me. Ok, after I figured out you're supposed to run that with two empty arguments, that works. Actually, how is this supposed to work for real? kapplymousetheme just configures it once, but it can get broken mid-session (e.g. after intel-virtual-output as described above). > but it can get broken mid-session (e.g. after
> intel-virtual-output as described above).
Actually, this is probably not a KWin bug as metacity has the same problem (unless they're both buggy).
The command is invoked by "startkde" - i guess that "intel-virtual-output" resets the root window property (for whatever reason) -> just re-run kapplymousetheme (somehow seems to stress that 1. the WM is not the right tool to do this and 2. inheriting the property from the parenting window is not very robust ;-) > -> just re-run kapplymousetheme That's not a real solution, this should be automatic. Filed another bug here: https://bugs.freedesktop.org/show_bug.cgi?id=71439 |