mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-12-25 13:11:13 +00:00
Bug 544684 - Win64 issue, window handles are assumed to be 32-bit
2008-08-05 Tor Lillqvist <tml@novell.com> Bug 544684 - Win64 issue, window handles are assumed to be 32-bit * gdk/gdkdnd.h * gdk/gdkdnd.c * gdk/win32/gdkdnd-win32.c * gdk/x11/gdkdnd-x11.c: Change return value and type of window id from guint32 to GdkNativeWindow for gdk_drag_get_protocol_for_display() and gdk_drag_get_protocol(). This is not an API break on existing platforms, as GdkNativeWindow has been guint32 for them already. svn path=/trunk/; revision=20988
This commit is contained in:
parent
ad2ea92f75
commit
b1e744b064
12
gdk/gdkdnd.c
12
gdk/gdkdnd.c
@ -61,17 +61,17 @@ gdk_drag_find_window (GdkDragContext *context,
|
||||
|
||||
/**
|
||||
* gdk_drag_get_protocol:
|
||||
* @xid: the X id of the destination window.
|
||||
* @xid: the windowing system id of the destination window.
|
||||
* @protocol: location where the supported DND protocol is returned.
|
||||
*
|
||||
* Finds out the DND protocol supported by a window.
|
||||
*
|
||||
* Return value: the X id of the window where the drop should happen. This
|
||||
* may be @xid or the X id of a proxy window, or None if @xid doesn't
|
||||
* support Drag and Drop.
|
||||
* Return value: the windowing system specific id for the window where
|
||||
* the drop should happen. This may be @xid or the id of a proxy
|
||||
* window, or zero if @xid doesn't support Drag and Drop.
|
||||
**/
|
||||
guint32
|
||||
gdk_drag_get_protocol (guint32 xid,
|
||||
GdkNativeWindow
|
||||
gdk_drag_get_protocol (GdkNativeWindow xid,
|
||||
GdkDragProtocol *protocol)
|
||||
{
|
||||
return gdk_drag_get_protocol_for_display (gdk_display_get_default (), xid, protocol);
|
||||
|
12
gdk/gdkdnd.h
12
gdk/gdkdnd.h
@ -130,9 +130,10 @@ GdkAtom gdk_drag_get_selection (GdkDragContext *context);
|
||||
GdkDragContext * gdk_drag_begin (GdkWindow *window,
|
||||
GList *targets);
|
||||
|
||||
guint32 gdk_drag_get_protocol_for_display (GdkDisplay *display,
|
||||
guint32 xid,
|
||||
GdkDragProtocol *protocol);
|
||||
GdkNativeWindow gdk_drag_get_protocol_for_display (GdkDisplay *display,
|
||||
GdkNativeWindow xid,
|
||||
GdkDragProtocol *protocol);
|
||||
|
||||
void gdk_drag_find_window_for_screen (GdkDragContext *context,
|
||||
GdkWindow *drag_window,
|
||||
GdkScreen *screen,
|
||||
@ -142,8 +143,9 @@ void gdk_drag_find_window_for_screen (GdkDragContext *context,
|
||||
GdkDragProtocol *protocol);
|
||||
|
||||
#ifndef GDK_MULTIHEAD_SAFE
|
||||
guint32 gdk_drag_get_protocol (guint32 xid,
|
||||
GdkDragProtocol *protocol);
|
||||
GdkNativeWindow gdk_drag_get_protocol (GdkNativeWindow xid,
|
||||
GdkDragProtocol *protocol);
|
||||
|
||||
void gdk_drag_find_window (GdkDragContext *context,
|
||||
GdkWindow *drag_window,
|
||||
gint x_root,
|
||||
|
@ -854,7 +854,7 @@ enum_formats_new (void)
|
||||
static gboolean
|
||||
resolve_link (HWND hWnd,
|
||||
wchar_t *link,
|
||||
guchar **lpszPath)
|
||||
gchar **lpszPath)
|
||||
{
|
||||
WIN32_FILE_ATTRIBUTE_DATA wfad;
|
||||
HRESULT hres;
|
||||
@ -938,7 +938,7 @@ gdk_dropfiles_filter (GdkXEvent *xev,
|
||||
HANDLE hdrop;
|
||||
POINT pt;
|
||||
gint nfiles, i;
|
||||
guchar *fileName, *linkedFile;
|
||||
gchar *fileName, *linkedFile;
|
||||
|
||||
if (msg->message == WM_DROPFILES)
|
||||
{
|
||||
@ -1294,9 +1294,9 @@ gdk_drag_begin (GdkWindow *window,
|
||||
#endif
|
||||
}
|
||||
|
||||
guint32
|
||||
GdkNativeWindow
|
||||
gdk_drag_get_protocol_for_display (GdkDisplay *display,
|
||||
guint32 xid,
|
||||
GdkNativeWindow xid,
|
||||
GdkDragProtocol *protocol)
|
||||
{
|
||||
GdkWindow *window;
|
||||
@ -1373,7 +1373,7 @@ gdk_drag_find_window_for_screen (GdkDragContext *context,
|
||||
*dest_window = NULL;
|
||||
else
|
||||
{
|
||||
*dest_window = gdk_win32_handle_table_lookup (GPOINTER_TO_UINT (a.result));
|
||||
*dest_window = gdk_win32_handle_table_lookup (a.result);
|
||||
if (*dest_window)
|
||||
{
|
||||
*dest_window = gdk_window_get_toplevel (*dest_window);
|
||||
|
@ -3001,15 +3001,15 @@ gdk_drag_begin (GdkWindow *window,
|
||||
return new_context;
|
||||
}
|
||||
|
||||
static guint32
|
||||
static GdkNativeWindow
|
||||
_gdk_drag_get_protocol_for_display (GdkDisplay *display,
|
||||
guint32 xid,
|
||||
GdkNativeWindow xid,
|
||||
GdkDragProtocol *protocol,
|
||||
guint *version)
|
||||
|
||||
{
|
||||
GdkWindow *window;
|
||||
guint32 retval;
|
||||
GdkNativeWindow retval;
|
||||
g_return_val_if_fail (GDK_IS_DISPLAY (display), None);
|
||||
|
||||
base_precache_atoms (display);
|
||||
@ -3106,25 +3106,26 @@ _gdk_drag_get_protocol_for_display (GdkDisplay *display,
|
||||
}
|
||||
|
||||
*protocol = GDK_DRAG_PROTO_NONE;
|
||||
return None;
|
||||
|
||||
return 0; /* a.k.a. None */
|
||||
}
|
||||
|
||||
/**
|
||||
* gdk_drag_get_protocol_for_display:
|
||||
* @display: the #GdkDisplay where the destination window resides
|
||||
* @xid: the X id of the destination window.
|
||||
* @xid: the windowing system id of the destination window.
|
||||
* @protocol: location where the supported DND protocol is returned.
|
||||
* @returns: the X id of the window where the drop should happen. This
|
||||
* may be @xid or the X id of a proxy window, or None if @xid doesn't
|
||||
* @returns: the windowing system id of the window where the drop should happen. This
|
||||
* may be @xid or the id of a proxy window, or zero if @xid doesn't
|
||||
* support Drag and Drop.
|
||||
*
|
||||
* Finds out the DND protocol supported by a window.
|
||||
*
|
||||
* Since: 2.2
|
||||
*/
|
||||
guint32
|
||||
GdkNativeWindow
|
||||
gdk_drag_get_protocol_for_display (GdkDisplay *display,
|
||||
guint32 xid,
|
||||
GdkNativeWindow xid,
|
||||
GdkDragProtocol *protocol)
|
||||
{
|
||||
return _gdk_drag_get_protocol_for_display (display, xid, protocol, NULL);
|
||||
|
Loading…
Reference in New Issue
Block a user