diff --git a/app/view/settings/primaryconfigview.cpp b/app/view/settings/primaryconfigview.cpp index 038e72977..d36484a32 100644 --- a/app/view/settings/primaryconfigview.cpp +++ b/app/view/settings/primaryconfigview.cpp @@ -246,9 +246,15 @@ void PrimaryConfigView::syncGeometry() switch (m_latteView->formFactor()) { case Plasma::Types::Horizontal: { - xPos = (m_complexity == Latte::Types::ExpertSettings) ? - availGeometry.x() + availGeometry.width() - size.width() : - scrGeometry.center().x() - size.width() / 2; + if (m_complexity == Latte::Types::ExpertSettings) { + if (qApp->isLeftToRight()) { + xPos = availGeometry.x() + availGeometry.width() - size.width(); + } else { + xPos = availGeometry.x(); + } + } else { + xPos = scrGeometry.center().x() - size.width() / 2; + } if (location == Plasma::Types::TopEdge) { yPos = scrGeometry.y() + clearThickness; diff --git a/app/view/settings/secondaryconfigview.cpp b/app/view/settings/secondaryconfigview.cpp index f770a2fd6..24e8139ba 100644 --- a/app/view/settings/secondaryconfigview.cpp +++ b/app/view/settings/secondaryconfigview.cpp @@ -183,7 +183,11 @@ void SecondaryConfigView::syncGeometry() switch (m_latteView->containment()->formFactor()) { case Plasma::Types::Horizontal: { - xPos = availGeometry.x() + secondaryConfigSpacing; + if (qApp->isLeftToRight()) { + xPos = availGeometry.x() + size.width(); + } else { + xPos = availGeometry.x() + availGeometry.width() - size.width() - secondaryConfigSpacing; + } if (location == Plasma::Types::TopEdge) { yPos = scrGeometry.y() + clearThickness;