Mutually exclusive GtkStateTypes -- A Design Flaw?



Hi List

This seems to be causing at least these problems, from what I can see. Please correct me if I'm wrong:

The age-old "can't click button after setting it sensitive" problem: http://bugzilla.gnome.org/show_bug.cgi?id=56070 is caused because it is technically impossible for a widget to be both PRELIGHT and INSENSITIVE. The widget receives no mouse-in event when INSENSITIVE, and so when it is set sensitive again, the state incorrectly goes to NORMAL.

I have written a custom renderer for GtkExpander in Ubuntulooks with the idea of using the foreground colour and modulating the opacity depending on whether it is PRELIGHT or not. The problem here is that I need to be able to detect if it is in a cell renderer row with GTK_CELL_RENDERER_SELECTED in its GtkCellRendererState flags, but there is no mechanism for passing this information to paint_expander. Basically, I need to be able to set the colour based on SELECTED, and the opacity based on PRELIGHT, but again this is impossible.

Also, but I'm not sure as I haven't really looked into it, "ticks" that are used in toggle menu items, and the X, _ and [ ] icons used in window menus are perhaps suffering the same fate. They always seem to render as the foreground colour, even if you're using a dark theme. This is not a problem in Qt, and I noticed it immediately when messing around with Last.fm the other day!

This seems to be impeding both functionality and visual appearance. So what can we do about this?

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]