diff --git a/app/view/settings/primaryconfigview.cpp b/app/view/settings/primaryconfigview.cpp
index 6139e109f..9657bd269 100644
--- a/app/view/settings/primaryconfigview.cpp
+++ b/app/view/settings/primaryconfigview.cpp
@@ -152,7 +152,7 @@ void PrimaryConfigView::init()
inline Qt::WindowFlags PrimaryConfigView::wFlags() const
{
- return (flags() | Qt::FramelessWindowHint) & ~Qt::WindowDoesNotAcceptFocus;
+ return (flags() | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint) & ~Qt::WindowDoesNotAcceptFocus;
}
QWindow *PrimaryConfigView::secondaryWindow()
@@ -246,6 +246,7 @@ void PrimaryConfigView::syncGeometry()
}
updateShowInlineProperties();
+ m_latteView->raise();
}
void PrimaryConfigView::syncSlideEffect()
diff --git a/app/view/settings/secondaryconfigview.cpp b/app/view/settings/secondaryconfigview.cpp
index a95aa68e6..9afbbc7e7 100644
--- a/app/view/settings/secondaryconfigview.cpp
+++ b/app/view/settings/secondaryconfigview.cpp
@@ -133,7 +133,7 @@ void SecondaryConfigView::init()
inline Qt::WindowFlags SecondaryConfigView::wFlags() const
{
- return (flags() | Qt::FramelessWindowHint) & ~Qt::WindowDoesNotAcceptFocus;
+ return (flags() | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint) & ~Qt::WindowDoesNotAcceptFocus;
}
QRect SecondaryConfigView::geometryWhenVisible() const
@@ -210,6 +210,8 @@ void SecondaryConfigView::syncGeometry()
if (m_parent) {
m_parent->requestActivate();
}
+
+ m_latteView->raise();
}
void SecondaryConfigView::syncSlideEffect()
diff --git a/containment/package/contents/config/main.xml b/containment/package/contents/config/main.xml
index f89ca2e2c..0ba350ec8 100644
--- a/containment/package/contents/config/main.xml
+++ b/containment/package/contents/config/main.xml
@@ -57,6 +57,9 @@
-1
+
+ false
+
true
diff --git a/containment/package/contents/ui/editmode/ConfigOverlay.qml b/containment/package/contents/ui/editmode/ConfigOverlay.qml
index e614879eb..febd30464 100644
--- a/containment/package/contents/ui/editmode/ConfigOverlay.qml
+++ b/containment/package/contents/ui/editmode/ConfigOverlay.qml
@@ -21,6 +21,7 @@
import QtQuick 2.7
import QtQuick.Layouts 1.0
+import org.kde.plasma.plasmoid 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.kquickcontrolsaddons 2.0
@@ -32,8 +33,10 @@ MouseArea {
anchors.fill: parent
//enabled: false
- visible: true//false
- // hoverEnabled: true
+ visible: plasmoid.configuration.inConfigureAppletsMode
+ hoverEnabled: plasmoid.configuration.inConfigureAppletsMode
+
+ focus: true
cursorShape: {
if (currentApplet && tooltip.visible && currentApplet.applet
@@ -59,6 +62,7 @@ MouseArea {
onHeightChanged: tooltip.visible = false;
onWidthChanged: tooltip.visible = false;
+
onPositionChanged: {
if (pressed) {
var padding = units.gridUnit * 3;
@@ -142,9 +146,9 @@ MouseArea {
var relevantLayout = mapFromItem(layoutsContainer.mainLayout, 0, 0);
handle.x = relevantLayout.x + currentApplet.x;
- handle.y = relevantLayout.y + currentApplet.y + currentApplet.height / 2;
+ handle.y = relevantLayout.y + currentApplet.y;
handle.width = currentApplet.width;
- handle.height = currentApplet.height / 2;
+ handle.height = currentApplet.height;
lockButton.checked = currentApplet.lockZoom;
colorizingButton.checked = !currentApplet.userBlocksColorizing;
@@ -290,9 +294,9 @@ MouseArea {
var transformChoords = root.mapFromItem(currentApplet, 0, 0)
handle.x = transformChoords.x;
- handle.y = transformChoords.y + currentApplet.height / 2;
+ handle.y = transformChoords.y;
handle.width = currentApplet.width;
- handle.height = currentApplet.height / 2;
+ handle.height = currentApplet.height;
repositionHandler.restart();
}
diff --git a/containment/package/contents/ui/editmode/Visual.qml b/containment/package/contents/ui/editmode/Visual.qml
index 3c01047ea..a6366ab31 100644
--- a/containment/package/contents/ui/editmode/Visual.qml
+++ b/containment/package/contents/ui/editmode/Visual.qml
@@ -53,7 +53,8 @@ Item{
property string layoutColor: latteView && latteView.managedLayout ? latteView.managedLayout.color : "blue"
- readonly property real maxOpacity: Latte.WindowSystem.compositingActive ? plasmoid.configuration.editBackgroundOpacity : 1
+ readonly property real maxOpacity: Latte.WindowSystem.compositingActive && !plasmoid.configuration.inConfigureAppletsMode ?
+ plasmoid.configuration.editBackgroundOpacity : 1
Item{
id: shadow
diff --git a/shell/package/contents/configuration/LatteDockConfiguration.qml b/shell/package/contents/configuration/LatteDockConfiguration.qml
index f82db8548..b95df9192 100644
--- a/shell/package/contents/configuration/LatteDockConfiguration.qml
+++ b/shell/package/contents/configuration/LatteDockConfiguration.qml
@@ -178,6 +178,10 @@ FocusScope {
if (event.key === Qt.Key_Escape) {
viewConfig.hideConfigWindow();
}
+
+ if (event.key === Qt.Key_Control) {
+ plasmoid.configuration.inConfigureAppletsMode = !plasmoid.configuration.inConfigureAppletsMode;
+ }
}
Component.onCompleted: forceActiveFocus();