Commit Briefs
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.
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
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
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
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
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
fix page-down/page-up scrolling in the tog tree view
problem reported by, fixed with lots of help from, and ok naddy