forked from AuroraMiddleware/gtk
if a grab cursor is used, must copy the HCURSOR with CopyCursor(), as it
2003-03-13 Tor Lillqvist <tml@iki.fi> * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor is used, must copy the HCURSOR with CopyCursor(), as it is OK to destroy the GdkCursor after calling gdk_pointer_grab(). Set the cursor right away with SetCursor(), as we won't get any WM_SETCURSOR messages while the mouse is captured. (gdk_display_pointer_ungrab): Correspondingly, destroy the copy with DestroyCursor() when no longer used. (#108114, Allin Cottrell) * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_SYSCHAR, return FALSE from the window procedure to prevent the DefWindowProc from being called. Otherwise Windows would beep, thinking you are tring to access a (nonexistent) menu when you press Alt-something. Don't do this for Alt-Space, though. (#107454, Martyn Russell) * gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
This commit is contained in:
parent
746d1cd9d4
commit
1e072f625c
19
ChangeLog
19
ChangeLog
@ -1,3 +1,22 @@
|
||||
2003-03-13 Tor Lillqvist <tml@iki.fi>
|
||||
|
||||
* gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
|
||||
is used, must copy the HCURSOR with CopyCursor(), as it is OK to
|
||||
destroy the GdkCursor after calling gdk_pointer_grab(). Set the
|
||||
cursor right away with SetCursor(), as we won't get any
|
||||
WM_SETCURSOR messages while the mouse is captured.
|
||||
(gdk_display_pointer_ungrab): Correspondingly, destroy the copy
|
||||
with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
|
||||
|
||||
* gdk/win32/gdkevents-win32.c (gdk_event_translate): On
|
||||
WM_SYSCHAR, return FALSE from the window procedure to prevent the
|
||||
DefWindowProc from being called. Otherwise Windows would beep,
|
||||
thinking you are tring to access a (nonexistent) menu when you
|
||||
press Alt-something. Don't do this for Alt-Space,
|
||||
though. (#107454, Martyn Russell)
|
||||
|
||||
* gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
|
||||
|
||||
Tue Mar 11 12:01:07 2003 Jonathan Blandford <jrb@gnome.org>
|
||||
|
||||
* gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
|
||||
|
@ -1,3 +1,22 @@
|
||||
2003-03-13 Tor Lillqvist <tml@iki.fi>
|
||||
|
||||
* gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
|
||||
is used, must copy the HCURSOR with CopyCursor(), as it is OK to
|
||||
destroy the GdkCursor after calling gdk_pointer_grab(). Set the
|
||||
cursor right away with SetCursor(), as we won't get any
|
||||
WM_SETCURSOR messages while the mouse is captured.
|
||||
(gdk_display_pointer_ungrab): Correspondingly, destroy the copy
|
||||
with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
|
||||
|
||||
* gdk/win32/gdkevents-win32.c (gdk_event_translate): On
|
||||
WM_SYSCHAR, return FALSE from the window procedure to prevent the
|
||||
DefWindowProc from being called. Otherwise Windows would beep,
|
||||
thinking you are tring to access a (nonexistent) menu when you
|
||||
press Alt-something. Don't do this for Alt-Space,
|
||||
though. (#107454, Martyn Russell)
|
||||
|
||||
* gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
|
||||
|
||||
Tue Mar 11 12:01:07 2003 Jonathan Blandford <jrb@gnome.org>
|
||||
|
||||
* gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
|
||||
|
@ -1,3 +1,22 @@
|
||||
2003-03-13 Tor Lillqvist <tml@iki.fi>
|
||||
|
||||
* gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
|
||||
is used, must copy the HCURSOR with CopyCursor(), as it is OK to
|
||||
destroy the GdkCursor after calling gdk_pointer_grab(). Set the
|
||||
cursor right away with SetCursor(), as we won't get any
|
||||
WM_SETCURSOR messages while the mouse is captured.
|
||||
(gdk_display_pointer_ungrab): Correspondingly, destroy the copy
|
||||
with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
|
||||
|
||||
* gdk/win32/gdkevents-win32.c (gdk_event_translate): On
|
||||
WM_SYSCHAR, return FALSE from the window procedure to prevent the
|
||||
DefWindowProc from being called. Otherwise Windows would beep,
|
||||
thinking you are tring to access a (nonexistent) menu when you
|
||||
press Alt-something. Don't do this for Alt-Space,
|
||||
though. (#107454, Martyn Russell)
|
||||
|
||||
* gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
|
||||
|
||||
Tue Mar 11 12:01:07 2003 Jonathan Blandford <jrb@gnome.org>
|
||||
|
||||
* gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
|
||||
|
@ -1,3 +1,22 @@
|
||||
2003-03-13 Tor Lillqvist <tml@iki.fi>
|
||||
|
||||
* gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
|
||||
is used, must copy the HCURSOR with CopyCursor(), as it is OK to
|
||||
destroy the GdkCursor after calling gdk_pointer_grab(). Set the
|
||||
cursor right away with SetCursor(), as we won't get any
|
||||
WM_SETCURSOR messages while the mouse is captured.
|
||||
(gdk_display_pointer_ungrab): Correspondingly, destroy the copy
|
||||
with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
|
||||
|
||||
* gdk/win32/gdkevents-win32.c (gdk_event_translate): On
|
||||
WM_SYSCHAR, return FALSE from the window procedure to prevent the
|
||||
DefWindowProc from being called. Otherwise Windows would beep,
|
||||
thinking you are tring to access a (nonexistent) menu when you
|
||||
press Alt-something. Don't do this for Alt-Space,
|
||||
though. (#107454, Martyn Russell)
|
||||
|
||||
* gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
|
||||
|
||||
Tue Mar 11 12:01:07 2003 Jonathan Blandford <jrb@gnome.org>
|
||||
|
||||
* gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
|
||||
|
@ -1,3 +1,22 @@
|
||||
2003-03-13 Tor Lillqvist <tml@iki.fi>
|
||||
|
||||
* gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
|
||||
is used, must copy the HCURSOR with CopyCursor(), as it is OK to
|
||||
destroy the GdkCursor after calling gdk_pointer_grab(). Set the
|
||||
cursor right away with SetCursor(), as we won't get any
|
||||
WM_SETCURSOR messages while the mouse is captured.
|
||||
(gdk_display_pointer_ungrab): Correspondingly, destroy the copy
|
||||
with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
|
||||
|
||||
* gdk/win32/gdkevents-win32.c (gdk_event_translate): On
|
||||
WM_SYSCHAR, return FALSE from the window procedure to prevent the
|
||||
DefWindowProc from being called. Otherwise Windows would beep,
|
||||
thinking you are tring to access a (nonexistent) menu when you
|
||||
press Alt-something. Don't do this for Alt-Space,
|
||||
though. (#107454, Martyn Russell)
|
||||
|
||||
* gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
|
||||
|
||||
Tue Mar 11 12:01:07 2003 Jonathan Blandford <jrb@gnome.org>
|
||||
|
||||
* gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
|
||||
|
@ -96,10 +96,10 @@ gdk_cursor_new_for_display (GdkDisplay *display,
|
||||
hcursor = _gdk_win32_data_to_wcursor (cursor_type);
|
||||
|
||||
if (hcursor == NULL)
|
||||
g_warning ("gdk_cursor_new: no cursor %d found", cursor_type);
|
||||
g_warning ("gdk_cursor_new_for_display: no cursor %d found", cursor_type);
|
||||
else
|
||||
GDK_NOTE (MISC, g_print ("gdk_cursor_new: %d: %#x\n",
|
||||
cursor_type, (guint) hcursor));
|
||||
GDK_NOTE (MISC, g_print ("gdk_cursor_new_for_display: %d: %p\n",
|
||||
cursor_type, hcursor));
|
||||
|
||||
private = g_new (GdkCursorPrivate, 1);
|
||||
private->hcursor = hcursor;
|
||||
@ -268,12 +268,12 @@ gdk_cursor_new_from_pixmap (GdkPixmap *source,
|
||||
and_mask, xor_mask);
|
||||
|
||||
GDK_NOTE (MISC, g_print ("gdk_cursor_new_from_pixmap: "
|
||||
"%#x (%dx%d) %#x (%dx%d) = %#x (%dx%d)\n",
|
||||
(guint) GDK_PIXMAP_HBITMAP (source),
|
||||
"%p (%dx%d) %p (%dx%d) = %p (%dx%d)\n",
|
||||
GDK_PIXMAP_HBITMAP (source),
|
||||
source_impl->width, source_impl->height,
|
||||
(guint) GDK_PIXMAP_HBITMAP (mask),
|
||||
GDK_PIXMAP_HBITMAP (mask),
|
||||
mask_impl->width, mask_impl->height,
|
||||
(guint) hcursor, cursor_width, cursor_height));
|
||||
hcursor, cursor_width, cursor_height));
|
||||
|
||||
g_free (xor_mask);
|
||||
g_free (and_mask);
|
||||
@ -295,8 +295,8 @@ _gdk_cursor_destroy (GdkCursor *cursor)
|
||||
g_return_if_fail (cursor != NULL);
|
||||
private = (GdkCursorPrivate *) cursor;
|
||||
|
||||
GDK_NOTE (MISC, g_print ("_gdk_cursor_destroy: %#x\n",
|
||||
(cursor->type == GDK_CURSOR_IS_PIXMAP) ? (guint) private->hcursor : 0));
|
||||
GDK_NOTE (MISC, g_print ("_gdk_cursor_destroy: %p\n",
|
||||
(cursor->type == GDK_CURSOR_IS_PIXMAP) ? private->hcursor : 0));
|
||||
|
||||
if (GetCursor () == private->hcursor)
|
||||
SetCursor (NULL);
|
||||
|
@ -201,6 +201,7 @@ real_window_procedure (HWND hwnd,
|
||||
return ret_val;
|
||||
else
|
||||
{
|
||||
GDK_NOTE (EVENTS, g_print("calling DefWindowProc\n"));
|
||||
#ifndef HAVE_DIMM_H
|
||||
return DefWindowProc (hwnd, message, wparam, lparam);
|
||||
#else
|
||||
@ -529,8 +530,8 @@ gdk_pointer_grab (GdkWindow *window,
|
||||
|
||||
if (!cursor)
|
||||
hcursor = NULL;
|
||||
else
|
||||
hcursor = cursor_private->hcursor;
|
||||
else if ((hcursor = CopyCursor (cursor_private->hcursor)) == NULL)
|
||||
WIN32_API_FAILED ("CopyCursor");
|
||||
#if 0
|
||||
return_val = _gdk_input_grab_pointer (window,
|
||||
owner_events,
|
||||
@ -564,6 +565,9 @@ gdk_pointer_grab (GdkWindow *window,
|
||||
{
|
||||
p_grab_window = window;
|
||||
p_grab_cursor = hcursor;
|
||||
|
||||
if (p_grab_cursor != NULL)
|
||||
SetCursor (p_grab_cursor);
|
||||
}
|
||||
|
||||
return return_val;
|
||||
@ -586,6 +590,13 @@ gdk_display_pointer_ungrab (GdkDisplay *display,
|
||||
#endif
|
||||
|
||||
p_grab_window = NULL;
|
||||
if (p_grab_cursor != NULL)
|
||||
{
|
||||
if (GetCursor () == p_grab_cursor)
|
||||
SetCursor (NULL);
|
||||
DestroyCursor (p_grab_cursor);
|
||||
p_grab_cursor = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@ -2427,6 +2438,13 @@ gdk_event_translate (GdkDisplay *display,
|
||||
if (ignore_wm_char)
|
||||
{
|
||||
ignore_wm_char = FALSE;
|
||||
|
||||
if (msg->wParam != VK_SPACE && ret_val_flagp)
|
||||
{
|
||||
*ret_val_flagp = TRUE;
|
||||
*ret_valp = FALSE;
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user