mirror of
https://github.com/linuxdeepin/dde-dock.git
synced 2025-06-04 17:33:05 +00:00
feat: 添加任务栏空白处右键菜单子菜单是否显示的开关
添加gsettings配置作为设置右键菜单子菜单是否显示的开关, 修改配置立即生效 Log: 添加任务栏空白处右键菜单子菜单是否显示的开关, 修改配置立即生效 Change-Id: Ic43ebb61beed38647fff7e0ff87f81ed5ddb2f19
This commit is contained in:
parent
735c6f5a86
commit
29d8fc4d3e
@ -91,8 +91,8 @@ void MenuWorker::initUI()
|
|||||||
modeSubMenu->setAccessibleName("modesubmenu");
|
modeSubMenu->setAccessibleName("modesubmenu");
|
||||||
modeSubMenu->addAction(m_fashionModeAct);
|
modeSubMenu->addAction(m_fashionModeAct);
|
||||||
modeSubMenu->addAction(m_efficientModeAct);
|
modeSubMenu->addAction(m_efficientModeAct);
|
||||||
QAction *modeSubMenuAct = new QAction(tr("Mode"), this);
|
m_modeSubMenuAct = new QAction(tr("Mode"), this);
|
||||||
modeSubMenuAct->setMenu(modeSubMenu);
|
m_modeSubMenuAct->setMenu(modeSubMenu);
|
||||||
|
|
||||||
QMenu *locationSubMenu = new QMenu(m_settingsMenu);
|
QMenu *locationSubMenu = new QMenu(m_settingsMenu);
|
||||||
locationSubMenu->setAccessibleName("locationsubmenu");
|
locationSubMenu->setAccessibleName("locationsubmenu");
|
||||||
@ -100,26 +100,23 @@ void MenuWorker::initUI()
|
|||||||
locationSubMenu->addAction(m_bottomPosAct);
|
locationSubMenu->addAction(m_bottomPosAct);
|
||||||
locationSubMenu->addAction(m_leftPosAct);
|
locationSubMenu->addAction(m_leftPosAct);
|
||||||
locationSubMenu->addAction(m_rightPosAct);
|
locationSubMenu->addAction(m_rightPosAct);
|
||||||
QAction *locationSubMenuAct = new QAction(tr("Location"), this);
|
m_locationSubMenuAct = new QAction(tr("Location"), this);
|
||||||
locationSubMenuAct->setMenu(locationSubMenu);
|
m_locationSubMenuAct->setMenu(locationSubMenu);
|
||||||
|
|
||||||
QMenu *statusSubMenu = new QMenu(m_settingsMenu);
|
QMenu *statusSubMenu = new QMenu(m_settingsMenu);
|
||||||
statusSubMenu->setAccessibleName("statussubmenu");
|
statusSubMenu->setAccessibleName("statussubmenu");
|
||||||
statusSubMenu->addAction(m_keepShownAct);
|
statusSubMenu->addAction(m_keepShownAct);
|
||||||
statusSubMenu->addAction(m_keepHiddenAct);
|
statusSubMenu->addAction(m_keepHiddenAct);
|
||||||
statusSubMenu->addAction(m_smartHideAct);
|
statusSubMenu->addAction(m_smartHideAct);
|
||||||
QAction *statusSubMenuAct = new QAction(tr("Status"), this);
|
m_statusSubMenuAct = new QAction(tr("Status"), this);
|
||||||
statusSubMenuAct->setMenu(statusSubMenu);
|
m_statusSubMenuAct->setMenu(statusSubMenu);
|
||||||
|
|
||||||
m_hideSubMenu = new QMenu(m_settingsMenu);
|
m_hideSubMenu = new QMenu(m_settingsMenu);
|
||||||
m_hideSubMenu->setAccessibleName("pluginsmenu");
|
m_hideSubMenu->setAccessibleName("pluginsmenu");
|
||||||
QAction *hideSubMenuAct = new QAction(tr("Plugins"), this);
|
m_hideSubMenuAct = new QAction(tr("Plugins"), this);
|
||||||
hideSubMenuAct->setMenu(m_hideSubMenu);
|
m_hideSubMenuAct->setMenu(m_hideSubMenu);
|
||||||
|
|
||||||
m_settingsMenu->addAction(modeSubMenuAct);
|
setSettingsMenu();
|
||||||
m_settingsMenu->addAction(locationSubMenuAct);
|
|
||||||
m_settingsMenu->addAction(statusSubMenuAct);
|
|
||||||
m_settingsMenu->addAction(hideSubMenuAct);
|
|
||||||
m_settingsMenu->setTitle("Settings Menu");
|
m_settingsMenu->setTitle("Settings Menu");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -138,6 +135,24 @@ void MenuWorker::initConnection()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MenuWorker::setSettingsMenu()
|
||||||
|
{
|
||||||
|
for (auto act : m_settingsMenu->actions())
|
||||||
|
m_settingsMenu->removeAction(act);
|
||||||
|
|
||||||
|
if (GSettingsByMenu()->get("modeVisible").toBool())
|
||||||
|
m_settingsMenu->addAction(m_modeSubMenuAct);
|
||||||
|
|
||||||
|
if (GSettingsByMenu()->get("locationVisible").toBool())
|
||||||
|
m_settingsMenu->addAction(m_locationSubMenuAct);
|
||||||
|
|
||||||
|
if (GSettingsByMenu()->get("statusVisible").toBool())
|
||||||
|
m_settingsMenu->addAction(m_statusSubMenuAct);
|
||||||
|
|
||||||
|
if (GSettingsByMenu()->get("hideVisible").toBool())
|
||||||
|
m_settingsMenu->addAction(m_hideSubMenuAct);
|
||||||
|
}
|
||||||
|
|
||||||
void MenuWorker::showDockSettingsMenu()
|
void MenuWorker::showDockSettingsMenu()
|
||||||
{
|
{
|
||||||
QTimer::singleShot(0, this, [=] {
|
QTimer::singleShot(0, this, [=] {
|
||||||
@ -145,6 +160,7 @@ void MenuWorker::showDockSettingsMenu()
|
|||||||
});
|
});
|
||||||
|
|
||||||
setAutoHide(false);
|
setAutoHide(false);
|
||||||
|
setSettingsMenu();
|
||||||
|
|
||||||
bool hasComposite = DWindowManagerHelper::instance()->hasComposite();
|
bool hasComposite = DWindowManagerHelper::instance()->hasComposite();
|
||||||
|
|
||||||
|
@ -53,6 +53,9 @@ public:
|
|||||||
// TODO 是否还有其他的插件未处理其gsettings配置,这里只是移植之前的代码
|
// TODO 是否还有其他的插件未处理其gsettings配置,这里只是移植之前的代码
|
||||||
void onTrashGSettingsChanged(const QString &key);
|
void onTrashGSettingsChanged(const QString &key);
|
||||||
|
|
||||||
|
private:
|
||||||
|
void setSettingsMenu();
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void autoHideChanged(const bool autoHide) const;
|
void autoHideChanged(const bool autoHide) const;
|
||||||
void trayCountChanged();
|
void trayCountChanged();
|
||||||
@ -80,6 +83,10 @@ private:
|
|||||||
QAction *m_keepShownAct;
|
QAction *m_keepShownAct;
|
||||||
QAction *m_keepHiddenAct;
|
QAction *m_keepHiddenAct;
|
||||||
QAction *m_smartHideAct;
|
QAction *m_smartHideAct;
|
||||||
|
QAction *m_modeSubMenuAct;
|
||||||
|
QAction *m_locationSubMenuAct;
|
||||||
|
QAction *m_statusSubMenuAct;
|
||||||
|
QAction *m_hideSubMenuAct;
|
||||||
|
|
||||||
bool m_menuEnable;
|
bool m_menuEnable;
|
||||||
bool m_autoHide;
|
bool m_autoHide;
|
||||||
|
@ -271,7 +271,36 @@
|
|||||||
<description>
|
<description>
|
||||||
Control Module Enable
|
Control Module Enable
|
||||||
</description>
|
</description>
|
||||||
|
</key>
|
||||||
|
<key type="b" name="mode-visible">
|
||||||
|
<default>true</default>
|
||||||
|
<summary>Module Visible</summary>
|
||||||
|
<description>
|
||||||
|
Control Module Visible
|
||||||
|
</description>
|
||||||
</key>
|
</key>
|
||||||
|
<key type="b" name="location-visible">
|
||||||
|
<default>true</default>
|
||||||
|
<summary>Module Visible</summary>
|
||||||
|
<description>
|
||||||
|
Control Module Visible
|
||||||
|
</description>
|
||||||
|
</key>
|
||||||
|
<key type="b" name="status-visible">
|
||||||
|
<default>true</default>
|
||||||
|
<summary>Module Visible</summary>
|
||||||
|
<description>
|
||||||
|
Control Module Visible
|
||||||
|
</description>
|
||||||
|
</key>
|
||||||
|
<key type="b" name="hide-visible">
|
||||||
|
<default>true</default>
|
||||||
|
<summary>Module Visible</summary>
|
||||||
|
<description>
|
||||||
|
Control Module Visible
|
||||||
|
</description>
|
||||||
|
</key>
|
||||||
|
|
||||||
</schema>
|
</schema>
|
||||||
<schema path="/com/deepin/dde/dock/module/AiAssistant/" id="com.deepin.dde.dock.module.AiAssistant" gettext-domain="DDE">
|
<schema path="/com/deepin/dde/dock/module/AiAssistant/" id="com.deepin.dde.dock.module.AiAssistant" gettext-domain="DDE">
|
||||||
<key type="b" name="control">
|
<key type="b" name="control">
|
||||||
|
Loading…
x
Reference in New Issue
Block a user