Commit cba895e7 authored by Andrey Butirsky's avatar Andrey Butirsky Committed by Vlad Zahorodnii
Browse files

fix: keyboard layout applet doesn't show actual layout

BUG: 425343
parent 925bb4ee
......@@ -44,6 +44,7 @@ public:
void checkLayoutChange();
void resetLayout();
void updateNotifier();
void keyEvent(KeyEvent *event) override;
......@@ -61,7 +62,6 @@ private:
void switchToNextLayout();
void switchToPreviousLayout();
void switchToLayout(xkb_layout_index_t index);
void updateNotifier();
void reinitNotifierMenu();
void loadShortcuts();
Xkb *m_xkb;
......
......@@ -34,7 +34,11 @@ Policy::~Policy() = default;
void Policy::setLayout(quint32 layout)
{
const quint32 previousLayout = m_xkb->currentLayout();
m_xkb->switchToLayout(layout);
if (previousLayout != m_xkb->currentLayout()) {
m_layout->updateNotifier();
}
}
quint32 Policy::layout() const
......@@ -92,7 +96,7 @@ GlobalPolicy::GlobalPolicy(Xkb *xkb, KeyboardLayout *_layout, const KConfigGroup
[this, xkb] (const QString &name) {
Q_UNUSED(name)
if (xkb->numberOfLayouts() > 1) {
xkb->switchToLayout(m_config.readEntry(defaultLayoutEntryKey(), 0));
setLayout(m_config.readEntry(defaultLayoutEntryKey(), 0));
}
}
);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment