Commit Briefs

Stefan Sperling

make ^L in the tog log view stick to branches/tags selected via the -c option

Previously, the log view would remember the branch of the work tree in which tog was started, and jump back to that branch upon ^L even if a different branch was requested via -c. ok naddy


Stefan Sperling

do not recompute the displayed diff if '<' or '>' command cannot advance

Recomputing a diff can take time. Only do it if a different commit is going to be displayed.


Stefan Sperling

garbage-collect pointless main_view variable in view_loop()

This short-cut is not necessary and was buggy: The pointer was not updated even if the main view had changed. Removing this code fixes a problem on FreeBSD where pressing 'q' in a child view caused tog to exit. ok naddy


Christian Weisgerber

fix move to next/prev commit in diff view when the log view is not displayed

Original analysis and final tweak by yours truly, all the hard work of fixing the program logic by stsp. ok stsp


Stefan Sperling

pass reference name along when a log view is opened from a ref view

ok naddy



Stefan Sperling

make tog call pledge(2) directly in main() instead of per-command

All of tog's pledges are currently the same, and they must be the same because tog allows switching between available command views at run-time. ok tracey



Stefan Sperling

tog's view_set_child() never returned an error; simplify accordingly

ok naddy


Stefan Sperling

remove redundant "child_focussed" variable from struct tog_view

ok naddy


Christian Weisgerber

tog's log view needs to request more commits when the window expands

ok stsp


Christian Weisgerber

pass only the view state to scroll functions that don't need the full view

ok stsp


Christian Weisgerber

reverse tree_view_visit_subtree() parameters for consistency

ok stsp



Christian Weisgerber

trim redundant and used parameters from draw_tree_entries()

ok stsp


Christian Weisgerber

trim redundant parameters from draw_blame()

ok stsp


Christian Weisgerber

trim redundant parameters from draw_file()

ok stsp


Christian Weisgerber

trim redundant and unused parameters from draw_commits() and draw_commit()

ok stsp


Christian Weisgerber

trim redundant and unused parameters from run_blame()

ok stsp


Christian Weisgerber

trim redundant parameters from log_scroll_* and trigger_log_thread functions

Also rename scroll_{up,down} to log_scroll_{up,down}; requested by stsp. ok stsp


Christian Weisgerber

trim redundant parameters from {ref,tree}_scroll_{up,down} functions

Pass only the view and scroll amount to these functions; remove unused parameters and those that are contained in the view state. ok stsp



Stefan Sperling

fix page-down/page-up scrolling in the tog tree view

problem reported by, fixed with lots of help from, and ok naddy



Christian Weisgerber

fix entry selection when moving to the parent in tog's tree view

The tree view attempts to keep the scroll position of an already visited parent directory intact. If we start out by viewing a subtree and then move up, the scroll position of the parent isn't actually available since the parent tree was never nagivated by the user. In this case tree_view_walk_path() has to fill in some values. The only parent entry we know about in this case is the one which was traversed to reach the child. The best we can do is to lock the parent's scroll position such that the traversed child entry appears at the top of the list if moving up to the parent's view. If we then navigate down again and return, the parent's scroll position will start to be retained and restored properly. Analysis and draft patch by stsp, initial report and simpler fix by yours truly. ok stsp