summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Nicholson <dbn.lists@gmail.com>2013-01-08 04:28:58 -0800
committerDan Nicholson <dbn.lists@gmail.com>2013-01-19 16:02:28 -0800
commitc441b591c7f93824bc87d5b2b0688f7fea27e863 (patch)
treee6450a7c9ada7eadead3e40df40e4dea8ef42ebe
parent7f118657d7e821471b454d459fbdd73e676151d5 (diff)
Move forced redraw out of widget into plugin
The EvbpViewer widget normally works fine, and the forced resizing only seems to be needed on Epiphany.
-rw-r--r--src/evbp-viewer.c6
-rw-r--r--src/evbp.c12
2 files changed, 12 insertions, 6 deletions
diff --git a/src/evbp-viewer.c b/src/evbp-viewer.c
index 0d96622..1c7ad70 100644
--- a/src/evbp-viewer.c
+++ b/src/evbp-viewer.c
@@ -474,8 +474,6 @@ evbp_viewer_new(void)
gboolean
evbp_viewer_load_uri(EvbpViewer *viewer, const gchar *uri, GError **error)
{
- GtkWidget *container;
-
if (viewer->document)
g_object_unref(viewer->document);
@@ -487,9 +485,5 @@ evbp_viewer_load_uri(EvbpViewer *viewer, const gchar *uri, GError **error)
ev_view_set_loading(EV_VIEW(viewer->view), FALSE);
gtk_action_group_set_sensitive(viewer->action_group, TRUE);
- container = gtk_widget_get_ancestor(GTK_WIDGET(viewer),
- GTK_TYPE_CONTAINER);
- gtk_container_resize_children(GTK_CONTAINER(container));
-
return TRUE;
}
diff --git a/src/evbp.c b/src/evbp.c
index 916ba73..849e3fc 100644
--- a/src/evbp.c
+++ b/src/evbp.c
@@ -136,6 +136,17 @@ evbp_shutdown(void)
ev_is_initialized = FALSE;
}
+static void
+evbp_force_redraw(NPP instance)
+{
+ evbp_priv_t *priv = instance->pdata;
+
+ g_debug("%s", __func__);
+
+ /* there's probably a better way than this gross hack */
+ gtk_container_resize_children(GTK_CONTAINER(priv->plug));
+}
+
static NPError
evbp_new(NPMIMEType pluginType, NPP instance, uint16_t mode,
int16_t argc, char *argn[], char *argv[],
@@ -270,6 +281,7 @@ evbp_stream_as_file(NPP instance, NPStream *stream, const char *fname)
g_error_free(error);
return;
}
+ evbp_force_redraw(instance);
}
static void