#include "gdk.h"
#include "gdkinternals.h"
-#include "gdkdrawable-win32.h"
-#include "gdkwindow-win32.h"
-#include "gdkpixmap-win32.h"
#include "gdkinput-win32.h"
#include "gdkkeysyms.h"
GdkWindowImplWin32 *window_impl;
#define ASSIGN_WINDOW(rhs) \
(window = rhs, \
- window_impl = GDK_WINDOW_IMPL_WIN32 (GDK_WINDOW_OBJECT (window)->impl))
+ window_impl = (window ? GDK_WINDOW_IMPL_WIN32 (GDK_WINDOW_OBJECT (window)->impl) : NULL))
GdkWindow *orig_window, *new_window;
GdkColormapPrivateWin32 *colormap_private;
if (ret_val_flagp)
*ret_val_flagp = FALSE;
- ASSIGN_WINDOW (gdk_win32_handle_table_lookup (msg->hwnd));
+ ASSIGN_WINDOW (gdk_win32_handle_table_lookup ((GdkNativeWindow) msg->hwnd));
orig_window = window;
event->any.window = window;
event->any.send_event = FALSE;
- if (window != NULL)
- gdk_drawable_ref (window);
- else
+ if (window == NULL)
{
/* Handle WM_QUIT here ? */
if (msg->message == WM_QUIT)
return FALSE;
}
+ gdk_drawable_ref (window);
+
if (!GDK_WINDOW_DESTROYED (window))
{
/* Check for filters for this window */
if ((hwnd = WindowFromPoint (pt)) == NULL)
break;
msg->hwnd = hwnd;
- if ((new_window = gdk_win32_handle_table_lookup (msg->hwnd)) == NULL)
+ if ((new_window = gdk_win32_handle_table_lookup ((GdkNativeWindow) msg->hwnd)) == NULL)
break;
if (new_window != window)
{