manpagez: man pages & more
html files: webkitgtk
Home | html | info | man

WebKitViewportAttributes

WebKitViewportAttributes — Represents the viewport properties of a web page

Types and Values

Object Hierarchy

    GObject
    ╰── WebKitViewportAttributes

Description

WebKitViewportAttributes offers the viewport properties to user agents to control the viewport layout. It contains the viewport size, initial scale with limits, and information about whether a user is able to scale the contents in the viewport. This makes a web page fit the device screen.

The “viewport-attributes-changed” signal will be emitted with WebKitViewportAttributes when the viewport attributes are updated in the case of loading web pages contain the viewport properties and calling webkit_viewport_attributes_recompute.

If the device size, available size, desktop width, or device DPI needs to be changed due to a consequence of an explicit browser request (caused by screen rotation, resizing, or similar reasons), You should call webkit_viewport_attributes_recompute to recompute the viewport properties and override those values in the handler of “viewport-attributes-recompute-requested” signal.

For more information on the viewport properties, refer to the Safari reference library at http://developer.apple.com/safari/library/documentation/appleapplications/reference/safarihtmlref/articles/metatags.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
/* Connect to the viewport-attributes-changes signal */
WebKitViewportAttributes* attributes = webkit_web_view_get_viewport_attributes (web_view);
g_signal_connect (web_view, "viewport-attributes-recompute-requested", G_CALLBACK (viewport_recompute_cb), window);
g_signal_connect (web_view, "viewport-attributes-changed", G_CALLBACK (viewport_changed_cb), window);
g_signal_connect (attributes, "notify::valid", G_CALLBACK (viewport_valid_changed_cb), web_view);

/* Handle the viewport-attributes-recompute-requested signal to override the device width */
static void
viewport_recompute_cb (WebKitWebView* web_view, WebKitViewportAttributes* attributes, GtkWidget* window)
{
    int override_available_width = 480;
    g_object_set (G_OBJECT(attributes), "available-width", override_available_width, NULL);
}

/* Handle the viewport-attributes-changed signal to recompute the initial scale factor */
static void
viewport_changed_cb (WebKitWebView* web_view, WebKitViewportAttributes* attributes, gpointer data)
{
    gfloat initialScale;
    g_object_get (G_OBJECT (atributes), "initial-scale-factor", &initialScale, NULL);
    webkit_web_view_set_zoom_level (web_view, initialScale);
}

/* Handle the notify::valid signal to initialize the zoom level */
static void
viewport_valid_changed_cb (WebKitViewportAttributes* attributes, GParamSpec* pspec, WebKitWebView* web_view)
{
    gboolean is_valid;
    g_object_get (attributes, "valid", &is_valid, NULL);
    if (!is_valid)
        webkit_web_view_set_zoom_level (web_view, 1.0);
}

Functions

webkit_viewport_attributes_recompute ()

void
webkit_viewport_attributes_recompute (WebKitViewportAttributes *viewportAttributes);

Recompute the optimal viewport attributes and emit the viewport-attribute-changed signal. The viewport-attributes-recompute-requested signal also will be handled to override the device size, available size, desktop width, or device DPI.

Parameters

viewportAttributes

a WebKitViewportAttributes

 

Since: 1.3.8

Types and Values

WebKitViewportAttributes

typedef struct _WebKitViewportAttributes WebKitViewportAttributes;

Property Details

The “available-height” property

  “available-height”         gint

The height of the visible area.

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “available-width” property

  “available-width”          gint

The width of the visible area.

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “desktop-width” property

  “desktop-width”            gint

The width of viewport that works well for most web pages designed for desktop.

Flags: Read / Write

Allowed values: >= 0

Default value: 980


The “device-dpi” property

  “device-dpi”               gint

The number of dots per inch of the screen.

Flags: Read / Write

Allowed values: >= 0

Default value: 160


The “device-height” property

  “device-height”            gint

The height of the screen.

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “device-pixel-ratio” property

  “device-pixel-ratio”       gfloat

The device pixel ratio of the viewport.

Flags: Read

Allowed values: >= -1

Default value: -1


The “device-width” property

  “device-width”             gint

The width of the screen.

Flags: Read / Write

Allowed values: >= 0

Default value: 0


The “height” property

  “height”                   gint

The height of the viewport.

Flags: Read

Allowed values: >= 0

Default value: 0


The “initial-scale-factor” property

  “initial-scale-factor”     gfloat

The initial scale of the viewport.

Flags: Read

Allowed values: >= -1

Default value: -1


The “maximum-scale-factor” property

  “maximum-scale-factor”     gfloat

The maximum scale of the viewport.

Flags: Read

Allowed values: >= -1

Default value: -1


The “minimum-scale-factor” property

  “minimum-scale-factor”     gfloat

The minimum scale of the viewport.

Flags: Read

Allowed values: >= -1

Default value: -1


The “user-scalable” property

  “user-scalable”            gboolean

Determines whether or not the user can zoom in and out.

Flags: Read

Default value: TRUE


The “valid” property

  “valid”                    gboolean

Determines whether or not the attributes are valid, and can be used.

Flags: Read

Default value: FALSE


The “width” property

  “width”                    gint

The width of the viewport.

Flags: Read

Allowed values: >= 0

Default value: 0

© manpagez.com 2000-2017
Individual documents may contain additional copyright information.