GNOME Bugzilla – Bug 558323
glitches when popping up combos in treeviews
Last modified: 2009-08-27 14:24:59 UTC
I encountered a problem when using a cellrenderercombo and setting the model in the underlying store (i.e. the renderer's "model" property set retrieved as an attribute). What happens: - The combo shows up empty and in prelight state and sits there - upon clicking, 2 things can happen, a.) the proper list drops down, and prelight/selection just doesnt work b.) the proper list drops down, probably over 100 times per second - in either scenarios its difficult to get the combo to ever go away (involves lots of clicking). I'm filing this as a combobox bug since tracing the code showed me that the cellrenderer and celleditable start_editing seem to pass fine, and they dont get called repeatedly while the combo keeps dropping down its menu... I'm sure this is some kind of regression, since compiling my app back into /usr against installed gtk+ (I have 2.12.9 in my gtk+-2.0.pc) and it seems to work fine there. Note I havent updated my trunk in a little while, I will some time next week and I'll let you know if the problem went away.
Actually more info, in 2.12, they dont actually work properly either, but better. in 2.12 they are activatable by key-press (enter on a focused cell) but you cant get the combo to drop down by clicking on it (same scenario, with model set in the underlying store...)
I built trunk just now, problem still there.
A testcase would be awesome for this.
Created attachment 121713 [details] [review] This source file demonstrates the problem wasnt too hard to rip out the naked dialog :) have fun :)
This fixes it: 2008-10-31 Matthias Clasen <mclasen@redhat.com> Bug 558323 – glitches when popping up combos in treeviews * gtk/gtkcellrenderercombo.c (gtk_cell_renderer_combo_set_property): Don't set the model property on the combo box, since that leads to loops. Note to self: never pass cellrenderer properties thru to cell editors after start-editing, since the renderer _will_ be used to render other cells while one is being edited.
*** Bug 559109 has been marked as a duplicate of this bug. ***
should the bug be closed?
Think so ;) Closing.