[regression] sidepane scrolls even if not necessary

Bug #872311 reported by Oliver Joos
This bug affects 4 people
Affects Status Importance Assigned to Milestone
Fix Released

Bug Description

My sidepane index has more entries than the Gtk.Treeview can show. Now with Zim rev447 when I click on an entry, the Treeview is *always* scrolled so that the selected entry is about 10% above the bottom of the sidepane. This is annoying e.g. when jumping between 2 pages which are little more than 10% apart in the index, since the lower of them scrolls out of sight whenever the upper is clicked.

I checked rev437 which does not show this misbehavior. I hunted down this bug to the call of self.scroll_to_cell() in /gui/pageindex.py:select_treepath(). Surprisingly this method did not change since rev437! But I think it was not called in rev437 when an entry was clicked. I guess rev447 now calls it to change the current entry to bold (new feature).

As a workaround I changed the parameter "use_align" to False. Now my sidepane is scrolled as seldom as possible, which is nice IMHO! I understand what "use_align=True, row_align=0.9" should do, and I consider the current behavior as a bug of Gtk.TreeView.scroll_to_cell()! Nevertheless I vote for my workaround, since I prefer when such automatic scrolling only occurs when it is really necessary.

Revision history for this message
Oliver Joos (oliver-joos) wrote :
Revision history for this message
Adam Porter (alphapapa) wrote :

This bug can be quite an inconvenience at times.

Revision history for this message
Jaap Karssenberg (jaap.karssenberg) wrote :

Will commit (temporary) fix in rev 456

Changed in zim:
status: New → Fix Committed
importance: Undecided → High
Revision history for this message
Jaap Karssenberg (jaap.karssenberg) wrote :

Fixed in zim 0.54

Changed in zim:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.