Tiny Core Linux
Tiny Core Extensions => TCE Corepure64 => Topic started by: GNUser on October 25, 2021, 01:30:09 PM
-
I am on TCL12 x86_64 with Xorg-7.7, fluxbox, and xfe. I haven't changed the X cursor theme so I'm using the default theme (whatever it is).
I have this annoying problem in xfe where every time I double-click on a file to open it, the file opens fine in the appropriate application but the X cursor icon gets stuck as the waiting (watch) icon whenever the cursor is inside that particular xfe window. Xfe developer says it works fine for him so he does not seem to think it is an xfe bug. Running top in a terminal does not show any process hogging CPU or RAM.
The watch icon is annoying and seems to be off-centered, making it difficult to click on things when it is displayed. I'm looking for a hacky solution such as:
# ln -s arrow_icon watch_icon
Does anyone know where I can find the image files for the default Xorg cursor theme, so that I can try the hack above?
-
Hi GNUser
Applications each have their own cursor, and I'm pretty sure they are responsible for selecting the cursor they want
to display.
... Does anyone know where I can find the image files for the default Xorg cursor theme, so that I can try the hack above?
Maybe here:
http://tinycorelinux.net/12.x/x86_64/tcz/xcursor-themes.tcz.list
-
Hi, Rich. Thanks for that. No joy with xcursor-themes.tcz
First I deleted every file named watch and left_ptr_watch from the extension, did ln -s left_ptr watch and ln -s left_ptr left_ptr_watch for each cursor theme, re-created xcursor-themes.tcz with those change and put it in tce/optional/, then rebooted. This had no effect whatsoever.
Then I tried a more radical experiment: I deleted xcursor-themes.tcz from tce/optional/ and removed xcursor-themes.tcz from Xorg-7.7.tcz.dep. Then rebooted. Again, no effect whatsoever.
So still no joy finding the files for Xorg's default cursor theme. Could it be that there are no such files because the icons for X's default cursor theme are embedded in the Xorg binary itself?
-
Hi GNUser
Maybe it's /usr/local/share/icons/Adwaita/cursors/watch from adwaita-icon-theme:
http://tinycorelinux.net/12.x/x86_64/tcz/adwaita-icon-theme.tcz.list
-
Hi, Rich. No luck with that, either.
I did some more experiments and think that xfe is innocent here. I found one application (geany) that I launch from xfe that works well--geany is somehow able to inform xfe (or fluxbox or Xorg--I'm not sure which) that its startup is complete, triggering cursor change from busy (watch icon) to normal (left_ptr icon). On the other hand, all the other applications that I launch from xfe (e.g., mupdf, mpv, feh) don't seem to inform anyone when they are finished launching, which causes the busy (watch icon) cursor to linger in the xfe window.
I tried creating .desktop files for the problem applications and adding the StartupNotify=false key/value pair, but it doesn't make any difference. I'm running out of ideas.
-
One idea is to use wrapper scripts around the trouble applications. The wrapper scripts would be pretty simple: Find window id of active window (which would be xfe), change cursor_name in that window to left_ptr, launch application.
Does anyone know a command equivalent to this one, but for a specific window id rather than for root window?
xsetroot -cursor_name left_ptr
-
I found a solution. Launch xfe, then:
Edit -> Preferences -> General -> uncheck "Notify when applications start up"
Too easy :D
I never did find out the location of Xorg's default cursor theme, so I guess the thread is technically not solved. However, I think I found a less hacky solution to my problem.
-
Hi GNUser
In other words:
Applications each have their own cursor, and I'm pretty sure they are responsible for selecting the cursor they want
to display. ...
xfe was not reseting its cursor.
-
Hi, Rich. Yes, I think that's it. When "Notify..." is checked, xfe only resets its cursor after receiving some kind of signal from the launched application. Unfortunately, most of the GUI applications I use do not provide such signal.
Maybe GTK/qt applications provide the signal that xfe is looking for but non-GTK/qt applications don't? Just a wild guess.
-
The default cursor theme is built in, so you can't modify it as files. If you modify an external theme, you have to set that theme as your theme to see the effects.
.Xdefaults:
Xcursor.theme: whiteglass
-
https://specifications.freedesktop.org/startup-notification-spec/startup-notification-latest.txt
It appears to be a complex protocol that indeed needs to be implemented by the app or toolkit.
-
Thank you, curaga. Very interesting. I'm glad I decided to look into this minor nuisance because it led me down some deep and heretofore unexplored rabbit holes.
I guess it's possible that freedesktop.org solutions are complex because they tend to address complex problems. But it's also possible that the freedesktop folks just like to make things more complicated. Who knows.
Thread may be marked as solved.
One last thing: It turns out that xcursor-themes.tcz is not actually required by Xorg--and, in my case, its presence on my system was a red herring. Why not remove it from Xorg-7.7.tcz.dep? Removing it would be in keeping with TCL's philosophy of no bloat (i.e., if it's present on the system then it's either required or the user specifically asked for it).
-
Hi GNUser
... Thread may be marked as solved. ...
Done. :)
-
FWIW I removed xcursor-themes.tcz from Xorg-7.7.tcz.dep on all my machines that have a GUI, deleted xcursor-themes.tcz from tce/optional, rebooted. Default cursor theme continues to work perfectly across all GUI applications.
I think xcursor-themes.tcz could be safely removed from repo's Xorg-7.7.tcz.dep