Mercurial > vim
diff src/popupwin.c @ 17584:65a8099fc0e8 v8.1.1789
patch 8.1.1789: cannot see file name of preview popup window
commit https://github.com/vim/vim/commit/90f3e7ac56056ffad50bac9d4497b5830c37ab26
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Aug 1 22:40:44 2019 +0200
patch 8.1.1789: cannot see file name of preview popup window
Problem: Cannot see file name of preview popup window.
Solution: Add the file name as the title.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 01 Aug 2019 22:45:05 +0200 |
parents | d5e5d0fc3fa8 |
children | 506dd2efcbb2 |
line wrap: on
line diff
--- a/src/popupwin.c +++ b/src/popupwin.c @@ -3198,4 +3198,41 @@ popup_close_preview() } } +/* + * Set the title of the popup window to the file name. + */ + void +popup_set_title(win_T *wp) +{ + if (wp->w_buffer->b_fname != NULL) + { + char_u dirname[MAXPATHL]; + size_t len; + + mch_dirname(dirname, MAXPATHL); + shorten_buf_fname(wp->w_buffer, dirname, FALSE); + + vim_free(wp->w_popup_title); + len = STRLEN(wp->w_buffer->b_fname) + 3; + wp->w_popup_title = alloc((int)len); + if (wp->w_popup_title != NULL) + vim_snprintf((char *)wp->w_popup_title, len, " %s ", + wp->w_buffer->b_fname); + redraw_win_later(wp, VALID); + } +} + +/* + * If there is a preview window, update the title. + * Used after changing directory. + */ + void +popup_update_preview_title(void) +{ + win_T *wp = popup_find_preview_window(); + + if (wp != NULL) + popup_set_title(wp); +} + #endif // FEAT_TEXT_PROP