diff --git a/src/gui/gcal-toolbar-end.ui b/src/gui/gcal-toolbar-end.ui
index 8389bba6..5d0d9e92 100644
--- a/src/gui/gcal-toolbar-end.ui
+++ b/src/gui/gcal-toolbar-end.ui
@@ -7,11 +7,6 @@
diff --git a/src/gui/gcal-window.c b/src/gui/gcal-window.c
index 866521f2..171c44e3 100644
--- a/src/gui/gcal-window.c
+++ b/src/gui/gcal-window.c
@@ -109,6 +109,8 @@ struct _GcalWindow
GtkWidget *action_bar;
GcalSyncIndicator *sync_indicator;
GcalToolbarEnd *toolbar_end;
+ GcalToolbarEnd *sidebar_toolbar_end;
+ AdwLeaflet *leaflet;
/* header_bar widets */
GtkWidget *calendars_button;
@@ -860,6 +862,7 @@ gcal_window_constructed (GObject *object)
g_object_bind_property (self, "context", self->quick_add_popover, "context", G_BINDING_DEFAULT | G_BINDING_SYNC_CREATE);
g_object_bind_property (self, "context", self->sync_indicator, "context", G_BINDING_DEFAULT | G_BINDING_SYNC_CREATE);
g_object_bind_property (self, "context", self->toolbar_end, "context", G_BINDING_DEFAULT | G_BINDING_SYNC_CREATE);
+ g_object_bind_property (self, "context", self->sidebar_toolbar_end, "context", G_BINDING_DEFAULT | G_BINDING_SYNC_CREATE);
/* CSS */
load_css_providers (self);
@@ -1052,6 +1055,8 @@ gcal_window_class_init (GcalWindowClass *klass)
gtk_widget_class_bind_template_child (widget_class, GcalWindow, overlay);
gtk_widget_class_bind_template_child (widget_class, GcalWindow, sync_indicator);
gtk_widget_class_bind_template_child (widget_class, GcalWindow, toolbar_end);
+ gtk_widget_class_bind_template_child (widget_class, GcalWindow, sidebar_toolbar_end);
+ gtk_widget_class_bind_template_child (widget_class, GcalWindow, leaflet);
gtk_widget_class_bind_template_child (widget_class, GcalWindow, views_stack);
gtk_widget_class_bind_template_child (widget_class, GcalWindow, views_switcher);
gtk_widget_class_bind_template_child (widget_class, GcalWindow, weather_settings);
@@ -1140,10 +1145,16 @@ gcal_window_set_search_query (GcalWindow *self,
const gchar *query)
{
GtkWidget *search_button;
+ GcalToolbarEnd *toolbar_end;
g_return_if_fail (GCAL_IS_WINDOW (self));
- search_button = gcal_toolbar_end_get_search_button (self->toolbar_end);
+ if (adw_leaflet_get_folded (self->leaflet))
+ toolbar_end = self->sidebar_toolbar_end;
+ else
+ toolbar_end = self->toolbar_end;
+
+ search_button = gcal_toolbar_end_get_search_button (toolbar_end);
gcal_search_button_search (GCAL_SEARCH_BUTTON (search_button), query);
}
diff --git a/src/gui/gcal-window.ui b/src/gui/gcal-window.ui
index e0f3d96a..d86e582a 100644
--- a/src/gui/gcal-window.ui
+++ b/src/gui/gcal-window.ui
@@ -168,7 +168,7 @@
-
+