Bug 201949 - sort-indicator hides pixmaps in gtktreeview
sort-indicator hides pixmaps in gtktreeview
Product: Fedora
Classification: Fedora
Component: sylpheed (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Michael Schwendt
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2006-08-09 17:36 EDT by Michael Schwendt
Modified: 2007-11-30 17:11 EST (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2006-09-23 04:31:47 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Sylpheed gtktreeview screenshot (16.22 KB, image/png)
2006-08-09 17:36 EDT, Michael Schwendt
no flags Details
Sylpheed gtktreeview screenshot (49.68 KB, image/png)
2006-09-13 08:53 EDT, Michael Schwendt
no flags Details

  None (edit)
Description Michael Schwendt 2006-08-09 17:36:28 EDT
$ rpm -q sylpheed gtk2

Starting with some version of Gtk+ 2.10.x in Rawhide, the gtktreeview
in Sylpheed started to look damaged.

See attached screenshot and notice the three small column titles left
of the "Subject" column. First of all, it looks as if there is a
sort-indicator in *every* column title, and second, for the three
left-most columns next to the "Subject" column, the arrow is even
printed over the pixmap images. And apparently it is impossible to
disable it via gtk_tree_view_column_set_sort_indicator(column,FALSE).
In Sylpheed's code, it is a call to gtk_tree_view_column_set_sort_column_id(..)
which makes the sort-indicators appear and overwrite the pixmaps.

It might be bad API usage. Though, the Gtk+ documentation doesn't warn
about improper usage and doesn't mention when it is impossible to
switch off the arrows.

Compared with FC5, gtk2-2.8.20-1 does not suffer from this problem.
An arrow is displayed only in the column title which is selected for
sorting. But still, with FC5, the sort-indicator appears also above
the pixmap when the column title is clicked, which doesn't seem to be
right either.

What is going on here?
Comment 1 Michael Schwendt 2006-08-09 17:36:28 EDT
Created attachment 133891 [details]
Sylpheed gtktreeview screenshot
Comment 2 Matthias Clasen 2006-08-11 20:31:23 EDT
What  version of gtk2-engines are you using ? And what theme  ?
Comment 3 Michael Schwendt 2006-08-12 03:10:56 EDT
gtk2-engines-2.7.6-1.fc6 and Clearlooks (it's the same with all themes).
Comment 4 Michael Schwendt 2006-08-22 16:22:25 EDT
Do you need more input?
Comment 5 Matthias Clasen 2006-09-05 15:32:34 EDT
I don't know what sylpheed is doing here, but it must be something wrong.
It is true that the way sort indicators are handled has changed in gtk 2.10,
and for a while, some theme engines were broken and drew sort arrows in every
column header. But this is all fixed now, and I only see one sort arrow in 
sylpheed now. Still, sylpheed does something to make the first few columns
(the ones which have an image in their header) as small as possible, and 
the image does not show up at all.  I'm inclined to say this is a sylpheed
problemm since other applications with similar treeview (e.g. evolution)
don't have this problem.
Comment 6 Michael Schwendt 2006-09-05 16:25:59 EDT
Maybe. Two points left, though:

 * Same code on FC5 (older gtk2) is not affected.

 * It seems impossible to disable the sort-indicator with
gtk_tree_view_column_set_sort_indicator(column,FALSE). In Sylpheed's code, a
call to gtk_tree_view_column_set_sort_column_id(..) makes the sort-indicator
appear again and overwrite the pixmaps.

If the call is taken out, the pixmaps look good as in FC5.
Comment 7 Michael Schwendt 2006-09-10 16:51:56 EDT
Another test, but I quit here as I cannot spend any more time on this.
When I add

  gtk_tree_view_column_set_resizable(column, TRUE);

and resize the column at run-time, the pixmap scrolls in from the left
and becomes visible more and more. Alignment is 0.5 (centre), but at
the right side of the column space, there is a blank area (room reserved
for the sort-indicator I assume) which occupies space, disturbs the
alignment, and kills the pixmap if the column is too small.
Comment 8 Michael Schwendt 2006-09-13 08:53:36 EDT
Created attachment 136149 [details]
Sylpheed gtktreeview screenshot
Comment 9 Michael Schwendt 2006-09-19 15:57:41 EDT
Upstream also thinks it is a bug in gtk2 and hence will work around
it in next release of Sylpheed.

> Fixed in svn trunk. I've stopped using
> gtk_tree_view_column_set_sort_column_id() and handled sort indicators
> all manually, because it never worked as expected in GTK+ 2.10.
> I think it's really a bug in GTK+ 2.10.
Comment 10 Matthias Clasen 2006-09-19 16:05:14 EDT
If they think it is an upstream bug, they need to file an upstream bug, ideally
with a simple testcase demonstrating what sylpheed is doing.
Comment 11 Michael Schwendt 2006-09-23 04:31:47 EDT
Instead, it is worked around in Sylpheed release >= 2.2.8.

Note You need to log in before you can comment on or make changes to this bug.