X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/923602fefbfadd47e0b675d97aa1b28a16971da0..09053075225fec8a6cf7a72017a6dfc1ec6b6f0c:/src/w32menu.c diff --git a/src/w32menu.c b/src/w32menu.c index 40b8f5f82a..964b965fac 100644 --- a/src/w32menu.c +++ b/src/w32menu.c @@ -25,15 +25,10 @@ along with GNU Emacs. If not, see . */ #include "lisp.h" #include "keyboard.h" -#include "keymap.h" #include "frame.h" -#include "termhooks.h" -#include "window.h" #include "blockinput.h" -#include "character.h" #include "buffer.h" -#include "charset.h" -#include "coding.h" +#include "coding.h" /* for ENCODE_SYSTEM */ #include "menu.h" /* This may include sys/types.h, and that somehow loses @@ -54,8 +49,6 @@ along with GNU Emacs. If not, see . */ #include #endif -#include "dispextern.h" - #include "w32common.h" /* for osinfo_cache */ #undef HAVE_DIALOGS /* TODO: Implement native dialogs. */ @@ -501,7 +494,10 @@ set_frame_menubar (struct frame *f, bool first_time, bool deep_p) /* Force the window size to be recomputed so that the frame's text area remains the same, if menubar has just been created. */ if (old_widget == NULL) - adjust_frame_size (f, -1, -1, 2, false, Qmenu_bar_lines); + { + windows_or_buffers_changed = 23; + adjust_frame_size (f, -1, -1, 2, false, Qmenu_bar_lines); + } } unblock_input (); @@ -1104,14 +1100,14 @@ simple_dialog_show (struct frame *f, Lisp_Object contents, Lisp_Object header) if (STRINGP (temp)) { - char *utf8_text = SDATA (ENCODE_UTF_8 (temp)); + char *utf8_text = SSDATA (ENCODE_UTF_8 (temp)); /* Be pessimistic about the number of characters needed. Remember characters outside the BMP will take more than one utf16 word, so we cannot simply use the character length of temp. */ int utf8_len = strlen (utf8_text); text = SAFE_ALLOCA ((utf8_len + 1) * sizeof (WCHAR)); - utf8to16 (utf8_text, utf8_len, text); + utf8to16 ((unsigned char *)utf8_text, utf8_len, text); } else { @@ -1140,7 +1136,7 @@ simple_dialog_show (struct frame *f, Lisp_Object contents, Lisp_Object header) encoding so questions representable by the system codepage are encoded properly. */ if (STRINGP (temp)) - text = SDATA (ENCODE_SYSTEM (temp)); + text = SSDATA (ENCODE_SYSTEM (temp)); else text = ""; @@ -1353,7 +1349,7 @@ add_menu_item (HMENU menu, widget_value *wv, HMENU item) else utf16_string = SAFE_ALLOCA ((utf8_len + 1) * sizeof (WCHAR)); - utf8to16 (out_string, utf8_len, utf16_string); + utf8to16 ((unsigned char *)out_string, utf8_len, utf16_string); return_value = unicode_append_menu (menu, fuFlags, item != NULL ? (UINT_PTR) item : (UINT_PTR) wv->call_data,