summaryrefslogtreecommitdiff
path: root/gtk/gtkappchooserdialog.c
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2011-08-28 23:49:41 -0400
committerMatthias Clasen <mclasen@redhat.com>2011-08-28 23:49:41 -0400
commit18dba17f0bbacebf64b65423b2aee64eb2dcc141 (patch)
treebf2c51f7776e23de7e23e15c079c146d58e97eae /gtk/gtkappchooserdialog.c
parent6d797d5356cf7af445befb846e260b92e6cece2c (diff)
downloadgtk+-18dba17f0bbacebf64b65423b2aee64eb2dcc141.tar.gz
GtkAppChooserDialog: handle sensitivity of 'Select' better
When the dialog comes up without a selected item, make 'Select' insensitive. Also, don't allow to unselect an item without selecting a different one.
Diffstat (limited to 'gtk/gtkappchooserdialog.c')
-rw-r--r--gtk/gtkappchooserdialog.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gtk/gtkappchooserdialog.c b/gtk/gtkappchooserdialog.c
index 178d291e20..5412e7a91e 100644
--- a/gtk/gtkappchooserdialog.c
+++ b/gtk/gtkappchooserdialog.c
@@ -486,6 +486,7 @@ build_dialog_ui (GtkAppChooserDialog *self)
GtkWidget *vbox;
GtkWidget *vbox2;
GtkWidget *button, *w;
+ GAppInfo *info;
gtk_container_set_border_width (GTK_CONTAINER (self), 5);
@@ -539,6 +540,11 @@ build_dialog_ui (GtkAppChooserDialog *self)
_("_Select"),
GTK_RESPONSE_OK);
+ info = gtk_app_chooser_get_app_info (GTK_APP_CHOOSER (self->priv->app_chooser_widget));
+ gtk_widget_set_sensitive (self->priv->button, info != NULL);
+ if (info)
+ g_object_unref (info);
+
gtk_dialog_set_default_response (GTK_DIALOG (self),
GTK_RESPONSE_OK);
}