manager: Remove "loading" property

The stack is robust enough to handle dynamically
loading the calendars.
This commit is contained in:
Georges Basile Stavracas Neto
2019-05-04 12:05:39 -03:00
parent e7c6120133
commit df182d1b88
4 changed files with 6 additions and 72 deletions
-38
View File
@@ -86,9 +86,6 @@ struct _GcalManager
ViewStateData *search_view_data;
GCancellable *async_ops;
/* state flags */
gint sources_at_launch;
};
G_DEFINE_TYPE (GcalManager, gcal_manager, G_TYPE_OBJECT)
@@ -97,7 +94,6 @@ enum
{
PROP_0,
PROP_DEFAULT_CALENDAR,
PROP_LOADING,
NUM_PROPS
};
@@ -678,10 +674,6 @@ gcal_manager_get_property (GObject *object,
g_value_take_object (value, e_source_registry_ref_default_calendar (self->source_registry));
break;
case PROP_LOADING:
g_value_set_boolean (value, gcal_manager_get_loading (self));
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
}
@@ -711,17 +703,6 @@ gcal_manager_class_init (GcalManagerClass *klass)
E_TYPE_SOURCE,
G_PARAM_READWRITE);
/**
* GcalManager:loading:
*
* Whether the manager is loading or not.
*/
properties[PROP_LOADING] = g_param_spec_boolean ("loading",
"Loading",
"Whether it's still loading or not",
TRUE,
G_PARAM_READABLE);
g_object_class_install_properties (object_class, NUM_PROPS, properties);
/* signals */
@@ -1411,24 +1392,6 @@ gcal_manager_get_events (GcalManager *self,
GCAL_RETURN (data.events);
}
/**
* gcal_manager_get_loading:
* @self: a #GcalManager
*
* Retrieves whether @self is still loading or not. Loading is
* complete when the Online Accounts client is retrieved, and all
* the calendars are loaded.
*
* Returns: %TRUE if manager is still loading; %FALSE otherwise
*/
gboolean
gcal_manager_get_loading (GcalManager *self)
{
g_return_val_if_fail (GCAL_IS_MANAGER (self), FALSE);
return self->sources_at_launch > 0;
}
/**
* gcal_manager_get_event_from_shell_search:
* @self: a #GcalManager
@@ -1591,7 +1554,6 @@ gcal_manager_startup (GcalManager *self)
e_cal_data_model_set_timezone (self->e_data_model, e_cal_util_get_system_timezone ());
sources = e_source_registry_list_enabled (self->source_registry, E_SOURCE_EXTENSION_CALENDAR);
self->sources_at_launch = g_list_length (sources);
for (l = sources; l != NULL; l = l->next)
load_source (self, l->data);
-2
View File
@@ -91,8 +91,6 @@ GList* gcal_manager_get_events (GcalManager
icaltimetype *range_start,
icaltimetype *range_end);
gboolean gcal_manager_get_loading (GcalManager *self);
/* GNOME Shell-related functions */
GcalEvent* gcal_manager_get_event_from_shell_search (GcalManager *self,
const gchar *uuid);
+5 -9
View File
@@ -237,22 +237,18 @@ gcal_calendar_popover_set_property (GObject *object,
{
case PROP_CONTEXT:
{
g_autoptr (GList) calendars = NULL;
GcalManager *manager;
GList *l;
g_assert (self->context == NULL);
self->context = g_value_dup_object (value);
manager = gcal_context_get_manager (self->context);
if (!gcal_manager_get_loading (manager))
{
g_autoptr (GList) calendars = NULL;
GList *l;
calendars = gcal_manager_get_calendars (manager);
calendars = gcal_manager_get_calendars (manager);
for (l = calendars; l; l = l->next)
add_calendar (self, l->data);
}
for (l = calendars; l; l = l->next)
add_calendar (self, l->data);
g_signal_connect (manager, "calendar-added", G_CALLBACK (on_manager_calendar_added_cb), object);
g_signal_connect (manager, "calendar-removed", G_CALLBACK (on_manager_calendar_removed_cb), object);
+1 -23
View File
@@ -41,7 +41,6 @@ struct _GcalShellSearchProvider
GcalContext *context;
PendingSearch *pending_search;
guint scheduled_search_id;
GHashTable *events;
};
@@ -87,9 +86,6 @@ execute_search (GcalShellSearchProvider *self)
manager = gcal_context_get_manager (self->context);
if (gcal_manager_get_loading (manager))
GCAL_RETURN (TRUE);
now = g_date_time_new_now (gcal_context_get_timezone (self->context));
start = g_date_time_add_weeks (now, -1);
range_start = g_date_time_to_unix (start);
@@ -117,8 +113,6 @@ execute_search (GcalShellSearchProvider *self)
}
gcal_manager_set_shell_search_query (manager, search_query);
self->scheduled_search_id = 0;
g_application_hold (g_application_get_default ());
GCAL_RETURN (FALSE);
@@ -129,8 +123,6 @@ schedule_search (GcalShellSearchProvider *self,
GDBusMethodInvocation *invocation,
gchar **terms)
{
GcalManager *manager;
GCAL_ENTRY;
/* don't attempt searches for a single character */
@@ -145,30 +137,16 @@ schedule_search (GcalShellSearchProvider *self,
g_object_unref (self->pending_search->invocation);
g_strfreev (self->pending_search->terms);
if (self->scheduled_search_id == 0)
g_application_release (g_application_get_default ());
g_application_release (g_application_get_default ());
}
else
{
self->pending_search = g_new0 (PendingSearch, 1);
}
if (self->scheduled_search_id != 0)
{
g_source_remove (self->scheduled_search_id);
self->scheduled_search_id = 0;
}
self->pending_search->invocation = g_object_ref (invocation);
self->pending_search->terms = g_strdupv (terms);
manager = gcal_context_get_manager (self->context);
if (gcal_manager_get_loading (manager))
{
self->scheduled_search_id = g_timeout_add_seconds (1, (GSourceFunc) execute_search, self);
GCAL_RETURN ();
}
execute_search (self);
GCAL_EXIT;