mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-09-30 02:57:38 +00:00
Fix build on Windows
No idea of the widget embedding crack has worked in recent versions, even less now. But at least it now compiles.
This commit is contained in:
parent
1110375f24
commit
57e0b9a979
@ -27,6 +27,7 @@
|
|||||||
|
|
||||||
#include "gtkmain.h"
|
#include "gtkmain.h"
|
||||||
#include "gtkmarshalers.h"
|
#include "gtkmarshalers.h"
|
||||||
|
#include "gtksizerequest.h"
|
||||||
#include "gtkwin32embedwidget.h"
|
#include "gtkwin32embedwidget.h"
|
||||||
#include "gtkintl.h"
|
#include "gtkintl.h"
|
||||||
#include "gtkprivate.h"
|
#include "gtkprivate.h"
|
||||||
@ -82,8 +83,6 @@ gtk_win32_embed_widget_init (GtkWin32EmbedWidget *embed_widget)
|
|||||||
|
|
||||||
window = GTK_WINDOW (embed_widget);
|
window = GTK_WINDOW (embed_widget);
|
||||||
|
|
||||||
window->type = GTK_WINDOW_TOPLEVEL;
|
|
||||||
|
|
||||||
_gtk_widget_set_is_toplevel (GTK_WIDGET (embed_widget), TRUE);
|
_gtk_widget_set_is_toplevel (GTK_WIDGET (embed_widget), TRUE);
|
||||||
gtk_container_set_resize_mode (GTK_CONTAINER (embed_widget), GTK_RESIZE_QUEUE);
|
gtk_container_set_resize_mode (GTK_CONTAINER (embed_widget), GTK_RESIZE_QUEUE);
|
||||||
}
|
}
|
||||||
@ -209,9 +208,8 @@ gtk_win32_embed_widget_realize (GtkWidget *widget)
|
|||||||
gtk_widget_get_allocation (widget, &allocation);
|
gtk_widget_get_allocation (widget, &allocation);
|
||||||
|
|
||||||
attributes.window_type = GDK_WINDOW_CHILD;
|
attributes.window_type = GDK_WINDOW_CHILD;
|
||||||
attributes.title = window->title;
|
attributes.title = gtk_window_get_title (window);
|
||||||
attributes.wmclass_name = window->wmclass_name;
|
_gtk_window_get_wmclass (window, &attributes.wmclass_name, &attributes.wmclass_class);
|
||||||
attributes.wmclass_class = window->wmclass_class;
|
|
||||||
attributes.width = allocation.width;
|
attributes.width = allocation.width;
|
||||||
attributes.height = allocation.height;
|
attributes.height = allocation.height;
|
||||||
attributes.wclass = GDK_INPUT_OUTPUT;
|
attributes.wclass = GDK_INPUT_OUTPUT;
|
||||||
@ -230,8 +228,8 @@ gtk_win32_embed_widget_realize (GtkWidget *widget)
|
|||||||
GDK_FOCUS_CHANGE_MASK);
|
GDK_FOCUS_CHANGE_MASK);
|
||||||
|
|
||||||
attributes_mask = GDK_WA_VISUAL | GDK_WA_COLORMAP;
|
attributes_mask = GDK_WA_VISUAL | GDK_WA_COLORMAP;
|
||||||
attributes_mask |= (window->title ? GDK_WA_TITLE : 0);
|
attributes_mask |= (gtk_window_get_title (window) ? GDK_WA_TITLE : 0);
|
||||||
attributes_mask |= (window->wmclass_name ? GDK_WA_WMCLASS : 0);
|
attributes_mask |= (attributes.wmclass_name ? GDK_WA_WMCLASS : 0);
|
||||||
|
|
||||||
gdk_window = gdk_window_new (embed_widget->parent_window,
|
gdk_window = gdk_window_new (embed_widget->parent_window,
|
||||||
&attributes, attributes_mask);
|
&attributes, attributes_mask);
|
||||||
@ -347,10 +345,10 @@ gtk_win32_embed_widget_focus (GtkWidget *widget,
|
|||||||
if (gtk_widget_child_focus (old_focus_child, direction))
|
if (gtk_widget_child_focus (old_focus_child, direction))
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
if (window->focus_widget)
|
if (gtk_window_get_focus (window))
|
||||||
{
|
{
|
||||||
/* Wrapped off the end, clear the focus setting for the toplevel */
|
/* Wrapped off the end, clear the focus setting for the toplevel */
|
||||||
parent = gtk_widget_get_parent (window->focus_widget);
|
parent = gtk_widget_get_parent (gtk_window_get_focus (window));
|
||||||
while (parent)
|
while (parent)
|
||||||
{
|
{
|
||||||
gtk_container_set_focus_child (GTK_CONTAINER (parent), NULL);
|
gtk_container_set_focus_child (GTK_CONTAINER (parent), NULL);
|
||||||
|
Loading…
Reference in New Issue
Block a user