This page describes procedures in the Linux distribution Ubuntu (10.04).

This is as a workaround to a bug that left some tooltips "hanging" and were generally annoying. It may also be a matter of taste. Credit to ERICwithanH (poster #6) on Ubuntu Forums for getting me started here.

If you want to disable the "Click to start dragging" tooltip (when you hover over a workspace in the workspace switcher) and that for the calendar, so they don't linger around or pop up in the first place, do the following:

Start ccsm, go to Accessibility —> Opacity, Brightness and Saturation —> Opacity —> Window specific settings. Make sure you create settings like this:

class=^Clock-applet$ & type=Tooltip 0
class=^Wnck-applet$ & type=Tooltip 0

That disables the tooltips both for the calendar, and for the workspace switcher.

Let me present that in all its glory:



The above example may also disable some other tooltips (such as those for windows listed on the taskbar). That said, it might just be necessary to disable lots of tool-tips in all surrounding panels to be sure to avoid any bugs as a result of them being there. Additionally, I have of course not come across all possible scenarios. Anyway, try with just the above two cases to begin with.

Be careful with the settings here. It's possible to hide (as in, "touch but do not look") entire programs! ;-)

More notes (possibly not helpful)

Changes in ccsm may be immediate (you don't have to close the program), but unless I missed something they're not always so for some reason (read: bug, unless I was too confused while trying to narrow down the workspace switcher problem). Anyway, be methodical here and get one change at a time up and running.

You could also add a filter for the class Gnome-panel. Ironically enough, however, it seems that this would remove the only tool tips that might actually be somewhat useful. ;-)

Now, say that you need to find out what "class" to use (this sometimes has a similar value as the "name" attribute, see the said Compiz wiki page on this for details). In principle, you can use click "New", then click on the green plus sign, select some attribute in the "Type" drop down, click "Grab", and then click on the area of your choice. How helpful that dialog is otherwise I don't know, it crashed on me at least once and I had to restart at least metacity to restore order. Thus, I'd use it just for the "Grab" feature. Even then, though, it creates a junk entry in there that you'll have to delete manually. However, I'd rather use xprop / xwininfo since they seem to get the job done without weird side effects etc.

Background / trivia

Below are some steps I took to achieve the above result.

Just to make myself feel bad, a quick web search (now that I know what to search for) shows that one of the first people to figure out the critical part did so three years ago. Sigh! :-) That thread also mentions a few other situations like XFCE and KDE.

Basically I had to brute force a bit to find out what the things were called, but it went much quicker once I got the hang of things (knowing one can use regular expressions, for one).

In retrospect those names correlate quite well with the applications' names:

% pgrep -fl gnome-panel
26247 gnome-panel --sm-client-id <...>
26327 /usr/lib/gnome-panel/wnck-applet --oaf-activate-iid=OAFIID:GNOME_Wncklet_Factory --oaf-ior-fd=18
26338 /usr/lib/gnome-panel/clock-applet --oaf-activate-iid=OAFIID:GNOME_ClockApplet_Factory --oaf-ior-fd=32
26341 /usr/lib/gnome-panel/notification-area-applet --oaf-activate-iid=OAFIID:GNOME_NotificationAreaApplet_Factory --oaf-ior-fd=26

so now we could find one more thing to disable tooltips for if we feel like it.

If you want to find out a window ID (which both xprop and xwininfo can use with the -id parameter) try, as a starting point, this Bash script I found. Basically it calls xwininfo to get all candidate windows, then loops through each of them until a call to xwininfo -id for a given candidate matches the PID being looked for.

After finding a Compiz wiki page however, I found out two things:

  1. You can actually provide regular expressions, including the characters we all know and love: .-^$[] (those are the ones I've bothered to test so far). Note: it's case sensitive. If you really need case insensitivity for some reason, use the brackets or find some other way (try matching the name attribute instead or so). Use the xprop command as described on the wiki page if you need to find out what is what.
  2. The name and class attributes are actually quite different things, although they have similar values at times.

A desperate solution

If you want to disable all tooltips (not just for the Gnome panels), start ccsm , go to Accessibility —> Opacity, Brightness and Saturation —> Opacity —> Window specific settings. Make sure you create a setting like this:

(type=Tooltip) 0

This will ensure the "Click to start dragging" tooltip (when you hover over a workspace in the workspace switcher) among other things won't linger around or pop up in the first place. (Maybe also the "Current workspace" popup has / had that problem since it's the same applet.)

A solution to someone else's problem

One suggestion to disable just the tooltips in some of the Gnome applications was to use something like:

(name=gnome-panel & type=Tooltip) 0

I haven't had the problem that's described in the beginning of the forum thread, so I wouldn't know, but there it is. The thread also goes into some additional steps you can take in case you have a problem with flickering (I don't, so I can't really test that bit here).

A beginning

My main problem with disabling all tooltips is I have no tooltip on XKCD (those specified in the title attribute) in Firefox. That and Thunderbird. So after a while I ended up with this:

!(class=Firefox) & !(class=Thunderbird) & (type=Tooltip) 0

Now you'll have no tooltips except for those in Firefox and Thunderbird. It works, but it's not very convenient to say the least. Note: it is possible to disable tooltips in Firefox via about:config , so make sure that is set to true there.

A better solution

(See the beginning of this document.)

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License