Commit Briefs
tog: make SPACE page down in all views
ok op@, Mark Jamsek
fix fullscreen view regression introduced in 0dbbbe90fd
When cycling from a child view in fullscreen, the parent view is opened in a splitscreen with no border instead of fullscreen. Check the view mode when cycling between views and resize parent dimensions accordingly. ok op@
alias C-b/C-f to scroll page back/forward with b/f
Suggested by naddy. Remap 'f'ullscreen to 'F', and blame view key maps 'b' and 'B' to 'c' and 'C', respectively, per stsp's and naddy's suggestion. While here, remove trailing whitespace. ok naddy@
use the commitid in the patch diff3 conflict header
suggested by and ok stsp@
got patch: use diff3 to merge the changes
Parse the "blob -" metadata in diffs produced by 'got diff' and use the original file for patching. Then, use the diff3 with the current version of the file to merge the differences. This solves many failures automagically or at least turns them into a conflict. ok/improvements stsp@
patch_file: fill tmp with the patched file even in nop mode
future work with diff3 merge will need the fully patched file even in the nop mode ok stsp@
take tog selection cursor position into account when searching for next match
Patch by Mikhail ok op@ jamsek
fix unexpected imsg error after incomplete enumeration in got-read-pack
reported by jrick and op@ ok op@
tog: reset matched and search data after C-l
otherwise they point to free'd data. ok stsp@
zero the whole struct got_imsg_object before sending it
otherwise some fields may be unitialized and fail the validation done on the receiving side. ok stsp@
fix a segfault in tog diff
The f1 tempfile must always be created. Even if the initial diff has no objects on the left side, the view can be switched to a different diff which does have objects on both sides. When that happened, tog crashed. (To reproduce: open tog in got.git, hit G, hit Enter, hit <)
fix build of tog on sparc64 with -Werror
error was tog/tog.c:636: warning: function declaration isn't a prototype
account for the vborder in draw_commit
the vborder is drawn on top of the window and that can cause issues with double-width characters. Instead, account for it when computing the space available for the log message. ok stsp@
tog: resize main view
drawing the child view on top of the main view when the layout is split-screen can produce some ugly glitches when double-width characters are involved. (issue found by stsp) ok stsp@
simplify scroll_wline (now span_wline) and format_line
generalize scroll_wline to start at a specified offset so that we can reuse it to simplify format_line. While here, simplify scroll_wline (now called span_wline) too. ok and improvements by stsp@