[gnome-photos] overview-searchbar: Use GtkMenuButton



commit 06c990aa01ae640b08f75981af6df43798e3f68b
Author: Alessandro Bono <abono gnome org>
Date:   Tue Apr 12 21:12:55 2016 +0200

    overview-searchbar: Use GtkMenuButton
    
    https://bugzilla.gnome.org/show_bug.cgi?id=765340

 src/photos-dropdown.c           |    4 ++--
 src/photos-dropdown.h           |    2 +-
 src/photos-icons.h              |    1 -
 src/photos-overview-searchbar.c |   31 ++++---------------------------
 4 files changed, 7 insertions(+), 31 deletions(-)
---
diff --git a/src/photos-dropdown.c b/src/photos-dropdown.c
index 61b3c86..0891031 100644
--- a/src/photos-dropdown.c
+++ b/src/photos-dropdown.c
@@ -140,7 +140,7 @@ photos_dropdown_class_init (PhotosDropdownClass *class)
 
 
 GtkWidget *
-photos_dropdown_new (GtkWidget *relative_to)
+photos_dropdown_new (void)
 {
-  return g_object_new (PHOTOS_TYPE_DROPDOWN, "relative-to", relative_to, "position", GTK_POS_BOTTOM, NULL);
+  return g_object_new (PHOTOS_TYPE_DROPDOWN, "position", GTK_POS_BOTTOM, NULL);
 }
diff --git a/src/photos-dropdown.h b/src/photos-dropdown.h
index f4b7786..fc16e8b 100644
--- a/src/photos-dropdown.h
+++ b/src/photos-dropdown.h
@@ -44,7 +44,7 @@ typedef struct _PhotosDropdownClass PhotosDropdownClass;
 
 GType                     photos_dropdown_get_type             (void) G_GNUC_CONST;
 
-GtkWidget                *photos_dropdown_new                  (GtkWidget *relative_to);
+GtkWidget                *photos_dropdown_new                  (void);
 
 G_END_DECLS
 
diff --git a/src/photos-icons.h b/src/photos-icons.h
index 73adb02..8968e8b 100644
--- a/src/photos-icons.h
+++ b/src/photos-icons.h
@@ -32,7 +32,6 @@ G_BEGIN_DECLS
 #define PHOTOS_ICON_FAVORITE "starred"
 #define PHOTOS_ICON_FAVORITE_SYMBOLIC PHOTOS_ICON_FAVORITE "-symbolic"
 
-#define PHOTOS_ICON_GO_DOWN_SYMBOLIC "pan-down-symbolic"
 #define PHOTOS_ICON_GO_NEXT_SYMBOLIC "go-next-symbolic"
 #define PHOTOS_ICON_GO_PREVIOUS_SYMBOLIC "go-previous-symbolic"
 
diff --git a/src/photos-overview-searchbar.c b/src/photos-overview-searchbar.c
index c3c2419..9d1ee9f 100644
--- a/src/photos-overview-searchbar.c
+++ b/src/photos-overview-searchbar.c
@@ -47,7 +47,6 @@ struct _PhotosOverviewSearchbar
   GdTaggedEntryTag *src_tag;
   GdTaggedEntryTag *srch_mtch_tag;
   GdTaggedEntryTag *srch_typ_tag;
-  GtkWidget *dropdown;
   GtkWidget *dropdown_button;
   GtkWidget *search_container;
   PhotosBaseManager *src_mngr;
@@ -96,13 +95,6 @@ photos_overview_searchbar_active_changed (PhotosOverviewSearchbar *self,
 
 
 static void
-photos_overview_searchbar_closed (PhotosOverviewSearchbar *self)
-{
-  gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (self->dropdown_button), FALSE);
-}
-
-
-static void
 photos_overview_searchbar_hide (PhotosSearchbar *searchbar)
 {
   PhotosOverviewSearchbar *self = PHOTOS_OVERVIEW_SEARCHBAR (searchbar);
@@ -182,19 +174,11 @@ photos_overview_searchbar_tag_clicked (PhotosOverviewSearchbar *self)
 
 
 static void
-photos_overview_searchbar_toggled (PhotosOverviewSearchbar *self)
-{
-  if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (self->dropdown_button)))
-    gtk_widget_show_all (self->dropdown);
-}
-
-
-static void
 photos_overview_searchbar_create_search_widgets (PhotosSearchbar *searchbar)
 {
   PhotosOverviewSearchbar *self = PHOTOS_OVERVIEW_SEARCHBAR (searchbar);
   GtkStyleContext *context;
-  GtkWidget *image;
+  GtkWidget *dropdown;
 
   self->search_entry = gd_tagged_entry_new ();
   gtk_widget_set_size_request (GTK_WIDGET (self->search_entry), 500, -1);
@@ -223,16 +207,9 @@ photos_overview_searchbar_create_search_widgets (PhotosSearchbar *searchbar)
                            self,
                            G_CONNECT_SWAPPED);
 
-  image = gtk_image_new_from_icon_name (PHOTOS_ICON_GO_DOWN_SYMBOLIC, GTK_ICON_SIZE_BUTTON);
-  self->dropdown_button = gtk_toggle_button_new ();
-  gtk_button_set_image (GTK_BUTTON (self->dropdown_button), image);
-  g_signal_connect_swapped (self->dropdown_button, "toggled", G_CALLBACK 
(photos_overview_searchbar_toggled), self);
-
-  self->dropdown = photos_dropdown_new (GTK_WIDGET (self->dropdown_button));
-  g_signal_connect_swapped (self->dropdown,
-                            "closed",
-                            G_CALLBACK (photos_overview_searchbar_closed),
-                            self);
+  self->dropdown_button = gtk_menu_button_new ();
+  dropdown = photos_dropdown_new ();
+  gtk_menu_button_set_popover (GTK_MENU_BUTTON (self->dropdown_button), dropdown);
 
   self->search_container = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
   gtk_widget_set_halign (self->search_container, GTK_ALIGN_CENTER);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]