28 : KCModule(parent, data)
31 WindowViewConfig::instance(KWIN_CONFIG);
32 addConfig(WindowViewConfig::self(), widget());
34 auto actionCollection =
new KActionCollection(widget(), QStringLiteral(
"kwin"));
36 actionCollection->setComponentDisplayName(i18n(
"KWin"));
37 actionCollection->setConfigGroup(QStringLiteral(
"windowview"));
38 actionCollection->setConfigGlobal(
true);
40 const QKeySequence defaultToggleShortcut = Qt::CTRL | Qt::Key_F9;
41 QAction *toggleAction = actionCollection->addAction(QStringLiteral(
"Expose"));
42 toggleAction->setText(i18n(
"Toggle Present Windows (Current desktop)"));
43 toggleAction->setProperty(
"isConfigurationAction",
true);
44 KGlobalAccel::self()->setDefaultShortcut(toggleAction, {defaultToggleShortcut});
45 KGlobalAccel::self()->setShortcut(toggleAction, {defaultToggleShortcut});
47 const QKeySequence defaultToggleShortcutAll = Qt::CTRL | Qt::Key_F10;
48 toggleAction = actionCollection->addAction(QStringLiteral(
"ExposeAll"));
49 toggleAction->setText(i18n(
"Toggle Present Windows (All desktops)"));
50 toggleAction->setProperty(
"isConfigurationAction",
true);
51 KGlobalAccel::self()->setDefaultShortcut(toggleAction, {defaultToggleShortcutAll});
52 KGlobalAccel::self()->setShortcut(toggleAction, {defaultToggleShortcutAll});
54 const QKeySequence defaultToggleShortcutClass = Qt::CTRL | Qt::Key_F7;
55 toggleAction = actionCollection->addAction(QStringLiteral(
"ExposeClass"));
56 toggleAction->setText(i18n(
"Toggle Present Windows (Window class)"));
57 toggleAction->setProperty(
"isConfigurationAction",
true);
58 KGlobalAccel::self()->setDefaultShortcut(toggleAction, {defaultToggleShortcutClass});
59 KGlobalAccel::self()->setShortcut(toggleAction, {defaultToggleShortcutClass});
61 toggleAction = actionCollection->addAction(QStringLiteral(
"ExposeClassCurrentDesktop"));
62 toggleAction->setText(i18n(
"Toggle Present Windows (Window class on current desktop)"));
63 toggleAction->setProperty(
"isConfigurationAction",
true);
64 KGlobalAccel::self()->setDefaultShortcut(toggleAction, QList<QKeySequence>());
65 KGlobalAccel::self()->setShortcut(toggleAction, QList<QKeySequence>());
67 ui.shortcutsEditor->addCollection(actionCollection);
68 connect(ui.shortcutsEditor, &KShortcutsEditor::keyChange,
this, &KCModule::markAsChanged);