diff --git a/po/POTFILES b/po/POTFILES index 5bfdba01..fe9f72ea 100644 --- a/po/POTFILES +++ b/po/POTFILES @@ -16,7 +16,6 @@ src/Views/SystemView/SystemMemoryView.vala src/Views/SystemView/SystemNetworkView.vala src/Views/SystemView/SystemStorageView.vala src/Views/SystemView/SystemGPUView.vala -src/Widgets/Headerbar/Headerbar.vala src/Widgets/Headerbar/Search.vala src/Widgets/Statusbar/Statusbar.vala src/Widgets/WidgetResource/WidgetResource.vala diff --git a/src/MainWindow.vala b/src/MainWindow.vala index f3368822..ac18d3ed 100644 --- a/src/MainWindow.vala +++ b/src/MainWindow.vala @@ -10,7 +10,7 @@ public class Monitor.MainWindow : Hdy.ApplicationWindow { private Resources resources; // Widgets - public Headerbar headerbar; + public Search search { get; private set; } public ProcessView process_view; public SystemView system_view; @@ -46,12 +46,37 @@ public class Monitor.MainWindow : Hdy.ApplicationWindow { stack_switcher.valign = Gtk.Align.CENTER; stack_switcher.set_stack (stack); - headerbar = new Headerbar (this); - headerbar.set_custom_title (stack_switcher); var sv = new PreferencesView (); - headerbar.preferences_grid.add (sv); sv.show_all (); + var preferences_popover = new Gtk.Popover (null) { + child = sv + }; + + var preferences_button = new Gtk.MenuButton () { + image = new Gtk.Image.from_icon_name ("open-menu", Gtk.IconSize.LARGE_TOOLBAR), + popover = preferences_popover, + tooltip_text = (_("Settings")) + }; + + search = new Search (this) { + valign = CENTER + }; + + var search_revealer = new Gtk.Revealer () { + child = search, + transition_type = SLIDE_LEFT + }; + + var headerbar = new Hdy.HeaderBar () { + has_subtitle = false, + show_close_button = true, + title = _("Monitor") + }; + headerbar.pack_start (search_revealer); + headerbar.set_custom_title (stack_switcher); + headerbar.pack_end (preferences_button); + statusbar = new Statusbar (); var grid = new Gtk.Grid () { @@ -68,9 +93,9 @@ public class Monitor.MainWindow : Hdy.ApplicationWindow { dbusserver = DBusServer.get_default (); - headerbar.search_revealer.set_reveal_child (stack.visible_child_name == "process_view"); + search_revealer.set_reveal_child (stack.visible_child_name == "process_view"); stack.notify["visible-child-name"].connect (() => { - headerbar.search_revealer.set_reveal_child (stack.visible_child_name == "process_view"); + search_revealer.set_reveal_child (stack.visible_child_name == "process_view"); }); new Thread ("upd", () => { diff --git a/src/Services/Shortcuts.vala b/src/Services/Shortcuts.vala index 1958cbbf..c37c8721 100644 --- a/src/Services/Shortcuts.vala +++ b/src/Services/Shortcuts.vala @@ -15,15 +15,15 @@ public class Monitor.Shortcuts : Object { handled = false; char typed = e.str[0]; - if (typed.isalnum () && !window.headerbar.search.is_focus) { - window.headerbar.search.activate_entry (e.str); + if (typed.isalnum () && !window.search.is_focus) { + window.search.activate_entry (e.str); handled = true; } if ((e.state & Gdk.ModifierType.CONTROL_MASK) != 0) { switch (e.keyval) { case Gdk.Key.f: - window.headerbar.search.activate_entry (); + window.search.activate_entry (); handled = true; break; case Gdk.Key.e: diff --git a/src/Widgets/Headerbar/Headerbar.vala b/src/Widgets/Headerbar/Headerbar.vala deleted file mode 100644 index 69ec1ba4..00000000 --- a/src/Widgets/Headerbar/Headerbar.vala +++ /dev/null @@ -1,50 +0,0 @@ -/* - * SPDX-License-Identifier: GPL-3.0-or-later - * SPDX-FileCopyrightText: 2025 elementary, Inc. (https://elementary.io) - */ - -public class Monitor.Headerbar : Hdy.HeaderBar { - private MainWindow window; - - public Search search; - public Gtk.Grid preferences_grid; - - public Gtk.Revealer search_revealer = new Gtk.Revealer () { - transition_type = Gtk.RevealerTransitionType.SLIDE_LEFT, - }; - - construct { - show_close_button = true; - has_subtitle = false; - title = _("Monitor"); - } - - public Headerbar (MainWindow window) { - this.window = window; - - var preferences_button = new Gtk.MenuButton (); - preferences_button.has_tooltip = true; - preferences_button.tooltip_text = (_("Settings")); - preferences_button.set_image (new Gtk.Image.from_icon_name ("open-menu", Gtk.IconSize.LARGE_TOOLBAR)); - pack_end (preferences_button); - - preferences_grid = new Gtk.Grid () { - orientation = Gtk.Orientation.VERTICAL - }; - - var preferences_popover = new Gtk.Popover (null); - preferences_popover.add (preferences_grid); - preferences_button.popover = preferences_popover; - - preferences_grid.show_all (); - - search = new Search (window) { - valign = Gtk.Align.CENTER - }; - - search_revealer.add (search); - - pack_start (search_revealer); - - } -} diff --git a/src/meson.build b/src/meson.build index 2fb5d6a0..a9da4b10 100644 --- a/src/meson.build +++ b/src/meson.build @@ -28,7 +28,6 @@ source_app_files = [ 'Views/ProcessView/ProcessInfoView/OpenFilesTreeView.vala', # Widgets - 'Widgets/Headerbar/Headerbar.vala', 'Widgets/Headerbar/Search.vala', 'Widgets/Statusbar/Statusbar.vala', 'Widgets/Labels/LabelVertical.vala',