|
Lines 46-51
struct _PhoshAppGridPrivate {
Link Here
|
| 46 |
|
46 |
|
| 47 |
GtkWidget *deck; |
47 |
GtkWidget *deck; |
| 48 |
GtkWidget *search; |
48 |
GtkWidget *search; |
|
|
49 |
GtkWidget *search_apply_revealer; |
| 50 |
GtkWidget *search_apply_button; |
| 49 |
GtkWidget *apps; |
51 |
GtkWidget *apps; |
| 50 |
GtkWidget *favs; |
52 |
GtkWidget *favs; |
| 51 |
GtkWidget *favs_revealer; |
53 |
GtkWidget *favs_revealer; |
|
Lines 635-640
on_search_activated (GtkSearchEntry *entry,
Link Here
|
| 635 |
if (!gtk_widget_has_focus (GTK_WIDGET (entry))) |
637 |
if (!gtk_widget_has_focus (GTK_WIDGET (entry))) |
| 636 |
return; |
638 |
return; |
| 637 |
|
639 |
|
|
|
640 |
gtk_widget_grab_focus (priv->search_apply_button); |
| 641 |
|
| 638 |
/* Don't activate when there isn't an active search */ |
642 |
/* Don't activate when there isn't an active search */ |
| 639 |
if (!priv->search_string || *priv->search_string == '\0') |
643 |
if (!priv->search_string || *priv->search_string == '\0') |
| 640 |
return; |
644 |
return; |
|
Lines 661-666
on_search_lost_focus (GtkWidget *widget,
Link Here
|
| 661 |
{ |
665 |
{ |
| 662 |
PhoshAppGridPrivate *priv = phosh_app_grid_get_instance_private (self); |
666 |
PhoshAppGridPrivate *priv = phosh_app_grid_get_instance_private (self); |
| 663 |
|
667 |
|
|
|
668 |
gtk_revealer_set_reveal_child (GTK_REVEALER (priv->search_apply_revealer), FALSE); |
| 669 |
|
| 664 |
gtk_style_context_remove_class (gtk_widget_get_style_context (priv->apps), |
670 |
gtk_style_context_remove_class (gtk_widget_get_style_context (priv->apps), |
| 665 |
ACTIVE_SEARCH_CLASS); |
671 |
ACTIVE_SEARCH_CLASS); |
| 666 |
|
672 |
|
|
Lines 675-680
on_search_gained_focus (GtkWidget *widget,
Link Here
|
| 675 |
{ |
681 |
{ |
| 676 |
PhoshAppGridPrivate *priv = phosh_app_grid_get_instance_private (self); |
682 |
PhoshAppGridPrivate *priv = phosh_app_grid_get_instance_private (self); |
| 677 |
|
683 |
|
|
|
684 |
gtk_revealer_set_reveal_child (GTK_REVEALER (priv->search_apply_revealer), TRUE); |
| 685 |
|
| 678 |
if (priv->search_string && *priv->search_string != '\0') { |
686 |
if (priv->search_string && *priv->search_string != '\0') { |
| 679 |
gtk_style_context_add_class (gtk_widget_get_style_context (priv->apps), |
687 |
gtk_style_context_add_class (gtk_widget_get_style_context (priv->apps), |
| 680 |
ACTIVE_SEARCH_CLASS); |
688 |
ACTIVE_SEARCH_CLASS); |
|
Lines 735-740
phosh_app_grid_class_init (PhoshAppGridClass *klass)
Link Here
|
| 735 |
gtk_widget_class_bind_template_child_private (widget_class, PhoshAppGrid, folder_stack); |
743 |
gtk_widget_class_bind_template_child_private (widget_class, PhoshAppGrid, folder_stack); |
| 736 |
gtk_widget_class_bind_template_child_private (widget_class, PhoshAppGrid, scrolled_window); |
744 |
gtk_widget_class_bind_template_child_private (widget_class, PhoshAppGrid, scrolled_window); |
| 737 |
gtk_widget_class_bind_template_child_private (widget_class, PhoshAppGrid, search); |
745 |
gtk_widget_class_bind_template_child_private (widget_class, PhoshAppGrid, search); |
|
|
746 |
gtk_widget_class_bind_template_child_private (widget_class, PhoshAppGrid, search_apply_revealer); |
| 747 |
gtk_widget_class_bind_template_child_private (widget_class, PhoshAppGrid, search_apply_button); |
| 738 |
|
748 |
|
| 739 |
gtk_widget_class_bind_template_callback (widget_class, on_folder_edit_toggled); |
749 |
gtk_widget_class_bind_template_callback (widget_class, on_folder_edit_toggled); |
| 740 |
gtk_widget_class_bind_template_callback (widget_class, on_folder_entry_activated); |
750 |
gtk_widget_class_bind_template_callback (widget_class, on_folder_entry_activated); |