From 0da5d5a0d07a3f3d214c8a52f67fe5f6e71ae761 Mon Sep 17 00:00:00 2001 From: Timothy Flynn Date: Sat, 30 Mar 2024 11:10:11 -0400 Subject: [PATCH] Ladybird/Qt: Display a tool tip on the tab mute button --- Ladybird/Qt/BrowserWindow.cpp | 14 ++++++++++++++ Ladybird/Qt/BrowserWindow.h | 1 + 2 files changed, 15 insertions(+) diff --git a/Ladybird/Qt/BrowserWindow.cpp b/Ladybird/Qt/BrowserWindow.cpp index f3da9733b3f..4dcf372f954 100644 --- a/Ladybird/Qt/BrowserWindow.cpp +++ b/Ladybird/Qt/BrowserWindow.cpp @@ -657,6 +657,7 @@ void BrowserWindow::tab_audio_play_state_changed(int index, Web::HTML::AudioPlay case Web::HTML::AudioPlayState::Playing: auto* button = new QPushButton(icon_for_page_mute_state(), {}); + button->setToolTip(tool_tip_for_page_mute_state()); button->setFlat(true); button->resize({ 20, 20 }); @@ -670,6 +671,7 @@ void BrowserWindow::tab_audio_play_state_changed(int index, Web::HTML::AudioPlay case Web::HTML::AudioPlayState::Playing: auto* button = m_tabs_container->tabBar()->tabButton(index, QTabBar::LeftSide); verify_cast(button)->setIcon(icon_for_page_mute_state()); + button->setToolTip(tool_tip_for_page_mute_state()); break; } }); @@ -691,6 +693,18 @@ QIcon BrowserWindow::icon_for_page_mute_state() const VERIFY_NOT_REACHED(); } +QString BrowserWindow::tool_tip_for_page_mute_state() const +{ + switch (view().page_mute_state()) { + case Web::HTML::MuteState::Muted: + return "Unmute tab"; + case Web::HTML::MuteState::Unmuted: + return "Mute tab"; + } + + VERIFY_NOT_REACHED(); +} + void BrowserWindow::open_next_tab() { if (m_tabs_container->count() <= 1) diff --git a/Ladybird/Qt/BrowserWindow.h b/Ladybird/Qt/BrowserWindow.h index 7b854538a0d..ad67f098f2f 100644 --- a/Ladybird/Qt/BrowserWindow.h +++ b/Ladybird/Qt/BrowserWindow.h @@ -129,6 +129,7 @@ private: } QIcon icon_for_page_mute_state() const; + QString tool_tip_for_page_mute_state() const; QScreen* m_current_screen; double m_device_pixel_ratio { 0 };