feat: context menu for Keyboard Layout applet

Counterpart commit with the same title is in P-D
wilder-5.22
Andrey Butirsky 5 years ago
parent 7d07c3afc6
commit 4bbf78a20c
  1. 5
      components/keyboardlayout/keyboardlayout.cpp
  2. 5
      components/keyboardlayout/keyboardlayout.h
  3. 5
      components/workspace/KeyboardLayoutButton.qml

@ -68,6 +68,11 @@ void KeyboardLayout::switchToPreviousLayout()
if (mIface) mIface->switchToPreviousLayout();
}
void KeyboardLayout::setLayout(const QString &layout)
{
if (mIface) mIface->setLayout(layout);
}
template<class T>
void KeyboardLayout::requestDBusData(QDBusPendingReply<T> pendingReply, T &out, void (KeyboardLayout::*notify)())
{

@ -18,6 +18,9 @@ class KeyboardLayout : public QObject
{
Q_OBJECT
Q_PROPERTY(QString layout
WRITE setLayout)
Q_PROPERTY(QString layoutDisplayName
MEMBER mLayoutDisplayName
NOTIFY layoutDisplayNameChanged)
@ -44,6 +47,8 @@ protected Q_SLOTS:
void switchToPreviousLayout();
private:
void setLayout(const QString &layout);
enum DBusData {LayoutDisplayName, LayoutLongName, Layouts};
template<class T>

@ -11,11 +11,10 @@ import org.kde.plasma.workspace.keyboardlayout 1.0
PlasmaComponents3.ToolButton {
id: kbLayoutButton
property alias layoutShortName: layout.layoutDisplayName
property alias layoutLongName: layout.layoutLongName
property alias layout: layout
readonly property bool hasMultipleKeyboardLayouts: layout.layouts.length > 1
text: layoutLongName
text: layout.layoutLongName
visible: hasMultipleKeyboardLayouts
Accessible.name: i18ndc("plasma_lookandfeel_org.kde.lookandfeel", "Button to change keyboard layout", "Switch layout")

Loading…
Cancel
Save