Remove zoom compatibility, use new API or fall through

This commit is contained in:
Christian Dywan 2008-06-09 03:13:08 +02:00
parent 0cf86e0ee0
commit 8e8e9f3663
3 changed files with 7 additions and 66 deletions

View file

@ -40,90 +40,31 @@ gtk_tool_item_set_tooltip_text (GtkToolItem* toolitem,
#ifndef WEBKIT_CHECK_VERSION #ifndef WEBKIT_CHECK_VERSION
/**
* webkit_web_view_get_zoom_level:
* @web_view: a #WebKitWebView
*
* Retrieves the current zoom level.
*
* Return value: the zoom level, always 1.0 if not supported
**/
gfloat gfloat
webkit_web_view_get_zoom_level (WebKitWebView* web_view) webkit_web_view_get_zoom_level (WebKitWebView* web_view)
{ {
g_return_val_if_fail (WEBKIT_IS_WEB_VIEW (web_view), 1.0); g_return_val_if_fail (WEBKIT_IS_WEB_VIEW (web_view), 1.0);
if (g_object_class_find_property (G_OBJECT_GET_CLASS (web_view),
"zoom-level"))
{
gfloat zoom_level;
g_object_get (web_view, "zoom-level", &zoom_level, NULL);
return zoom_level;
}
return 1.0; return 1.0;
} }
/**
* webkit_web_view_set_zoom_level:
* @web_view: a #WebKitWebView
*
* Sets the current zoom level.
*
* Does nothing if not supported.
**/
void void
webkit_web_view_set_zoom_level (WebKitWebView* web_view, webkit_web_view_set_zoom_level (WebKitWebView* web_view,
gfloat zoom_level) gfloat zoom_level)
{ {
g_return_if_fail (WEBKIT_IS_WEB_VIEW (web_view)); g_return_if_fail (WEBKIT_IS_WEB_VIEW (web_view));
if (g_object_class_find_property (G_OBJECT_GET_CLASS (web_view),
"zoom-level"))
g_object_set (web_view, "zoom-level", zoom_level, NULL);
} }
/**
* webkit_web_view_zoom_in:
* @web_view: a #WebKitWebView
*
* Increases the current zoom level.
*
* Does nothing if not supported.
**/
void void
webkit_web_view_zoom_in (WebKitWebView* web_view) webkit_web_view_zoom_in (WebKitWebView* web_view)
{ {
g_return_if_fail (WEBKIT_IS_WEB_VIEW (web_view)); g_return_if_fail (WEBKIT_IS_WEB_VIEW (web_view));
gfloat zoom_level = webkit_web_view_get_zoom_level (web_view);
WebKitWebSettings* settings = webkit_web_view_get_settings (web_view);
gfloat zoom_step;
g_object_get (settings, "zoom-step", &zoom_step, NULL);
webkit_web_view_set_zoom_level (web_view, zoom_level + zoom_step);
} }
/**
* webkit_web_view_zoom_out:
* @web_view: a #WebKitWebView
*
* Decreases the current zoom level.
*
* Does nothing if not supported.
**/
void void
webkit_web_view_zoom_out (WebKitWebView* web_view) webkit_web_view_zoom_out (WebKitWebView* web_view)
{ {
g_return_if_fail (WEBKIT_IS_WEB_VIEW (web_view)); g_return_if_fail (WEBKIT_IS_WEB_VIEW (web_view));
gfloat zoom_level = webkit_web_view_get_zoom_level (web_view);
WebKitWebSettings* settings = webkit_web_view_get_settings (web_view);
if (g_object_class_find_property (G_OBJECT_GET_CLASS (settings),
"zoom-step"))
{
gfloat zoom_step;
g_object_get (settings, "zoom-step", &zoom_step, NULL);
webkit_web_view_set_zoom_level (web_view, zoom_level - zoom_step);
}
} }
#endif #endif

View file

@ -34,7 +34,8 @@ gfloat
webkit_web_view_get_zoom_level (WebKitWebView* web_view); webkit_web_view_get_zoom_level (WebKitWebView* web_view);
void void
webkit_web_view_set_zoom_level (WebKitWebView* web_view); webkit_web_view_set_zoom_level (WebKitWebView* web_view,
gfloat zoom_level);
void void
webkit_web_view_zoom_in (WebKitWebView* web_view); webkit_web_view_zoom_in (WebKitWebView* web_view);

View file

@ -180,12 +180,6 @@ _midori_browser_update_interface (MidoriBrowser* browser)
loading = midori_web_view_is_loading (MIDORI_WEB_VIEW (web_view)); loading = midori_web_view_is_loading (MIDORI_WEB_VIEW (web_view));
_action_set_sensitive (browser, "ZoomNormal", _action_set_sensitive (browser, "ZoomNormal",
webkit_web_view_get_zoom_level (WEBKIT_WEB_VIEW (web_view)) != 1.0); webkit_web_view_get_zoom_level (WEBKIT_WEB_VIEW (web_view)) != 1.0);
if (!g_object_class_find_property (G_OBJECT_GET_CLASS (web_view),
"zoom-level"))
{
_action_set_sensitive (browser, "ZoomIn", FALSE);
_action_set_sensitive (browser, "ZoomOut", FALSE);
}
_action_set_sensitive (browser, "Back", _action_set_sensitive (browser, "Back",
webkit_web_view_can_go_back (WEBKIT_WEB_VIEW (web_view))); webkit_web_view_can_go_back (WEBKIT_WEB_VIEW (web_view)));
_action_set_sensitive (browser, "Forward", _action_set_sensitive (browser, "Forward",
@ -2985,6 +2979,11 @@ midori_browser_init (MidoriBrowser* browser)
"", _("Extensions")); "", _("Extensions"));
g_object_unref (ui_manager); g_object_unref (ui_manager);
#ifndef WEBKIT_CHECK_VERSION
_action_set_sensitive (browser, "ZoomIn", FALSE);
_action_set_sensitive (browser, "ZoomOut", FALSE);
#endif
} }
static void static void