[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master e851da3: Partially revert the fix for bug #11732
From: |
Eli Zaretskii |
Subject: |
[Emacs-diffs] master e851da3: Partially revert the fix for bug #11732 |
Date: |
Sat, 07 Mar 2015 10:51:12 +0000 |
branch: master
commit e851da3540d29122fd3b53ae26d766237c85b989
Author: Eli Zaretskii <address@hidden>
Commit: Eli Zaretskii <address@hidden>
Partially revert the fix for bug #11732
src/w32fns.c <ImmReleaseContext_Proc, ImmSetCompositionWindow_Proc>:
Fix typedefs to be consistent with the corresponding w32 API
signatures.
(w32_wnd_proc) <WM_IME_STARTCOMPOSITION>: Don't invoke
DefWindowProc if we successfully handled the message, as doing so
causes problems in displaying selection dialogs.
---
src/ChangeLog | 9 +++++++++
src/w32fns.c | 14 +++++++++-----
2 files changed, 18 insertions(+), 5 deletions(-)
diff --git a/src/ChangeLog b/src/ChangeLog
index 6b658f5..fc77618 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,12 @@
+2015-03-07 Eli Zaretskii <address@hidden>
+
+ * w32fns.c <ImmReleaseContext_Proc, ImmSetCompositionWindow_Proc>:
+ Fix typedefs to be consistent with the corresponding w32 API
+ signatures.
+ (w32_wnd_proc) <WM_IME_STARTCOMPOSITION>: Don't invoke
+ DefWindowProc if we successfully handled the message, as doing so
+ causes problems in displaying selection dialogs. (Bug#11732)
+
2015-03-05 Paul Eggert <address@hidden>
Work around x86 glibc backtrace bug
diff --git a/src/w32fns.c b/src/w32fns.c
index 64532ae..6abb433 100644
--- a/src/w32fns.c
+++ b/src/w32fns.c
@@ -157,8 +157,8 @@ typedef BOOL (WINAPI * TrackMouseEvent_Proc)
typedef LONG (WINAPI * ImmGetCompositionString_Proc)
(IN HIMC context, IN DWORD index, OUT LPVOID buffer, IN DWORD bufLen);
typedef HIMC (WINAPI * ImmGetContext_Proc) (IN HWND window);
-typedef HWND (WINAPI * ImmReleaseContext_Proc) (IN HWND wnd, IN HIMC context);
-typedef HWND (WINAPI * ImmSetCompositionWindow_Proc) (IN HIMC context,
+typedef BOOL (WINAPI * ImmReleaseContext_Proc) (IN HWND wnd, IN HIMC context);
+typedef BOOL (WINAPI * ImmSetCompositionWindow_Proc) (IN HIMC context,
IN COMPOSITIONFORM *form);
typedef HMONITOR (WINAPI * MonitorFromPoint_Proc) (IN POINT pt, IN DWORD
flags);
typedef BOOL (WINAPI * GetMonitorInfo_Proc)
@@ -3324,9 +3324,13 @@ w32_wnd_proc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM
lParam)
set_ime_composition_window_fn (context, &form);
release_ime_context_fn (hwnd, context);
}
- /* Pass WM_IME_STARTCOMPOSITION to DefWindowProc, so that the
- composition window will actually be displayed. */
- goto dflt;
+ /* We should "goto dflt" here to pass WM_IME_STARTCOMPOSITION to
+ DefWindowProc, so that the composition window will actually
+ be displayed. But doing so causes trouble with displaying
+ dialog boxes, such as the file selection dialog or font
+ selection dialog. So something else is needed to fix the
+ former without breaking the latter. See bug#11732. */
+ break;
case WM_IME_ENDCOMPOSITION:
ignore_ime_char = 0;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] master e851da3: Partially revert the fix for bug #11732,
Eli Zaretskii <=