Re: GtkIconView set_item_width question



On Sat, 2005-03-12 at 13:57 +0530, Santhosh wrote:
Dave,

http://martini.gurumeditation.it/gtkiconview_problem.jpg)

This problem will not arise if you use GTK_ORIENTATION_HORIZONTAL (but
this is not a good solution..)
It is a known problem with GtkIconView. I had  filed a bug regarding
this problem during gtk-2.5 development releases and It was fixed in
gtk-2.6.0 [But it was not fully fixed].
[http://bugzilla.gnome.org/show_bug.cgi?id=152483]

I have also got the same misalignment problem when I ported my
software to gtk-2.6.0. It is a strange one and it arises only when the
lenth of the text (below the icon) is somewhat larger [In my case it
was 28 characters - it also depend on the sum of the widths of all the
characters i.e.. the width of the PangoLayout which is used to display
the text (I may be wrong)]

I didn't hack on his problem. I have just switched my GtkIconView
Orientation to GTK_ORIENTATION_HORIZONTAL and everything seemed to
work fine for me.

I didn't even reopened the bug because I was unable to reproduce it.
This bug creeps in when I view the contents of my home folder(in my
sample browser which uses GtkIconView) which contains a long-filename.
When I renamed that file, I got everything correct. Probably you can
reopen the bug (if you wish).

 
 How can you see some icon (like Duel) take 2 much space...I can't find why.
 

It is the problem that still exists in the fixed version of gtk+. I
believe it is the problem with the algorithm which layouts the icons
in the GkIconView.


Some items get 2 cells for some reason. It is possible that we fail to
take padding into account when deciding how much space to give to the
text. The relevant code is in gtk_icon_view_calculate_item_size:

 maximum_layout_width = MAX (item_width, item->pixbuf_width);

...

 item->width = MAX (item->layout_width + padding, item->pixbuf_width);

Maybe we miss a maxmium_layout_width -= padding there. 

Matthias






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