Copyright | Will Thompson, Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
Safe Haskell | None |
Language | Haskell2010 |
GI.WebKit.Objects.ViewportAttributes
Contents
Description
ViewportAttributes
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 WebView
::viewport-attributes-changed
signal will be emitted with ViewportAttributes
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 WebView
::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.html
<informalexample><programlisting> /<!-- -->* 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); } </programlisting></informalexample>
- newtype ViewportAttributes = ViewportAttributes (ManagedPtr ViewportAttributes)
- class GObject o => IsViewportAttributes o
- toViewportAttributes :: IsViewportAttributes o => o -> IO ViewportAttributes
- noViewportAttributes :: Maybe ViewportAttributes
- data ViewportAttributesRecomputeMethodInfo
- viewportAttributesRecompute :: (HasCallStack, MonadIO m, IsViewportAttributes a) => a -> m ()
- data ViewportAttributesAvailableHeightPropertyInfo
- constructViewportAttributesAvailableHeight :: IsViewportAttributes o => Int32 -> IO (GValueConstruct o)
- getViewportAttributesAvailableHeight :: (MonadIO m, IsViewportAttributes o) => o -> m Int32
- setViewportAttributesAvailableHeight :: (MonadIO m, IsViewportAttributes o) => o -> Int32 -> m ()
- viewportAttributesAvailableHeight :: AttrLabelProxy "availableHeight"
- data ViewportAttributesAvailableWidthPropertyInfo
- constructViewportAttributesAvailableWidth :: IsViewportAttributes o => Int32 -> IO (GValueConstruct o)
- getViewportAttributesAvailableWidth :: (MonadIO m, IsViewportAttributes o) => o -> m Int32
- setViewportAttributesAvailableWidth :: (MonadIO m, IsViewportAttributes o) => o -> Int32 -> m ()
- viewportAttributesAvailableWidth :: AttrLabelProxy "availableWidth"
- data ViewportAttributesDesktopWidthPropertyInfo
- constructViewportAttributesDesktopWidth :: IsViewportAttributes o => Int32 -> IO (GValueConstruct o)
- getViewportAttributesDesktopWidth :: (MonadIO m, IsViewportAttributes o) => o -> m Int32
- setViewportAttributesDesktopWidth :: (MonadIO m, IsViewportAttributes o) => o -> Int32 -> m ()
- viewportAttributesDesktopWidth :: AttrLabelProxy "desktopWidth"
- data ViewportAttributesDeviceDpiPropertyInfo
- constructViewportAttributesDeviceDpi :: IsViewportAttributes o => Int32 -> IO (GValueConstruct o)
- getViewportAttributesDeviceDpi :: (MonadIO m, IsViewportAttributes o) => o -> m Int32
- setViewportAttributesDeviceDpi :: (MonadIO m, IsViewportAttributes o) => o -> Int32 -> m ()
- viewportAttributesDeviceDpi :: AttrLabelProxy "deviceDpi"
- data ViewportAttributesDeviceHeightPropertyInfo
- constructViewportAttributesDeviceHeight :: IsViewportAttributes o => Int32 -> IO (GValueConstruct o)
- getViewportAttributesDeviceHeight :: (MonadIO m, IsViewportAttributes o) => o -> m Int32
- setViewportAttributesDeviceHeight :: (MonadIO m, IsViewportAttributes o) => o -> Int32 -> m ()
- viewportAttributesDeviceHeight :: AttrLabelProxy "deviceHeight"
- data ViewportAttributesDevicePixelRatioPropertyInfo
- getViewportAttributesDevicePixelRatio :: (MonadIO m, IsViewportAttributes o) => o -> m Float
- viewportAttributesDevicePixelRatio :: AttrLabelProxy "devicePixelRatio"
- data ViewportAttributesDeviceWidthPropertyInfo
- constructViewportAttributesDeviceWidth :: IsViewportAttributes o => Int32 -> IO (GValueConstruct o)
- getViewportAttributesDeviceWidth :: (MonadIO m, IsViewportAttributes o) => o -> m Int32
- setViewportAttributesDeviceWidth :: (MonadIO m, IsViewportAttributes o) => o -> Int32 -> m ()
- viewportAttributesDeviceWidth :: AttrLabelProxy "deviceWidth"
- data ViewportAttributesHeightPropertyInfo
- getViewportAttributesHeight :: (MonadIO m, IsViewportAttributes o) => o -> m Int32
- viewportAttributesHeight :: AttrLabelProxy "height"
- data ViewportAttributesInitialScaleFactorPropertyInfo
- getViewportAttributesInitialScaleFactor :: (MonadIO m, IsViewportAttributes o) => o -> m Float
- viewportAttributesInitialScaleFactor :: AttrLabelProxy "initialScaleFactor"
- data ViewportAttributesMaximumScaleFactorPropertyInfo
- getViewportAttributesMaximumScaleFactor :: (MonadIO m, IsViewportAttributes o) => o -> m Float
- viewportAttributesMaximumScaleFactor :: AttrLabelProxy "maximumScaleFactor"
- data ViewportAttributesMinimumScaleFactorPropertyInfo
- getViewportAttributesMinimumScaleFactor :: (MonadIO m, IsViewportAttributes o) => o -> m Float
- viewportAttributesMinimumScaleFactor :: AttrLabelProxy "minimumScaleFactor"
- data ViewportAttributesUserScalablePropertyInfo
- getViewportAttributesUserScalable :: (MonadIO m, IsViewportAttributes o) => o -> m Bool
- viewportAttributesUserScalable :: AttrLabelProxy "userScalable"
- data ViewportAttributesValidPropertyInfo
- getViewportAttributesValid :: (MonadIO m, IsViewportAttributes o) => o -> m Bool
- viewportAttributesValid :: AttrLabelProxy "valid"
- data ViewportAttributesWidthPropertyInfo
- getViewportAttributesWidth :: (MonadIO m, IsViewportAttributes o) => o -> m Int32
- viewportAttributesWidth :: AttrLabelProxy "width"
Exported types
newtype ViewportAttributes Source #
Constructors
ViewportAttributes (ManagedPtr ViewportAttributes) |
Instances
GObject ViewportAttributes Source # | |
IsObject ViewportAttributes Source # | |
IsViewportAttributes ViewportAttributes Source # | |
((~) * info (ResolveViewportAttributesMethod t ViewportAttributes), MethodInfo * info ViewportAttributes p) => IsLabel t (ViewportAttributes -> p) Source # | |
((~) * info (ResolveViewportAttributesMethod t ViewportAttributes), MethodInfo * info ViewportAttributes p) => IsLabelProxy t (ViewportAttributes -> p) Source # | |
HasAttributeList * ViewportAttributes Source # | |
type AttributeList ViewportAttributes Source # | |
type SignalList ViewportAttributes Source # | |
class GObject o => IsViewportAttributes o Source #
Instances
toViewportAttributes :: IsViewportAttributes o => o -> IO ViewportAttributes Source #
Methods
recompute
data ViewportAttributesRecomputeMethodInfo Source #
Instances
((~) * signature (m ()), MonadIO m, IsViewportAttributes a) => MethodInfo * ViewportAttributesRecomputeMethodInfo a signature Source # | |
viewportAttributesRecompute Source #
Arguments
:: (HasCallStack, MonadIO m, IsViewportAttributes a) | |
=> a |
|
-> m () |
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.
Since: 1.3.8
Properties
availableHeight
data ViewportAttributesAvailableHeightPropertyInfo Source #
Instances
constructViewportAttributesAvailableHeight :: IsViewportAttributes o => Int32 -> IO (GValueConstruct o) Source #
getViewportAttributesAvailableHeight :: (MonadIO m, IsViewportAttributes o) => o -> m Int32 Source #
setViewportAttributesAvailableHeight :: (MonadIO m, IsViewportAttributes o) => o -> Int32 -> m () Source #
viewportAttributesAvailableHeight :: AttrLabelProxy "availableHeight" Source #
availableWidth
data ViewportAttributesAvailableWidthPropertyInfo Source #
Instances
constructViewportAttributesAvailableWidth :: IsViewportAttributes o => Int32 -> IO (GValueConstruct o) Source #
getViewportAttributesAvailableWidth :: (MonadIO m, IsViewportAttributes o) => o -> m Int32 Source #
setViewportAttributesAvailableWidth :: (MonadIO m, IsViewportAttributes o) => o -> Int32 -> m () Source #
viewportAttributesAvailableWidth :: AttrLabelProxy "availableWidth" Source #
desktopWidth
data ViewportAttributesDesktopWidthPropertyInfo Source #
Instances
constructViewportAttributesDesktopWidth :: IsViewportAttributes o => Int32 -> IO (GValueConstruct o) Source #
getViewportAttributesDesktopWidth :: (MonadIO m, IsViewportAttributes o) => o -> m Int32 Source #
setViewportAttributesDesktopWidth :: (MonadIO m, IsViewportAttributes o) => o -> Int32 -> m () Source #
viewportAttributesDesktopWidth :: AttrLabelProxy "desktopWidth" Source #
deviceDpi
data ViewportAttributesDeviceDpiPropertyInfo Source #
Instances
constructViewportAttributesDeviceDpi :: IsViewportAttributes o => Int32 -> IO (GValueConstruct o) Source #
getViewportAttributesDeviceDpi :: (MonadIO m, IsViewportAttributes o) => o -> m Int32 Source #
setViewportAttributesDeviceDpi :: (MonadIO m, IsViewportAttributes o) => o -> Int32 -> m () Source #
viewportAttributesDeviceDpi :: AttrLabelProxy "deviceDpi" Source #
deviceHeight
data ViewportAttributesDeviceHeightPropertyInfo Source #
Instances
constructViewportAttributesDeviceHeight :: IsViewportAttributes o => Int32 -> IO (GValueConstruct o) Source #
getViewportAttributesDeviceHeight :: (MonadIO m, IsViewportAttributes o) => o -> m Int32 Source #
setViewportAttributesDeviceHeight :: (MonadIO m, IsViewportAttributes o) => o -> Int32 -> m () Source #
viewportAttributesDeviceHeight :: AttrLabelProxy "deviceHeight" Source #
devicePixelRatio
data ViewportAttributesDevicePixelRatioPropertyInfo Source #
Instances
getViewportAttributesDevicePixelRatio :: (MonadIO m, IsViewportAttributes o) => o -> m Float Source #
viewportAttributesDevicePixelRatio :: AttrLabelProxy "devicePixelRatio" Source #
deviceWidth
data ViewportAttributesDeviceWidthPropertyInfo Source #
Instances
constructViewportAttributesDeviceWidth :: IsViewportAttributes o => Int32 -> IO (GValueConstruct o) Source #
getViewportAttributesDeviceWidth :: (MonadIO m, IsViewportAttributes o) => o -> m Int32 Source #
setViewportAttributesDeviceWidth :: (MonadIO m, IsViewportAttributes o) => o -> Int32 -> m () Source #
viewportAttributesDeviceWidth :: AttrLabelProxy "deviceWidth" Source #
height
data ViewportAttributesHeightPropertyInfo Source #
Instances
getViewportAttributesHeight :: (MonadIO m, IsViewportAttributes o) => o -> m Int32 Source #
viewportAttributesHeight :: AttrLabelProxy "height" Source #
initialScaleFactor
data ViewportAttributesInitialScaleFactorPropertyInfo Source #
Instances
getViewportAttributesInitialScaleFactor :: (MonadIO m, IsViewportAttributes o) => o -> m Float Source #
viewportAttributesInitialScaleFactor :: AttrLabelProxy "initialScaleFactor" Source #
maximumScaleFactor
data ViewportAttributesMaximumScaleFactorPropertyInfo Source #
Instances
getViewportAttributesMaximumScaleFactor :: (MonadIO m, IsViewportAttributes o) => o -> m Float Source #
viewportAttributesMaximumScaleFactor :: AttrLabelProxy "maximumScaleFactor" Source #
minimumScaleFactor
data ViewportAttributesMinimumScaleFactorPropertyInfo Source #
Instances
getViewportAttributesMinimumScaleFactor :: (MonadIO m, IsViewportAttributes o) => o -> m Float Source #
viewportAttributesMinimumScaleFactor :: AttrLabelProxy "minimumScaleFactor" Source #
userScalable
data ViewportAttributesUserScalablePropertyInfo Source #
Instances
getViewportAttributesUserScalable :: (MonadIO m, IsViewportAttributes o) => o -> m Bool Source #
viewportAttributesUserScalable :: AttrLabelProxy "userScalable" Source #
valid
data ViewportAttributesValidPropertyInfo Source #
Instances
getViewportAttributesValid :: (MonadIO m, IsViewportAttributes o) => o -> m Bool Source #
viewportAttributesValid :: AttrLabelProxy "valid" Source #
width
data ViewportAttributesWidthPropertyInfo Source #
Instances
getViewportAttributesWidth :: (MonadIO m, IsViewportAttributes o) => o -> m Int32 Source #
viewportAttributesWidth :: AttrLabelProxy "width" Source #