forked from AuroraMiddleware/gtk
Move warp functions to the frontend
There were already GdkDevice vfuncs for this.
This commit is contained in:
parent
4a74060d63
commit
9635f09623
@ -26,6 +26,7 @@
|
||||
#include "gdkdisplay.h"
|
||||
#include "gdkdisplayprivate.h"
|
||||
|
||||
#include "gdkdeviceprivate.h"
|
||||
#include "gdkevents.h"
|
||||
#include "gdkwindowimpl.h"
|
||||
#include "gdkinternals.h"
|
||||
@ -2338,3 +2339,75 @@ gdk_display_get_maximal_cursor_size (GdkDisplay *display,
|
||||
width,
|
||||
height);
|
||||
}
|
||||
|
||||
/**
|
||||
* gdk_display_warp_pointer:
|
||||
* @display: a #GdkDisplay
|
||||
* @screen: the screen of @display to warp the pointer to
|
||||
* @x: the x coordinate of the destination
|
||||
* @y: the y coordinate of the destination
|
||||
*
|
||||
* Warps the pointer of @display to the point @x,@y on
|
||||
* the screen @screen, unless the pointer is confined
|
||||
* to a window by a grab, in which case it will be moved
|
||||
* as far as allowed by the grab. Warping the pointer
|
||||
* creates events as if the user had moved the mouse
|
||||
* instantaneously to the destination.
|
||||
*
|
||||
* Note that the pointer should normally be under the
|
||||
* control of the user. This function was added to cover
|
||||
* some rare use cases like keyboard navigation support
|
||||
* for the color picker in the #GtkColorSelectionDialog.
|
||||
*
|
||||
* Since: 2.8
|
||||
*
|
||||
* Deprecated: 3.0: Use gdk_display_warp_device() instead.
|
||||
*/
|
||||
void
|
||||
gdk_display_warp_pointer (GdkDisplay *display,
|
||||
GdkScreen *screen,
|
||||
gint x,
|
||||
gint y)
|
||||
{
|
||||
gdk_display_warp_device (display,
|
||||
display->core_pointer,
|
||||
screen,
|
||||
x, y);
|
||||
}
|
||||
|
||||
/**
|
||||
* gdk_display_warp_device:
|
||||
* @display: a #GdkDisplay.
|
||||
* @device: a #GdkDevice.
|
||||
* @screen: the screen of @display to warp @device to.
|
||||
* @x: the X coordinate of the destination.
|
||||
* @y: the Y coordinate of the destination.
|
||||
*
|
||||
* Warps @device in @display to the point @x,@y on
|
||||
* the screen @screen, unless the device is confined
|
||||
* to a window by a grab, in which case it will be moved
|
||||
* as far as allowed by the grab. Warping the pointer
|
||||
* creates events as if the user had moved the mouse
|
||||
* instantaneously to the destination.
|
||||
*
|
||||
* Note that the pointer should normally be under the
|
||||
* control of the user. This function was added to cover
|
||||
* some rare use cases like keyboard navigation support
|
||||
* for the color picker in the #GtkColorSelectionDialog.
|
||||
*
|
||||
* Since: 3.0
|
||||
**/
|
||||
void
|
||||
gdk_display_warp_device (GdkDisplay *display,
|
||||
GdkDevice *device,
|
||||
GdkScreen *screen,
|
||||
gint x,
|
||||
gint y)
|
||||
{
|
||||
g_return_if_fail (GDK_IS_DISPLAY (display));
|
||||
g_return_if_fail (GDK_IS_DEVICE (device));
|
||||
g_return_if_fail (GDK_IS_SCREEN (screen));
|
||||
g_return_if_fail (display == gdk_device_get_display (device));
|
||||
|
||||
GDK_DEVICE_GET_CLASS (device)->warp (device, screen, x, y);
|
||||
}
|
||||
|
@ -2891,81 +2891,6 @@ gdk_window_x11_get_device_state (GdkWindow *window,
|
||||
return return_val;
|
||||
}
|
||||
|
||||
/**
|
||||
* gdk_display_warp_pointer:
|
||||
* @display: a #GdkDisplay
|
||||
* @screen: the screen of @display to warp the pointer to
|
||||
* @x: the x coordinate of the destination
|
||||
* @y: the y coordinate of the destination
|
||||
*
|
||||
* Warps the pointer of @display to the point @x,@y on
|
||||
* the screen @screen, unless the pointer is confined
|
||||
* to a window by a grab, in which case it will be moved
|
||||
* as far as allowed by the grab. Warping the pointer
|
||||
* creates events as if the user had moved the mouse
|
||||
* instantaneously to the destination.
|
||||
*
|
||||
* Note that the pointer should normally be under the
|
||||
* control of the user. This function was added to cover
|
||||
* some rare use cases like keyboard navigation support
|
||||
* for the color picker in the #GtkColorSelectionDialog.
|
||||
*
|
||||
* Since: 2.8
|
||||
*
|
||||
* Deprecated: 3.0: Use gdk_display_warp_device() instead.
|
||||
*/
|
||||
void
|
||||
gdk_display_warp_pointer (GdkDisplay *display,
|
||||
GdkScreen *screen,
|
||||
gint x,
|
||||
gint y)
|
||||
{
|
||||
GdkDevice *device;
|
||||
|
||||
g_return_if_fail (GDK_IS_DISPLAY (display));
|
||||
g_return_if_fail (GDK_IS_SCREEN (screen));
|
||||
|
||||
device = display->core_pointer;
|
||||
GDK_DEVICE_GET_CLASS (device)->warp (device, screen, x, y);
|
||||
}
|
||||
|
||||
/**
|
||||
* gdk_display_warp_device:
|
||||
* @display: a #GdkDisplay.
|
||||
* @device: a #GdkDevice.
|
||||
* @screen: the screen of @display to warp @device to.
|
||||
* @x: the X coordinate of the destination.
|
||||
* @y: the Y coordinate of the destination.
|
||||
*
|
||||
* Warps @device in @display to the point @x,@y on
|
||||
* the screen @screen, unless the device is confined
|
||||
* to a window by a grab, in which case it will be moved
|
||||
* as far as allowed by the grab. Warping the pointer
|
||||
* creates events as if the user had moved the mouse
|
||||
* instantaneously to the destination.
|
||||
*
|
||||
* Note that the pointer should normally be under the
|
||||
* control of the user. This function was added to cover
|
||||
* some rare use cases like keyboard navigation support
|
||||
* for the color picker in the #GtkColorSelectionDialog.
|
||||
*
|
||||
* Since: 3.0
|
||||
**/
|
||||
void
|
||||
gdk_display_warp_device (GdkDisplay *display,
|
||||
GdkDevice *device,
|
||||
GdkScreen *screen,
|
||||
gint x,
|
||||
gint y)
|
||||
{
|
||||
g_return_if_fail (GDK_IS_DISPLAY (display));
|
||||
g_return_if_fail (GDK_IS_DEVICE (device));
|
||||
g_return_if_fail (GDK_IS_SCREEN (screen));
|
||||
g_return_if_fail (display == gdk_device_get_display (device));
|
||||
|
||||
GDK_DEVICE_GET_CLASS (device)->warp (device, screen, x, y);
|
||||
}
|
||||
|
||||
GdkWindow*
|
||||
_gdk_windowing_window_at_device_position (GdkDisplay *display,
|
||||
GdkDevice *device,
|
||||
|
Loading…
Reference in New Issue
Block a user