xaizek / vifm (License: GPLv2+) (since 2018-12-07)
Vifm is a file manager with curses interface, which provides Vi[m]-like environment for managing objects within file systems, extended with some useful ideas from mutt.
Commit d6966f59ae8974a764a219979b298dae43b622ba

Fix long dialog's title being hidden
Happened for dialogs with titles longer than the dialog's body and
control message because title's width wasn't taken into account when
computing dialog's width.
Author: xaizek
Author date (UTC): 2026-06-13 13:43
Committer name: xaizek
Committer date (UTC): 2026-06-13 13:46
Parent(s): ff304fc52873b110e18278ff8a5f0ac034dc124b
Signing key: 99DC5E4DB05F6BE2
Tree: 25f38fef0af8e9d7a8154f4649445236918443f8
File Lines added Lines deleted
ChangeLog 3 0
src/modes/dialogs/msg_dialog.c 1 1
File ChangeLog changed (mode: 100644) (index 683ff5a98..2c0c33a60)
253 253 Fixed startup commands being executed on loading sessions. Thanks to Fixed startup commands being executed on loading sessions. Thanks to
254 254 maxigaz. maxigaz.
255 255
256 Fixed dialog's title being hidden when it's longer than the dialog's
257 message.
258
256 259 0.14-beta to 0.14 (2025-02-08) 0.14-beta to 0.14 (2025-02-08)
257 260
258 261 Improved documentation on zh/zl menu keys a bit. Improved documentation on zh/zl menu keys a bit.
File src/modes/dialogs/msg_dialog.c changed (mode: 100644) (index 2f908a8db..a16bf82bd)
... ... draw_msg(const char title[], const char msg[], const char ctrl_msg[],
593 593 ctrl_msg_n = MAX(measure_sub_lines(ctrl_msg, /*skip_empty=*/0, &wctrl_msg), ctrl_msg_n = MAX(measure_sub_lines(ctrl_msg, /*skip_empty=*/0, &wctrl_msg),
594 594 1U); 1U);
595 595
596 int wmsg = measure_text_width(msg);
596 int wmsg = MAX(measure_text_width(title), measure_text_width(msg));
597 597
598 598 /* We start with maximum height and reduce is later. */ /* We start with maximum height and reduce is later. */
599 599 int max_h = sh - 2 - ui_stat_height(); int max_h = sh - 2 - ui_stat_height();
Hints

Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://code.reversed.top/user/xaizek/vifm

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@code.reversed.top/user/xaizek/vifm

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a pull request:
... clone the repository ...
... make some changes and some commits ...
git push origin master