diff --git a/src/w32fns.c b/src/w32fns.c index 10c8af7..0fe6a6f 100644 --- a/src/w32fns.c +++ b/src/w32fns.c @@ -2112,6 +2112,7 @@ my_post_msg (W32Msg * wmsg, HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) post_msg (wmsg); } +#ifdef WINDOWSNT /* The Windows keyboard hook callback. */ static LRESULT CALLBACK funhook (int code, WPARAM w, LPARAM l) @@ -2370,6 +2371,7 @@ remove_w32_kbdhook (void) kbdhook.hook = NULL; } } +#endif /* WINDOWSNT */ /* Mark a specific key combination as hooked, preventing it to be handled by the system. */ @@ -4734,12 +4736,16 @@ w32_wnd_proc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) my_post_msg (&wmsg, hwnd, msg, wParam, lParam); goto dflt; +#ifdef WINDOWSNT case WM_CREATE: setup_w32_kbdhook (); goto dflt; +#endif case WM_DESTROY: +#ifdef WINDOWSNT remove_w32_kbdhook (); +#endif CoUninitialize (); return 0; diff --git a/src/w32term.h b/src/w32term.h index aed89d8..7c23bc4 100644 --- a/src/w32term.h +++ b/src/w32term.h @@ -738,11 +738,15 @@ extern int handle_file_notifications (struct input_event *); extern void w32_initialize_display_info (Lisp_Object); extern void initialize_w32_display (struct terminal *, int *, int *); +#ifdef WINDOWSNT /* Keyboard hooks. */ extern void setup_w32_kbdhook (void); extern void remove_w32_kbdhook (void); extern int check_w32_winkey_state (int); #define w32_kbdhook_active (os_subtype != OS_9X) +#else +#define w32_kbdhook_active 0 +#endif /* Keypad command key support. W32 doesn't have virtual keys defined for the function keys on the keypad (they are mapped to the standard