mirror of
https://github.com/kiwix/kiwix-desktop.git
synced 2025-09-22 11:37:56 -04:00
Merge pull request #1337 from etude11/fix-issue-1318
fix: deactivate menu entries when not actionable
This commit is contained in:
commit
b233de6f93
@ -180,6 +180,9 @@ QMenu::item:selected {
|
|||||||
border: 1px solid #3366CC;
|
border: 1px solid #3366CC;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QMenu::item:disabled {
|
||||||
|
color: gray;
|
||||||
|
}
|
||||||
|
|
||||||
MainMenu::indicator {
|
MainMenu::indicator {
|
||||||
color: #666666;
|
color: #666666;
|
||||||
|
@ -509,16 +509,35 @@ void KiwixApp::handleItemsState(TabType tabType)
|
|||||||
{
|
{
|
||||||
auto libraryOrSettingsTab = (tabType == TabType::LibraryTab || tabType == TabType::SettingsTab);
|
auto libraryOrSettingsTab = (tabType == TabType::LibraryTab || tabType == TabType::SettingsTab);
|
||||||
auto notBookmarkableTab = libraryOrSettingsTab || getTabWidget()->currentArticleUrl().isEmpty();
|
auto notBookmarkableTab = libraryOrSettingsTab || getTabWidget()->currentArticleUrl().isEmpty();
|
||||||
|
auto hasZimFile = !getTabWidget()->currentZimId().isEmpty();
|
||||||
auto app = KiwixApp::instance();
|
auto app = KiwixApp::instance();
|
||||||
|
|
||||||
|
// Navigation actions
|
||||||
app->getAction(KiwixApp::ToggleTOCAction)->setDisabled(libraryOrSettingsTab);
|
app->getAction(KiwixApp::ToggleTOCAction)->setDisabled(libraryOrSettingsTab);
|
||||||
|
app->getAction(KiwixApp::OpenHomePageAction)->setDisabled(!hasZimFile);
|
||||||
|
app->getAction(KiwixApp::RandomArticleAction)->setDisabled(!hasZimFile);
|
||||||
|
|
||||||
|
// Reading & bookmarks
|
||||||
app->getAction(KiwixApp::ToggleReadingListAction)->setDisabled(libraryOrSettingsTab);
|
app->getAction(KiwixApp::ToggleReadingListAction)->setDisabled(libraryOrSettingsTab);
|
||||||
app->getAction(KiwixApp::ToggleAddBookmarkAction)->setDisabled(notBookmarkableTab);
|
app->getAction(KiwixApp::ToggleAddBookmarkAction)->setDisabled(notBookmarkableTab);
|
||||||
|
app->getAction(KiwixApp::ReadArticleAction)->setDisabled(libraryOrSettingsTab);
|
||||||
|
app->getAction(KiwixApp::ReadTextAction)->setDisabled(libraryOrSettingsTab);
|
||||||
|
app->getAction(KiwixApp::ReadStopAction)->setDisabled(libraryOrSettingsTab);
|
||||||
|
app->getAction(KiwixApp::ToggleTTSLanguageAction)->setDisabled(libraryOrSettingsTab);
|
||||||
|
app->getAction(KiwixApp::ToggleTTSVoiceAction)->setDisabled(libraryOrSettingsTab);
|
||||||
|
app->getAction(KiwixApp::IncreaseTTSSpeedAction)->setDisabled(libraryOrSettingsTab);
|
||||||
|
app->getAction(KiwixApp::DecreaseTTSSpeedAction)->setDisabled(libraryOrSettingsTab);
|
||||||
|
|
||||||
|
// Search & zoom
|
||||||
app->getAction(KiwixApp::FindInPageAction)->setDisabled(libraryOrSettingsTab);
|
app->getAction(KiwixApp::FindInPageAction)->setDisabled(libraryOrSettingsTab);
|
||||||
app->getAction(KiwixApp::ZoomInAction)->setDisabled(libraryOrSettingsTab);
|
app->getAction(KiwixApp::ZoomInAction)->setDisabled(libraryOrSettingsTab);
|
||||||
app->getAction(KiwixApp::ZoomOutAction)->setDisabled(libraryOrSettingsTab);
|
app->getAction(KiwixApp::ZoomOutAction)->setDisabled(libraryOrSettingsTab);
|
||||||
app->getAction(KiwixApp::ZoomResetAction)->setDisabled(libraryOrSettingsTab);
|
app->getAction(KiwixApp::ZoomResetAction)->setDisabled(libraryOrSettingsTab);
|
||||||
app->getAction(KiwixApp::RandomArticleAction)->setDisabled(libraryOrSettingsTab);
|
|
||||||
app->getAction(KiwixApp::OpenHomePageAction)->setDisabled(libraryOrSettingsTab);
|
// File operations
|
||||||
|
app->getAction(KiwixApp::PrintAction)->setDisabled(!hasZimFile);
|
||||||
|
app->getAction(KiwixApp::SavePageAsAction)->setDisabled(!hasZimFile);
|
||||||
|
|
||||||
|
|
||||||
/* Non-Zim tabs are not bookmarkable therefore never in reading list. */
|
/* Non-Zim tabs are not bookmarkable therefore never in reading list. */
|
||||||
if (notBookmarkableTab)
|
if (notBookmarkableTab)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user