diff options
author | ouwou <26526779+ouwou@users.noreply.github.com> | 2022-10-24 02:48:57 -0400 |
---|---|---|
committer | ouwou <26526779+ouwou@users.noreply.github.com> | 2022-10-24 02:48:57 -0400 |
commit | f751037717ee1f5592e437e2b91f4daa45239aae (patch) | |
tree | 93c18a7c1ee9e71893055f30c6eace03c2186f41 /src/windows | |
parent | e888306272304224ac8edd37b3b2bd24ad8c0765 (diff) | |
parent | 64245bf7457a81eed063901ad8e5ce55fdc2ca0c (diff) | |
download | abaddon-portaudio-f751037717ee1f5592e437e2b91f4daa45239aae.tar.gz abaddon-portaudio-f751037717ee1f5592e437e2b91f4daa45239aae.zip |
Merge branch 'master' into voice
Diffstat (limited to 'src/windows')
-rw-r--r-- | src/windows/mainwindow.cpp | 24 | ||||
-rw-r--r-- | src/windows/mainwindow.hpp | 1 |
2 files changed, 24 insertions, 1 deletions
diff --git a/src/windows/mainwindow.cpp b/src/windows/mainwindow.cpp index 07a7f17..20da46b 100644 --- a/src/windows/mainwindow.cpp +++ b/src/windows/mainwindow.cpp @@ -158,6 +158,10 @@ void MainWindow::UpdateMenus() { OnViewSubmenuPopup(); } +void MainWindow::ToggleMenuVisibility() { + m_menu_bar.set_visible(!m_menu_bar.get_visible()); +} + #ifdef WITH_LIBHANDY void MainWindow::GoBack() { m_chat.GoBack(); @@ -279,7 +283,25 @@ void MainWindow::SetupMenu() { m_menu_bar.append(m_menu_file); m_menu_bar.append(m_menu_discord); m_menu_bar.append(m_menu_view); - m_menu_bar.show_all(); + + if (Abaddon::Get().GetSettings().AltMenu) { + auto set_hide_cb = [this](Gtk::Menu &menu) { + for (auto *child : menu.get_children()) { + auto *item = dynamic_cast<Gtk::MenuItem *>(child); + if (item != nullptr) { + item->signal_activate().connect([this]() { + m_menu_bar.hide(); + }); + } + } + }; + set_hide_cb(m_menu_discord_sub); + set_hide_cb(m_menu_file_sub); + set_hide_cb(m_menu_view_sub); + m_menu_bar.show_all_children(); + } else { + m_menu_bar.show_all(); + } m_menu_discord_connect.signal_activate().connect([this] { m_signal_action_connect.emit(); diff --git a/src/windows/mainwindow.hpp b/src/windows/mainwindow.hpp index b013e32..6e95b72 100644 --- a/src/windows/mainwindow.hpp +++ b/src/windows/mainwindow.hpp @@ -24,6 +24,7 @@ public: void UpdateChatReactionAdd(Snowflake id, const Glib::ustring ¶m); void UpdateChatReactionRemove(Snowflake id, const Glib::ustring ¶m); void UpdateMenus(); + void ToggleMenuVisibility(); #ifdef WITH_LIBHANDY void GoBack(); |