[epiphany/overview] ephy-overview-store: add ephy_overview_store_needs_snapshot()
- From: Claudio Saavedra <csaavedra src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [epiphany/overview] ephy-overview-store: add ephy_overview_store_needs_snapshot()
- Date: Mon, 13 Aug 2012 08:49:11 +0000 (UTC)
commit e95f171440926dc00a35468d1dadcb7d08e11939
Author: Claudio Saavedra <csaavedra igalia com>
Date: Mon Aug 13 11:17:10 2012 +0300
ephy-overview-store: add ephy_overview_store_needs_snapshot()
This method will return TRUE if no snapshot is set nor scheduled to be
loaded already.
lib/widgets/ephy-overview-store.c | 27 +++++++++++++++++++++++++++
lib/widgets/ephy-overview-store.h | 19 +++++++++++--------
2 files changed, 38 insertions(+), 8 deletions(-)
---
diff --git a/lib/widgets/ephy-overview-store.c b/lib/widgets/ephy-overview-store.c
index b395e86..5e425a1 100644
--- a/lib/widgets/ephy-overview-store.c
+++ b/lib/widgets/ephy-overview-store.c
@@ -428,6 +428,33 @@ ephy_overview_store_set_default_icon (EphyOverviewStore *store,
}
gboolean
+ephy_overview_store_needs_snapshot (EphyOverviewStore *store,
+ GtkTreeIter *iter)
+{
+ GdkPixbuf *icon;
+ GCancellable *cancellable;
+ gboolean needs_snapshot;
+
+ g_return_val_if_fail (EPHY_IS_OVERVIEW_STORE (store), FALSE);
+ g_return_val_if_fail (iter != NULL, FALSE);
+
+ gtk_tree_model_get (GTK_TREE_MODEL (store), iter,
+ EPHY_OVERVIEW_STORE_SNAPSHOT, &icon,
+ EPHY_OVERVIEW_STORE_SNAPSHOT_CANCELLABLE, &cancellable,
+ -1);
+
+ /* If the thumbnail is the default icon and there is no cancellable
+ in the row, then this row needs a snapshot. */
+ needs_snapshot = (icon == store->priv->default_icon && cancellable == NULL);
+
+ g_object_unref (icon);
+ if (cancellable)
+ g_object_unref (cancellable);
+
+ return needs_snapshot;
+}
+
+gboolean
ephy_overview_store_remove (EphyOverviewStore *store,
GtkTreeIter *iter)
{
diff --git a/lib/widgets/ephy-overview-store.h b/lib/widgets/ephy-overview-store.h
index 22b363a..7ea0dd1 100644
--- a/lib/widgets/ephy-overview-store.h
+++ b/lib/widgets/ephy-overview-store.h
@@ -66,17 +66,20 @@ enum {
EPHY_OVERVIEW_STORE_NCOLS
};
-GType ephy_overview_store_get_type (void) G_GNUC_CONST;
+GType ephy_overview_store_get_type (void) G_GNUC_CONST;
-void ephy_overview_store_peek_snapshot (EphyOverviewStore *self,
- WebKitWebView *webview,
- GtkTreeIter *iter);
+void ephy_overview_store_peek_snapshot (EphyOverviewStore *self,
+ WebKitWebView *webview,
+ GtkTreeIter *iter);
-void ephy_overview_store_set_default_icon (EphyOverviewStore *store,
- GdkPixbuf *default_icon);
+void ephy_overview_store_set_default_icon (EphyOverviewStore *store,
+ GdkPixbuf *default_icon);
-gboolean ephy_overview_store_remove (EphyOverviewStore *store,
- GtkTreeIter *iter);
+gboolean ephy_overview_store_needs_snapshot (EphyOverviewStore *store,
+ GtkTreeIter *iter);
+
+gboolean ephy_overview_store_remove (EphyOverviewStore *store,
+ GtkTreeIter *iter);
G_END_DECLS
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]