@@ -10,7 +10,7 @@ public class Monitor.MainWindow : Hdy.ApplicationWindow {
1010 private Resources resources;
1111
1212 // Widgets
13- public Headerbar headerbar;
13+ public Search search { get ; private set ; }
1414
1515 public ProcessView process_view;
1616 public SystemView system_view;
@@ -46,12 +46,37 @@ public class Monitor.MainWindow : Hdy.ApplicationWindow {
4646 stack_switcher. valign = Gtk . Align . CENTER ;
4747 stack_switcher. set_stack (stack);
4848
49- headerbar = new Headerbar (this );
50- headerbar. set_custom_title (stack_switcher);
5149 var sv = new PreferencesView ();
52- headerbar. preferences_grid. add (sv);
5350 sv. show_all ();
5451
52+ var preferences_popover = new Gtk .Popover (null ) {
53+ child = sv
54+ };
55+
56+ var preferences_button = new Gtk .MenuButton () {
57+ image = new Gtk .Image .from_icon_name (" open-menu" , Gtk . IconSize . LARGE_TOOLBAR ),
58+ popover = preferences_popover,
59+ tooltip_text = (_(" Settings" ))
60+ };
61+
62+ search = new Search (this ) {
63+ valign = CENTER
64+ };
65+
66+ var search_revealer = new Gtk .Revealer () {
67+ child = search,
68+ transition_type = SLIDE_LEFT
69+ };
70+
71+ var headerbar = new Hdy .HeaderBar () {
72+ has_subtitle = false ,
73+ show_close_button = true ,
74+ title = _ ("Monitor ")
75+ };
76+ headerbar.pack_start (search_revealer );
77+ headerbar.set_custom_title (stack_switcher );
78+ headerbar.pack_end (preferences_button );
79+
5580 statusbar = new Statusbar ();
5681
5782 var grid = new Gtk .Grid () {
@@ -68,9 +93,9 @@ public class Monitor.MainWindow : Hdy.ApplicationWindow {
6893
6994 dbusserver = DBusServer.get_default ();
7095
71- headerbar . search_revealer. set_reveal_child (stack. visible_child_name == " process_view" );
96+ search_revealer.set_reveal_child (stack .visible_child_name == "process_view ");
7297 stack.notify["visible-child-name"].connect (() => {
73- headerbar . search_revealer. set_reveal_child (stack. visible_child_name == " process_view" );
98+ search_revealer. set_reveal_child (stack. visible_child_name == " process_view" );
7499 });
75100
76101 new Thread<void> (" upd" , () = > {
0 commit comments