From 1bf45248bd6066e078abf792fd4c5c3c4ea9bf50 Mon Sep 17 00:00:00 2001 From: "n loewen (aider)" Date: Sun, 8 Jun 2025 09:00:28 +0100 Subject: [PATCH] fix: Improve status bar commit message display and resizing --- gtm | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/gtm b/gtm index 956823b..51d3ffc 100755 --- a/gtm +++ b/gtm @@ -268,6 +268,10 @@ def load_commit_content(state: AppState) -> AppState: parts = commit_line.split(' ', 3) # Split into hash, date, time, message short_message = parts[3] if len(parts) >= 4 else "" + # If commit_details['message'] is empty, use short_message as fallback + if not commit_details['message'].strip(): + commit_details['message'] = short_message + max_scroll_new = max(0, len(file_lines) - (state.height - state.status_bar_height)) right_scroll_offset = state.right_scroll_offset if reference_line: @@ -954,6 +958,8 @@ def draw_status_bars(stdscr, state): try: # Always draw the commit hash and first line of message on the bottom line bottom_line = state.height - 1 + + # Draw the commit hash with bold stdscr.addstr(bottom_line, 0, commit_info, curses.A_REVERSE | curses.A_BOLD) # Draw the author and branch on the right of the bottom line @@ -983,7 +989,7 @@ def draw_status_bars(stdscr, state): # Draw a handle for resizing the status bar try: handle_char = "≡" if state.dragging_status_bar else "=" - handle_text = handle_char * 3 + handle_text = handle_char * 5 # Make handle wider if state.status_bar_height > 2: handle_text += f" ({state.status_bar_height} lines)" stdscr.addstr(status_bar_start, state.width // 2 - len(handle_text) // 2, handle_text, curses.A_REVERSE | curses.A_BOLD) @@ -1151,8 +1157,8 @@ def handle_mouse_input(stdscr, state: AppState) -> AppState: if bstate & curses.BUTTON1_PRESSED: if state.show_sidebar and abs(mx - state.divider_col) <= 1: return replace(state, dragging_divider=True) - elif my == status_bar_start and abs(mx - (state.width // 2)) <= 2: - # Clicked on the status bar handle + elif my == status_bar_start and abs(mx - (state.width // 2)) <= 3: + # Clicked on the status bar handle (wider click area) return replace(state, dragging_status_bar=True) else: focus = "right"