edit-dialog: fix time widgets sensitive when all day

This commit is contained in:
Georges Basile Stavracas Neto
2017-08-24 07:16:15 +09:00
parent 3eec69c559
commit 6004123ba2
2 changed files with 13 additions and 8 deletions
-2
View File
@@ -311,7 +311,6 @@
<object class="GcalTimeSelector" id="start_time_selector">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="sensitive" bind-source="GcalEditDialog" bind-property="writable" bind-flags="default" />
<signal name="notify::time" handler="sync_datetimes" object="GcalEditDialog" swapped="yes" />
</object>
</child>
@@ -326,7 +325,6 @@
<object class="GcalTimeSelector" id="end_time_selector">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="sensitive" bind-source="GcalEditDialog" bind-property="writable" bind-flags="default" />
<signal name="notify::time" handler="sync_datetimes" object="GcalEditDialog" swapped="yes" />
</object>
</child>
+13 -6
View File
@@ -260,14 +260,21 @@ static void
gcal_edit_dialog_set_writable (GcalEditDialog *dialog,
gboolean writable)
{
if (dialog->writable != writable)
{
dialog->writable = writable;
gboolean all_day;
gtk_button_set_label (GTK_BUTTON (dialog->done_button), writable ? _("Save") : _("Done"));
if (dialog->writable == writable)
return;
g_object_notify (G_OBJECT (dialog), "writable");
}
all_day = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (dialog->all_day_check));
gtk_widget_set_sensitive (dialog->start_time_selector, !all_day && writable);
gtk_widget_set_sensitive (dialog->end_time_selector, !all_day && writable);
gtk_button_set_label (GTK_BUTTON (dialog->done_button), writable ? _("Save") : _("Done"));
dialog->writable = writable;
g_object_notify (G_OBJECT (dialog), "writable");
}
static void