diff options
author | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2025-08-25 14:32:38 +0300 |
---|---|---|
committer | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2025-08-26 21:33:40 +0300 |
commit | d1c20b8388105fd1027ea2aaf65dad772f9fe16f (patch) | |
tree | 2de220dd1c20fcbf11d4781d76380b55d66fdc2a /src/interface-curses/curses-info-popup.c | |
parent | f525d8f09ec0e60effe70623a19c700a3a202db0 (diff) | |
download | sciteco-libxcurses.tar.gz |
WIPlibxcurses
This is mostly for XDG/4 compatibility.
Diffstat (limited to 'src/interface-curses/curses-info-popup.c')
-rw-r--r-- | src/interface-curses/curses-info-popup.c | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/src/interface-curses/curses-info-popup.c b/src/interface-curses/curses-info-popup.c index 332d434..13d8d65 100644 --- a/src/interface-curses/curses-info-popup.c +++ b/src/interface-curses/curses-info-popup.c @@ -23,6 +23,9 @@ #include <curses.h> +#undef lines +#undef buttons + #include "list.h" #include "string-utils.h" #include "interface.h" @@ -71,7 +74,8 @@ teco_curses_info_popup_add(teco_curses_info_popup_t *ctx, teco_popup_entry_type_ static void teco_curses_info_popup_init_pad(teco_curses_info_popup_t *ctx, attr_t attr) { - int cols = getmaxx(stdscr); /**! screen width */ + G_GNUC_UNUSED gint cols, rows; /**! screen size */ + getmaxyx(stdscr, rows, cols); int pad_lines; /**! pad height */ gint pad_cols; /**! entry columns */ gint pad_colwidth; /**! width per entry column */ @@ -165,7 +169,8 @@ teco_curses_info_popup_show(teco_curses_info_popup_t *ctx, attr_t attr) if (!ctx->pad) teco_curses_info_popup_init_pad(ctx, attr); - gint pad_lines = getmaxy(ctx->pad); + G_GNUC_UNUSED gint pad_cols, pad_lines; + getmaxyx(ctx->pad, pad_lines, pad_cols); /* * Popup window can cover all but one screen row. @@ -227,7 +232,8 @@ teco_curses_info_popup_show(teco_curses_info_popup_t *ctx, attr_t attr) const teco_string_t * teco_curses_info_popup_getentry(teco_curses_info_popup_t *ctx, gint y, gint x) { - int cols = getmaxx(stdscr); /**! screen width */ + G_GNUC_UNUSED gint lines, cols; /**! screen dimensions */ + getmaxyx(stdscr, lines, cols); gint pad_cols; /**! entry columns */ gint pad_colwidth; /**! width per entry column */ @@ -265,8 +271,10 @@ teco_curses_info_popup_getentry(teco_curses_info_popup_t *ctx, gint y, gint x) void teco_curses_info_popup_scroll_page(teco_curses_info_popup_t *ctx) { - gint lines = getmaxy(stdscr); - gint pad_lines = getmaxy(ctx->pad); + G_GNUC_UNUSED gint lines, cols; + getmaxyx(stdscr, lines, cols); + G_GNUC_UNUSED gint pad_lines, pad_cols; + getmaxyx(ctx->pad, pad_lines, pad_cols); gint popup_lines = MIN(pad_lines + 1, lines - 1); /* progress scroll position */ @@ -281,8 +289,10 @@ teco_curses_info_popup_scroll_page(teco_curses_info_popup_t *ctx) void teco_curses_info_popup_scroll(teco_curses_info_popup_t *ctx, gint delta) { - gint lines = getmaxy(stdscr); - gint pad_lines = getmaxy(ctx->pad); + G_GNUC_UNUSED gint lines, cols; + getmaxyx(stdscr, lines, cols); + G_GNUC_UNUSED gint pad_lines, pad_cols; + getmaxyx(ctx->pad, pad_lines, pad_cols); gint popup_lines = MIN(pad_lines + 1, lines - 1); ctx->pad_first_line = MAX(ctx->pad_first_line+delta, 0); |