# HG changeset patch # User Bram Moolenaar # Date 1617041703 -7200 # Node ID 982786f8454d44887da87b16b3544d1a12efc649 # Parent fa127ef5ba0ebfcc8fc296eb02a9d9aef332480b patch 8.2.2674: Motif: cancelling the font dialog resets the font Commit: https://github.com/vim/vim/commit/9dbe701fe19597ad59c0e0c70a05927b587bea9f Author: Bram Moolenaar Date: Mon Mar 29 20:10:26 2021 +0200 patch 8.2.2674: Motif: cancelling the font dialog resets the font Problem: Motif: cancelling the font dialog resets the font. Solution: When no font is selected to not change the font. (closes https://github.com/vim/vim/issues/7825, closes #8035) Fix compiler warnings. diff --git a/src/gui_motif.c b/src/gui_motif.c --- a/src/gui_motif.c +++ b/src/gui_motif.c @@ -1996,7 +1996,11 @@ do_mnemonic(Widget w, unsigned int keyco * Callback routine for dialog mnemonic processing. */ static void -mnemonic_event(Widget w, XtPointer call_data UNUSED, XKeyEvent *event) +mnemonic_event( + Widget w, + XtPointer call_data UNUSED, + XKeyEvent *event, + Boolean *b UNUSED) { do_mnemonic(w, event->keycode); } @@ -3565,7 +3569,8 @@ find_replace_callback( find_replace_keypress( Widget w UNUSED, SharedFindReplace *frdp, - XKeyEvent *event) + XKeyEvent *event, + Boolean *b UNUSED) { KeySym keysym; diff --git a/src/gui_x11.c b/src/gui_x11.c --- a/src/gui_x11.c +++ b/src/gui_x11.c @@ -1753,7 +1753,13 @@ gui_mch_init_font( // A font name equal "*" is indicating, that we should activate the font // selection dialogue to get a new font name. So let us do it here. if (font_name != NULL && STRCMP(font_name, "*") == 0) + { font_name = gui_xm_select_font(hl_get_font_name()); + + // Do not reset to default font except on GUI startup. + if (font_name == NULL && !gui.starting) + return OK; + } #endif #ifdef FEAT_XFONTSET diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -751,6 +751,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 2674, +/**/ 2673, /**/ 2672,