comparison src/event-msw.c @ 298:70ad99077275 r21-0b47

Import from CVS: tag r21-0b47
author cvs
date Mon, 13 Aug 2007 10:39:40 +0200
parents 4b85ae5eabfb
children 33bdb3d4b97f
comparison
equal deleted inserted replaced
297:deca3c1083ac 298:70ad99077275
879 e->event.misc.object = object; 879 e->event.misc.object = object;
880 880
881 mswindows_enqueue_dispatch_event (event); 881 mswindows_enqueue_dispatch_event (event);
882 } 882 }
883 883
884 static void 884 void
885 mswindows_enqueue_magic_event (HWND hwnd, UINT message) 885 mswindows_enqueue_magic_event (HWND hwnd, UINT message)
886 { 886 {
887 Lisp_Object emacs_event = Fmake_event (Qnil, Qnil); 887 Lisp_Object emacs_event = Fmake_event (Qnil, Qnil);
888 struct Lisp_Event* event = XEVENT (emacs_event); 888 struct Lisp_Event* event = XEVENT (emacs_event);
889 889
1915 { 1915 {
1916 /* Yes, we have to size again */ 1916 /* Yes, we have to size again */
1917 mswindows_size_frame_internal ( frame, 1917 mswindows_size_frame_internal ( frame,
1918 FRAME_MSWINDOWS_TARGET_RECT 1918 FRAME_MSWINDOWS_TARGET_RECT
1919 (frame)); 1919 (frame));
1920 /* Reset to we do not get here again */ 1920 /* Reset so we do not get here again. The SetWindowPos call in
1921 xfree (FRAME_MSWINDOWS_TARGET_RECT (frame)); 1921 * mswindows_size_frame_internal can cause recursion here. */
1922 FRAME_MSWINDOWS_TARGET_RECT (frame) = 0; 1922 if (FRAME_MSWINDOWS_TARGET_RECT (frame))
1923 {
1924 xfree (FRAME_MSWINDOWS_TARGET_RECT (frame));
1925 FRAME_MSWINDOWS_TARGET_RECT (frame) = 0;
1926 }
1923 } 1927 }
1924 else 1928 else
1925 { 1929 {
1926 if (!msframe->sizing && !FRAME_VISIBLE_P (frame)) 1930 if (!msframe->sizing && !FRAME_VISIBLE_P (frame))
1927 mswindows_enqueue_magic_event (hwnd, XM_MAPFRAME); 1931 mswindows_enqueue_magic_event (hwnd, XM_MAPFRAME);