WindowProperties

The content of a #WebKitWebView can request to change certain properties of the window containing the view. This can include the x, y position of the window, the width and height but also if a toolbar, scrollbar, statusbar, locationbar should be visible to the user, and the request to show the #WebKitWebView fullscreen.

The #WebKitWebView::ready-to-show signal handler is the proper place to apply the initial window properties. Then you can monitor the #WebKitWindowProperties by connecting to ::notify signal.

<informalexample><programlisting> static void ready_to_show_cb (WebKitWebView *web_view, gpointer user_data) { GtkWidget *window; WebKitWindowProperties *window_properties; gboolean visible;

/<!-- -->* Create the window to contain the WebKitWebView *<!-- -->/ window = browser_window_new (); gtk_container_add (GTK_CONTAINER (window), GTK_WIDGET (web_view)); gtk_widget_show (GTK_WIDGET (web_view));

/<!-- -->* Get the WebKitWindowProperties of the web view and monitor it *<!-- -->/ window_properties = webkit_web_view_get_window_properties (web_view); g_signal_connect (window_properties, "notify::geometry", G_CALLBACK (window_geometry_changed), window); g_signal_connect (window_properties, "notify::toolbar-visible", G_CALLBACK (window_toolbar_visibility_changed), window); g_signal_connect (window_properties, "notify::menubar-visible", G_CALLBACK (window_menubar_visibility_changed), window); ....

/<!-- -->* Apply the window properties before showing the window *<!-- -->/ visible = webkit_window_properties_get_toolbar_visible (window_properties); browser_window_set_toolbar_visible (BROWSER_WINDOW (window), visible); visible = webkit_window_properties_get_menubar_visible (window_properties); browser_window_set_menubar_visible (BROWSER_WINDOW (window), visible); ....

if (webkit_window_properties_get_fullscreen (window_properties)) { gtk_window_fullscreen (GTK_WINDOW (window)); } else { GdkRectangle geometry;

gtk_window_set_resizable (GTK_WINDOW (window), webkit_window_properties_get_resizable (window_properties)); webkit_window_properties_get_geometry (window_properties, &geometry); gtk_window_move (GTK_WINDOW (window), geometry.x, geometry.y); gtk_window_resize (GTK_WINDOW (window), geometry.width, geometry.height); }

gtk_widget_show (window); } </programlisting></informalexample>

Constructors

this
this(WebKitWindowProperties* webKitWindowProperties, bool ownedRef)

Sets our main struct and passes it to the parent class.

Members

Functions

getFullscreen
bool getFullscreen()

Get whether the window should be shown in fullscreen state or not.

getGeometry
void getGeometry(GdkRectangle geometry)

Get the geometry the window should have on the screen when shown.

getLocationbarVisible
bool getLocationbarVisible()

Get whether the window should have the locationbar visible or not.

getMenubarVisible
bool getMenubarVisible()

Get whether the window should have the menubar visible or not.

getResizable
bool getResizable()

Get whether the window should be resizable by the user or not.

getScrollbarsVisible
bool getScrollbarsVisible()

Get whether the window should have the scrollbars visible or not.

getStatusbarVisible
bool getStatusbarVisible()

Get whether the window should have the statusbar visible or not.

getStruct
void* getStruct()

the main Gtk struct as a void*

getToolbarVisible
bool getToolbarVisible()

Get whether the window should have the toolbar visible or not.

getWindowPropertiesStruct
WebKitWindowProperties* getWindowPropertiesStruct(bool transferOwnership)

Get the main Gtk struct

Static functions

getType
GType getType()

Variables

webKitWindowProperties
WebKitWindowProperties* webKitWindowProperties;

the main Gtk struct

Meta