forked from AuroraMiddleware/gtk
win32: Remove all uses of get_root_window
This is following similar changes done in the x11 and broadway backends, but it has not been built. Some fixups may be needed.
This commit is contained in:
parent
77efc60a15
commit
e2682e62a8
@ -108,30 +108,39 @@ gdk_device_win32_query_state (GdkDevice *device,
|
|||||||
{
|
{
|
||||||
POINT point;
|
POINT point;
|
||||||
HWND hwnd, hwndc;
|
HWND hwnd, hwndc;
|
||||||
GdkWindowImplWin32 *impl;
|
gint scale;
|
||||||
|
|
||||||
if (window == NULL)
|
if (window)
|
||||||
window = gdk_win32_display_get_root_window (gdk_display_get_default ());
|
{
|
||||||
impl = GDK_WINDOW_IMPL_WIN32 (window->impl);
|
scale = GDK_WINDOW_IMPL_WIN32 (window->impl)->window_scale;
|
||||||
|
hwnd = GDK_WINDOW_HWND (window);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
GdkDisplay *display = gdk_device_get_display (device);
|
||||||
|
|
||||||
|
scale = GDK_WIN32_SCREEN (GDK_WIN32_DISPLAY (display)->screen)->window_scale;
|
||||||
|
hwnd = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
hwnd = GDK_WINDOW_HWND (window);
|
|
||||||
GetCursorPos (&point);
|
GetCursorPos (&point);
|
||||||
|
|
||||||
if (root_x)
|
if (root_x)
|
||||||
*root_x = point.x / impl->window_scale;
|
*root_x = point.x / scale;
|
||||||
|
|
||||||
if (root_y)
|
if (root_y)
|
||||||
*root_y = point.y / impl->window_scale;
|
*root_y = point.y / scale;
|
||||||
|
|
||||||
ScreenToClient (hwnd, &point);
|
if (hwnd)
|
||||||
|
ScreenToClient (hwnd, &point);
|
||||||
|
|
||||||
if (win_x)
|
if (win_x)
|
||||||
*win_x = point.x / impl->window_scale;
|
*win_x = point.x / scale;
|
||||||
|
|
||||||
if (win_y)
|
if (win_y)
|
||||||
*win_y = point.y / impl->window_scale;
|
*win_y = point.y / scale;
|
||||||
|
|
||||||
if (window == gdk_win32_display_get_root_window (gdk_display_get_default ()))
|
if (window)
|
||||||
{
|
{
|
||||||
if (win_x)
|
if (win_x)
|
||||||
*win_x += _gdk_offset_x;
|
*win_x += _gdk_offset_x;
|
||||||
@ -146,7 +155,7 @@ gdk_device_win32_query_state (GdkDevice *device,
|
|||||||
*root_y += _gdk_offset_y;
|
*root_y += _gdk_offset_y;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (child_window)
|
if (hwnd && child_window)
|
||||||
{
|
{
|
||||||
hwndc = ChildWindowFromPoint (hwnd, point);
|
hwndc = ChildWindowFromPoint (hwnd, point);
|
||||||
|
|
||||||
@ -247,15 +256,12 @@ _gdk_device_win32_window_at_position (GdkDevice *device,
|
|||||||
/* If we didn't hit any window at that point, return the desktop */
|
/* If we didn't hit any window at that point, return the desktop */
|
||||||
if (hwnd == NULL)
|
if (hwnd == NULL)
|
||||||
{
|
{
|
||||||
window = gdk_win32_display_get_root_window (gdk_display_get_default ());
|
|
||||||
impl = GDK_WINDOW_IMPL_WIN32 (window->impl);
|
|
||||||
|
|
||||||
if (win_x)
|
if (win_x)
|
||||||
*win_x = (screen_pt.x + _gdk_offset_x) / impl->window_scale;
|
*win_x = screen_pt.x + _gdk_offset_x;
|
||||||
if (win_y)
|
if (win_y)
|
||||||
*win_y = (screen_pt.y + _gdk_offset_y) / impl->window_scale;
|
*win_y = screen_pt.y + _gdk_offset_y;
|
||||||
|
|
||||||
return window;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
window = gdk_win32_handle_table_lookup (hwnd);
|
window = gdk_win32_handle_table_lookup (hwnd);
|
||||||
|
@ -120,30 +120,40 @@ gdk_device_wintab_query_state (GdkDevice *device,
|
|||||||
POINT point;
|
POINT point;
|
||||||
HWND hwnd, hwndc;
|
HWND hwnd, hwndc;
|
||||||
GdkWindowImplWin32 *impl;
|
GdkWindowImplWin32 *impl;
|
||||||
|
int scale;
|
||||||
|
|
||||||
device_wintab = GDK_DEVICE_WINTAB (device);
|
device_wintab = GDK_DEVICE_WINTAB (device);
|
||||||
if (window == NULL)
|
if (window)
|
||||||
window = gdk_win32_display_get_root_window (gdk_display_get_default ());
|
{
|
||||||
impl = GDK_WINDOW_IMPL_WIN32 (window->impl);
|
scale = GDK_WINDOW_IMPL_WIN32 (window->impl)->window_scale;
|
||||||
|
hwnd = GDK_WINDOW_HWND (window);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
GdkDisplay *display = gdk_device_get_display (device);
|
||||||
|
|
||||||
|
scale = GDK_WIN32_SCREEN (GDK_WIN32_DISPLAY (display)->screen)->window_scale;
|
||||||
|
hwnd = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
hwnd = GDK_WINDOW_HWND (window);
|
|
||||||
GetCursorPos (&point);
|
GetCursorPos (&point);
|
||||||
|
|
||||||
if (root_x)
|
if (root_x)
|
||||||
*root_x = point.x / impl->window_scale;
|
*root_x = point.x / scale;
|
||||||
|
|
||||||
if (root_y)
|
if (root_y)
|
||||||
*root_y = point.y / impl->window_scale;
|
*root_y = point.y / scale;
|
||||||
|
|
||||||
ScreenToClient (hwnd, &point);
|
if (hwn)
|
||||||
|
ScreenToClient (hwnd, &point);
|
||||||
|
|
||||||
if (win_x)
|
if (win_x)
|
||||||
*win_x = point.x / impl->window_scale;
|
*win_x = point.x / scale;
|
||||||
|
|
||||||
if (win_y)
|
if (win_y)
|
||||||
*win_y = point.y / impl->window_scale;
|
*win_y = point.y / scale;
|
||||||
|
|
||||||
if (window == gdk_win32_display_get_root_window (gdk_display_get_default ()))
|
if (!window)
|
||||||
{
|
{
|
||||||
if (win_x)
|
if (win_x)
|
||||||
*win_x += _gdk_offset_x;
|
*win_x += _gdk_offset_x;
|
||||||
@ -152,7 +162,7 @@ gdk_device_wintab_query_state (GdkDevice *device,
|
|||||||
*win_y += _gdk_offset_y;
|
*win_y += _gdk_offset_y;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (child_window)
|
if (hwnd && child_window)
|
||||||
{
|
{
|
||||||
hwndc = ChildWindowFromPoint (hwnd, point);
|
hwndc = ChildWindowFromPoint (hwnd, point);
|
||||||
|
|
||||||
@ -217,18 +227,20 @@ _gdk_device_wintab_translate_axes (GdkDeviceWintab *device_wintab,
|
|||||||
gdouble *y)
|
gdouble *y)
|
||||||
{
|
{
|
||||||
GdkDevice *device;
|
GdkDevice *device;
|
||||||
GdkWindow *impl_window, *root_window;
|
GdkWindow *impl_window;
|
||||||
gint root_x, root_y;
|
gint root_x, root_y;
|
||||||
gdouble temp_x, temp_y;
|
gdouble temp_x, temp_y;
|
||||||
gint i;
|
gint i;
|
||||||
|
GdkDisplay *display;
|
||||||
|
|
||||||
device = GDK_DEVICE (device_wintab);
|
device = GDK_DEVICE (device_wintab);
|
||||||
root_window = gdk_win32_display_get_root_window (gdk_window_get_display (window));
|
|
||||||
impl_window = _gdk_window_get_impl_window (window);
|
impl_window = _gdk_window_get_impl_window (window);
|
||||||
temp_x = temp_y = 0;
|
temp_x = temp_y = 0;
|
||||||
|
|
||||||
gdk_window_get_origin (impl_window, &root_x, &root_y);
|
gdk_window_get_origin (impl_window, &root_x, &root_y);
|
||||||
|
|
||||||
|
display = gdk_device_get_display (device);
|
||||||
|
|
||||||
for (i = 0; i < gdk_device_get_n_axes (device); i++)
|
for (i = 0; i < gdk_device_get_n_axes (device); i++)
|
||||||
{
|
{
|
||||||
GdkAxisUse use;
|
GdkAxisUse use;
|
||||||
@ -246,8 +258,8 @@ _gdk_device_wintab_translate_axes (GdkDeviceWintab *device_wintab,
|
|||||||
else
|
else
|
||||||
_gdk_device_translate_screen_coord (device, window,
|
_gdk_device_translate_screen_coord (device, window,
|
||||||
root_x, root_y,
|
root_x, root_y,
|
||||||
gdk_window_get_width (root_window),
|
GDK_WIN32_SCREEN (GDK_WIN32_DISPLAY (display)->screen)->width,
|
||||||
gdk_window_get_height (root_window),
|
GDK_WIN32_SCREEN (GDK_WIN32_DISPLAY (display)->screen)->height,
|
||||||
i,
|
i,
|
||||||
device_wintab->last_axis_data[i],
|
device_wintab->last_axis_data[i],
|
||||||
&axes[i]);
|
&axes[i]);
|
||||||
|
@ -353,7 +353,6 @@ static void
|
|||||||
wintab_init_check (GdkDeviceManagerWin32 *device_manager)
|
wintab_init_check (GdkDeviceManagerWin32 *device_manager)
|
||||||
{
|
{
|
||||||
GdkDisplay *display = gdk_device_manager_get_display (GDK_DEVICE_MANAGER (device_manager));
|
GdkDisplay *display = gdk_device_manager_get_display (GDK_DEVICE_MANAGER (device_manager));
|
||||||
GdkWindow *root = gdk_win32_display_get_root_window (display);
|
|
||||||
static gboolean wintab_initialized = FALSE;
|
static gboolean wintab_initialized = FALSE;
|
||||||
GdkDeviceWintab *device;
|
GdkDeviceWintab *device;
|
||||||
WORD specversion;
|
WORD specversion;
|
||||||
@ -960,14 +959,13 @@ G_GNUC_BEGIN_IGNORE_DEPRECATIONS;
|
|||||||
device_manager = GDK_DEVICE_MANAGER_WIN32 (gdk_display_get_device_manager (display));
|
device_manager = GDK_DEVICE_MANAGER_WIN32 (gdk_display_get_device_manager (display));
|
||||||
G_GNUC_END_IGNORE_DEPRECATIONS;
|
G_GNUC_END_IGNORE_DEPRECATIONS;
|
||||||
window = gdk_device_get_window_at_position (device_manager->core_pointer, &x, &y);
|
window = gdk_device_get_window_at_position (device_manager->core_pointer, &x, &y);
|
||||||
if (window == NULL)
|
|
||||||
window = gdk_win32_display_get_root_window (gdk_display_get_default ());
|
|
||||||
|
|
||||||
g_object_ref (window);
|
if (window)
|
||||||
|
g_object_ref (window);
|
||||||
|
|
||||||
GDK_NOTE (EVENTS_OR_INPUT,
|
GDK_NOTE (EVENTS_OR_INPUT,
|
||||||
g_print ("gdk_input_other_event: window=%p %+d%+d\n",
|
g_print ("gdk_input_other_event: window=%p %+d%+d\n",
|
||||||
GDK_WINDOW_HWND (window), x, y));
|
window ? GDK_WINDOW_HWND (window) : NULL, x, y));
|
||||||
|
|
||||||
if (msg->message == WT_PACKET || msg->message == WT_CSRCHANGE)
|
if (msg->message == WT_PACKET || msg->message == WT_CSRCHANGE)
|
||||||
{
|
{
|
||||||
@ -1004,7 +1002,7 @@ G_GNUC_END_IGNORE_DEPRECATIONS;
|
|||||||
window = g_object_ref (last_grab->window);
|
window = g_object_ref (last_grab->window);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (window == gdk_win32_display_get_root_window (gdk_display_get_default ()))
|
if (window == NULL)
|
||||||
{
|
{
|
||||||
GDK_NOTE (EVENTS_OR_INPUT, g_print ("... is root\n"));
|
GDK_NOTE (EVENTS_OR_INPUT, g_print ("... is root\n"));
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
@ -619,7 +619,7 @@ inner_clipboard_window_procedure (HWND hwnd,
|
|||||||
GDK_NOTE (DND, g_print (" \n"));
|
GDK_NOTE (DND, g_print (" \n"));
|
||||||
|
|
||||||
event = gdk_event_new (GDK_OWNER_CHANGE);
|
event = gdk_event_new (GDK_OWNER_CHANGE);
|
||||||
event->owner_change.window = gdk_win32_display_get_root_window (gdk_display_get_default ());
|
event->owner_change.window = NULL;
|
||||||
event->owner_change.reason = GDK_OWNER_CHANGE_NEW_OWNER;
|
event->owner_change.reason = GDK_OWNER_CHANGE_NEW_OWNER;
|
||||||
event->owner_change.selection = GDK_SELECTION_CLIPBOARD;
|
event->owner_change.selection = GDK_SELECTION_CLIPBOARD;
|
||||||
event->owner_change.time = _gdk_win32_get_next_tick (0);
|
event->owner_change.time = _gdk_win32_get_next_tick (0);
|
||||||
@ -1225,12 +1225,6 @@ gdk_win32_display_get_setting (GdkDisplay *display,
|
|||||||
value);
|
value);
|
||||||
}
|
}
|
||||||
|
|
||||||
GdkWindow *
|
|
||||||
gdk_win32_display_get_root_window (GdkDisplay *display)
|
|
||||||
{
|
|
||||||
return gdk_win32_screen_get_root_window (GDK_WIN32_DISPLAY (display)->screen);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gdk_win32_display_class_init (GdkWin32DisplayClass *klass)
|
gdk_win32_display_class_init (GdkWin32DisplayClass *klass)
|
||||||
{
|
{
|
||||||
|
@ -729,11 +729,6 @@ idropsource_givefeedback (LPDROPSOURCE This,
|
|||||||
ctx->context->dest_window = NULL;
|
ctx->context->dest_window = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
if (ctx->context->dest_window == NULL)
|
|
||||||
ctx->context->dest_window = g_object_ref (gdk_win32_display_get_root_window (gdk_display_get_default ()));
|
|
||||||
}
|
|
||||||
|
|
||||||
return DRAGDROP_S_USEDEFAULTCURSORS;
|
return DRAGDROP_S_USEDEFAULTCURSORS;
|
||||||
}
|
}
|
||||||
@ -1431,8 +1426,7 @@ gdk_dropfiles_filter (GdkXEvent *xev,
|
|||||||
context->protocol = GDK_DRAG_PROTO_WIN32_DROPFILES;
|
context->protocol = GDK_DRAG_PROTO_WIN32_DROPFILES;
|
||||||
context->is_source = FALSE;
|
context->is_source = FALSE;
|
||||||
|
|
||||||
context->source_window = gdk_win32_display_get_root_window (gdk_display_get_default ());
|
context->source_window = NULL;
|
||||||
g_object_ref (context->source_window);
|
|
||||||
|
|
||||||
context->dest_window = event->any.window;
|
context->dest_window = event->any.window;
|
||||||
g_object_ref (context->dest_window);
|
g_object_ref (context->dest_window);
|
||||||
|
@ -2160,9 +2160,7 @@ gdk_event_translate (MSG *msg,
|
|||||||
{
|
{
|
||||||
/* Apply global filters */
|
/* Apply global filters */
|
||||||
|
|
||||||
GdkFilterReturn result = apply_event_filters (window ? window : gdk_win32_display_get_root_window (display),
|
GdkFilterReturn result = apply_event_filters (window, msg, &_gdk_default_filters);
|
||||||
msg,
|
|
||||||
&_gdk_default_filters);
|
|
||||||
|
|
||||||
/* If result is GDK_FILTER_CONTINUE, we continue as if nothing
|
/* If result is GDK_FILTER_CONTINUE, we continue as if nothing
|
||||||
* happened. If it is GDK_FILTER_REMOVE or GDK_FILTER_TRANSLATE,
|
* happened. If it is GDK_FILTER_REMOVE or GDK_FILTER_TRANSLATE,
|
||||||
|
@ -295,7 +295,7 @@ _gdk_win32_window_delete_property (GdkWindow *window,
|
|||||||
if (property == _gdk_selection)
|
if (property == _gdk_selection)
|
||||||
_gdk_selection_property_delete (window);
|
_gdk_selection_property_delete (window);
|
||||||
else if (property == _wm_transient_for)
|
else if (property == _wm_transient_for)
|
||||||
gdk_window_set_transient_for (window, gdk_win32_display_get_root_window (gdk_window_get_display (window)));
|
gdk_window_set_transient_for (window, NULL);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
prop_name = gdk_atom_name (property);
|
prop_name = gdk_atom_name (property);
|
||||||
|
@ -33,7 +33,8 @@ struct _GdkWin32Screen
|
|||||||
{
|
{
|
||||||
GdkScreen parent_instance;
|
GdkScreen parent_instance;
|
||||||
|
|
||||||
GdkWindow *root_window;
|
int width, height;
|
||||||
|
int window_scale;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct _GdkWin32ScreenClass
|
struct _GdkWin32ScreenClass
|
||||||
@ -66,61 +67,29 @@ init_root_window_size (GdkWin32Screen *screen)
|
|||||||
gdk_rectangle_union (&result, &rect, &result);
|
gdk_rectangle_union (&result, &rect, &result);
|
||||||
}
|
}
|
||||||
|
|
||||||
screen->root_window->width = result.width;
|
screen->width = result.width;
|
||||||
screen->root_window->height = result.height;
|
screen->height = result.height;
|
||||||
root_impl = GDK_WINDOW_IMPL_WIN32 (screen->root_window->impl);
|
|
||||||
|
|
||||||
root_impl->unscaled_width = result.width * root_impl->window_scale;
|
|
||||||
root_impl->unscaled_height = result.height * root_impl->window_scale;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
init_root_window (GdkWin32Screen *screen_win32)
|
init_root_window (GdkWin32Screen *screen_win32)
|
||||||
{
|
{
|
||||||
GdkScreen *screen;
|
GdkScreen *screen;
|
||||||
GdkWindow *window;
|
|
||||||
GdkWindowImplWin32 *impl_win32;
|
|
||||||
GdkWin32Display *win32_display;
|
GdkWin32Display *win32_display;
|
||||||
|
|
||||||
screen = GDK_SCREEN (screen_win32);
|
screen = GDK_SCREEN (screen_win32);
|
||||||
|
|
||||||
g_assert (screen_win32->root_window == NULL);
|
|
||||||
|
|
||||||
window = _gdk_display_create_window (_gdk_display);
|
|
||||||
window->impl = g_object_new (GDK_TYPE_WINDOW_IMPL_WIN32, NULL);
|
|
||||||
impl_win32 = GDK_WINDOW_IMPL_WIN32 (window->impl);
|
|
||||||
impl_win32->wrapper = window;
|
|
||||||
|
|
||||||
window->impl_window = window;
|
|
||||||
|
|
||||||
window->window_type = GDK_WINDOW_ROOT;
|
|
||||||
|
|
||||||
screen_win32->root_window = window;
|
|
||||||
|
|
||||||
init_root_window_size (screen_win32);
|
init_root_window_size (screen_win32);
|
||||||
|
|
||||||
window->x = 0;
|
|
||||||
window->y = 0;
|
|
||||||
window->abs_x = 0;
|
|
||||||
window->abs_y = 0;
|
|
||||||
/* width and height already initialised in init_root_window_size() */
|
|
||||||
window->viewable = TRUE;
|
|
||||||
win32_display = GDK_WIN32_DISPLAY (_gdk_display);
|
win32_display = GDK_WIN32_DISPLAY (_gdk_display);
|
||||||
|
|
||||||
if (win32_display->dpi_aware_type != PROCESS_DPI_UNAWARE)
|
if (win32_display->dpi_aware_type != PROCESS_DPI_UNAWARE)
|
||||||
impl_win32->window_scale = _gdk_win32_display_get_monitor_scale_factor (win32_display,
|
screen_win32->window_scale = _gdk_win32_display_get_monitor_scale_factor (win32_display,
|
||||||
NULL,
|
NULL,
|
||||||
impl_win32->handle,
|
NULL,
|
||||||
NULL);
|
NULL);
|
||||||
else
|
else
|
||||||
impl_win32->window_scale = 1;
|
screen_win32->window_scale = 1;
|
||||||
|
|
||||||
impl_win32->unscaled_width = window->width * impl_win32->window_scale;
|
|
||||||
impl_win32->unscaled_height = window->height * impl_win32->window_scale;
|
|
||||||
|
|
||||||
gdk_win32_handle_table_insert ((HANDLE *) &impl_win32->handle, window);
|
|
||||||
|
|
||||||
GDK_NOTE (MISC, g_print ("screen->root_window=%p\n", window));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -140,12 +109,6 @@ _gdk_win32_screen_on_displaychange_event (GdkWin32Screen *screen)
|
|||||||
init_root_window_size (screen);
|
init_root_window_size (screen);
|
||||||
}
|
}
|
||||||
|
|
||||||
GdkWindow *
|
|
||||||
gdk_win32_screen_get_root_window (GdkScreen *screen)
|
|
||||||
{
|
|
||||||
return GDK_WIN32_SCREEN (screen)->root_window;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gdk_win32_screen_finalize (GObject *object)
|
gdk_win32_screen_finalize (GObject *object)
|
||||||
{
|
{
|
||||||
|
@ -465,9 +465,6 @@ _gdk_win32_window_enable_transparency (GdkWindow *window)
|
|||||||
if (!gdk_display_is_composited (gdk_window_get_display (window)))
|
if (!gdk_display_is_composited (gdk_window_get_display (window)))
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
if (window == gdk_win32_display_get_root_window (gdk_window_get_display (window)))
|
|
||||||
return FALSE;
|
|
||||||
|
|
||||||
thiswindow = GDK_WINDOW_HWND (window);
|
thiswindow = GDK_WINDOW_HWND (window);
|
||||||
|
|
||||||
/* Blurbehind only works on toplevel windows */
|
/* Blurbehind only works on toplevel windows */
|
||||||
@ -744,9 +741,7 @@ _gdk_win32_display_create_window_impl (GdkDisplay *display,
|
|||||||
|
|
||||||
case GDK_WINDOW_TEMP:
|
case GDK_WINDOW_TEMP:
|
||||||
/* A temp window is not necessarily a top level window */
|
/* A temp window is not necessarily a top level window */
|
||||||
dwStyle = (real_parent == NULL ||
|
dwStyle = real_parent == NULL ? WS_POPUP : WS_CHILDWINDOW;
|
||||||
gdk_win32_display_get_root_window (display) == real_parent) ?
|
|
||||||
WS_POPUP : WS_CHILDWINDOW;
|
|
||||||
dwStyle |= WS_CLIPCHILDREN | WS_CLIPSIBLINGS;
|
dwStyle |= WS_CLIPCHILDREN | WS_CLIPSIBLINGS;
|
||||||
dwExStyle |= WS_EX_TOOLWINDOW | WS_EX_TOPMOST;
|
dwExStyle |= WS_EX_TOOLWINDOW | WS_EX_TOPMOST;
|
||||||
offset_x = _gdk_offset_x;
|
offset_x = _gdk_offset_x;
|
||||||
|
Loading…
Reference in New Issue
Block a user