This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH 11/20] Set TUI locator height to 1
- From: Tom Tromey <tom at tromey dot com>
- To: gdb-patches at sourceware dot org
- Cc: Tom Tromey <tom at tromey dot com>
- Date: Tue, 10 Sep 2019 13:08:48 -0600
- Subject: [PATCH 11/20] Set TUI locator height to 1
- References: <20190910190857.6562-1-tom@tromey.com>
The TUI has long had code to resize the locator, using 2 as the
height. However the code has "1" in a comment, like:
locator->resize (2 /* 1 */ ,
This patch fixes the resizing code to set the height to 1. Doing this
revealed what was probably the reason for setting the height to 2 in
the first place: this caused the locator window to scroll. However,
this is easily handled by calling scrollok on the locator window.
gdb/ChangeLog
2019-09-10 Tom Tromey <tom@tromey.com>
* tui/tui-win.c (tui_resize_all, tui_adjust_win_heights): Use 1 as
height for locator.
* tui/tui-stack.c (tui_locator_window::rerender): Call scrollok.
* tui/tui-layout.c (show_source_disasm_command, show_data)
(show_source_or_disasm_and_command): Use 1 as height for locator.
---
gdb/ChangeLog | 8 ++++++++
gdb/tui/tui-layout.c | 18 ++++++------------
gdb/tui/tui-stack.c | 1 +
gdb/tui/tui-win.c | 9 ++++-----
4 files changed, 19 insertions(+), 17 deletions(-)
diff --git a/gdb/tui/tui-layout.c b/gdb/tui/tui-layout.c
index 33d3dd6cb87..03115a7baa1 100644
--- a/gdb/tui/tui-layout.c
+++ b/gdb/tui/tui-layout.c
@@ -511,10 +511,8 @@ show_source_disasm_command (void)
tui_term_width (),
0,
src_height - 1);
- locator->resize (2 /* 1 */ ,
- tui_term_width (),
- 0,
- (src_height + asm_height) - 1);
+ locator->resize (1, tui_term_width (),
+ 0, (src_height + asm_height) - 1);
if (TUI_CMD_WIN == NULL)
tui_win_list[CMD_WIN] = new tui_cmd_window ();
@@ -561,10 +559,8 @@ show_data (enum tui_layout_type new_layout)
tui_term_width (),
0,
data_height - 1);
- locator->resize (2 /* 1 */ ,
- tui_term_width (),
- 0,
- total_height - 1);
+ locator->resize (1, tui_term_width (),
+ 0, total_height - 1);
TUI_CMD_WIN->resize (TUI_CMD_WIN->height, tui_term_width (),
0, total_height);
@@ -635,10 +631,8 @@ show_source_or_disasm_and_command (enum tui_layout_type layout_type)
win_info = TUI_DISASM_WIN;
}
- locator->resize (2 /* 1 */ ,
- tui_term_width (),
- 0,
- src_height - 1);
+ locator->resize (1, tui_term_width (),
+ 0, src_height - 1);
win_info->resize (src_height - 1,
tui_term_width (),
0,
diff --git a/gdb/tui/tui-stack.c b/gdb/tui/tui-stack.c
index 163a5ad7255..6bfbb0e5ea6 100644
--- a/gdb/tui/tui-stack.c
+++ b/gdb/tui/tui-stack.c
@@ -229,6 +229,7 @@ tui_locator_window::rerender ()
if (handle != NULL)
{
std::string string = make_status_line ();
+ scrollok (handle, FALSE);
wmove (handle, 0, 0);
/* We ignore the return value from wstandout and wstandend, casting
them to void in order to avoid a compiler warning. The warning
diff --git a/gdb/tui/tui-win.c b/gdb/tui/tui-win.c
index d07a777360f..77044738ef6 100644
--- a/gdb/tui/tui-win.c
+++ b/gdb/tui/tui-win.c
@@ -580,8 +580,7 @@ tui_resize_all (void)
src_win->resize (new_height, screenwidth, 0, 0);
- locator->resize (2 /* 1 */, screenwidth,
- 0, new_height);
+ locator->resize (1, screenwidth, 0, new_height);
new_height = screenheight - (new_height + 1);
TUI_CMD_WIN->resize (new_height, screenwidth,
@@ -637,7 +636,7 @@ tui_resize_all (void)
second_win->resize (new_height, screenwidth,
0, first_win->height - 1);
- locator->resize (2 /* 1 */, screenwidth,
+ locator->resize (1, screenwidth,
0, second_win->origin.y + new_height);
/* Change the command window's height/width. */
@@ -1119,7 +1118,7 @@ tui_adjust_win_heights (struct tui_win_info *primary_win_info,
second_win->resize (second_win->height + second_split_diff,
width,
0, first_win->height - 1);
- locator->resize (2 /* 1 */, width,
+ locator->resize (1, width,
0, (second_win->origin.y
+ second_win->height + 1));
@@ -1155,7 +1154,7 @@ tui_adjust_win_heights (struct tui_win_info *primary_win_info,
else
second_win->resize (second_win->height, width,
0, first_win->height - 1);
- locator->resize (2 /* 1 */, width,
+ locator->resize (1, width,
0, (second_win->origin.y
+ second_win->height + 1));
TUI_CMD_WIN->origin.y = locator->origin.y + 1;
--
2.17.2