* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*
* Authors: Cody Russell <crussell@canonical.com>
* Alexander Larsson <alexl@redhat.com>
#include "gtkoffscreenwindow.h"
#include "gtkwidgetprivate.h"
+#include "gtkcontainerprivate.h"
#include "gtkprivate.h"
/**
GdkWindow *window;
GdkWindowAttr attributes;
gint attributes_mask;
- gint border_width;
bin = GTK_BIN (widget);
gtk_widget_set_realized (widget, TRUE);
- border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
-
gtk_widget_get_allocation (widget, &allocation);
attributes.x = allocation.x;
window = gdk_window_new (gtk_widget_get_parent_window (widget),
&attributes, attributes_mask);
gtk_widget_set_window (widget, window);
- gdk_window_set_user_data (window, widget);
+ gtk_widget_register_window (widget, window);
child = gtk_bin_get_child (bin);
if (child)
gtk_widget_set_parent_window (child, window);
- gtk_widget_style_attach (widget);
- gtk_style_set_background (gtk_widget_get_style (widget),
- window, GTK_STATE_NORMAL);
+ gtk_style_context_set_background (gtk_widget_get_style_context (widget),
+ window);
}
static void
gtk_offscreen_window_show (GtkWidget *widget)
{
gboolean need_resize;
- GtkContainer *container;
_gtk_widget_set_visible_flag (widget, TRUE);
- container = GTK_CONTAINER (widget);
- need_resize = _gtk_container_get_need_resize (container) || !gtk_widget_get_realized (widget);
- _gtk_container_set_need_resize (container, FALSE);
+ need_resize = _gtk_widget_get_alloc_needed (widget) || !gtk_widget_get_realized (widget);
if (need_resize)
gtk_offscreen_window_resize (widget);