void _gdk_win32_window_tmp_unset_bg (GdkWindow *window, gboolean recurse) { g_return_if_fail (GDK_IS_WINDOW (window)); if (window->input_only || window->destroyed || (window->window_type != GDK_WINDOW_ROOT && !GDK_WINDOW_IS_MAPPED (window))) return; if (_gdk_window_has_impl (window) && GDK_WINDOW_IS_WIN32 (window) && window->window_type != GDK_WINDOW_ROOT && window->window_type != GDK_WINDOW_FOREIGN) tmp_unset_bg (window); if (recurse) { GList *l; for (l = window->children; l != NULL; l = l->next) _gdk_win32_window_tmp_unset_bg (l->data, TRUE); } }
void _gdk_win32_window_tmp_unset_parent_bg (GdkWindow *window) { if (GDK_WINDOW_TYPE (window->parent) == GDK_WINDOW_ROOT) return; window = _gdk_window_get_impl_window (window->parent); _gdk_win32_window_tmp_unset_bg (window, FALSE); }
void _gdk_window_move_resize_child (GdkWindow *window, gint x, gint y, gint width, gint height) { GdkWindowImplWin32 *impl; GdkWindowObject *obj; g_return_if_fail (window != NULL); g_return_if_fail (GDK_IS_WINDOW (window)); obj = GDK_WINDOW_OBJECT (window); impl = GDK_WINDOW_IMPL_WIN32 (obj->impl); GDK_NOTE (MISC, g_print ("_gdk_window_move_resize_child: %s@%+d%+d %dx%d@%+d%+d\n", _gdk_win32_drawable_description (window), obj->x, obj->y, width, height, x, y)); if (width > 65535 || height > 65535) { g_warning ("Native children wider or taller than 65535 pixels are not supported."); if (width > 65535) width = 65535; if (height > 65535) height = 65535; } obj->x = x; obj->y = y; obj->width = width; obj->height = height; _gdk_win32_window_tmp_unset_parent_bg (window); _gdk_win32_window_tmp_unset_bg (window, TRUE); GDK_NOTE (MISC, g_print ("... SetWindowPos(%p,NULL,%d,%d,%d,%d," "NOACTIVATE|NOZORDER)\n", GDK_WINDOW_HWND (window), obj->x + obj->parent->abs_x, obj->y + obj->parent->abs_y, width, height)); API_CALL (SetWindowPos, (GDK_WINDOW_HWND (window), NULL, obj->x + obj->parent->abs_x, obj->y + obj->parent->abs_y, width, height, SWP_NOACTIVATE | SWP_NOZORDER)); //_gdk_win32_window_tmp_reset_parent_bg (window); _gdk_win32_window_tmp_reset_bg (window, TRUE); }