From 6004123ba27e5eb82000792f6ac5231807b3baa2 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Thu, 24 Aug 2017 07:16:15 +0900 Subject: [PATCH] edit-dialog: fix time widgets sensitive when all day --- data/ui/edit-dialog.ui | 2 -- src/gcal-edit-dialog.c | 19 +++++++++++++------ 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/data/ui/edit-dialog.ui b/data/ui/edit-dialog.ui index e6f169a5..26cc430f 100644 --- a/data/ui/edit-dialog.ui +++ b/data/ui/edit-dialog.ui @@ -311,7 +311,6 @@ True True - @@ -326,7 +325,6 @@ True True - diff --git a/src/gcal-edit-dialog.c b/src/gcal-edit-dialog.c index 82bb8246..2a55f59b 100644 --- a/src/gcal-edit-dialog.c +++ b/src/gcal-edit-dialog.c @@ -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