x11: Drop support for "let windows cover panel" mode in _KDE_NET_WM_SCREEN_EDGE_SHOW
This seems really hacky and plasmashell dropped "let windows cover panel" mode.
This commit is contained in:
parent
cf2410f631
commit
687415076f
3 changed files with 5 additions and 33 deletions
|
@ -636,12 +636,6 @@ bool Window::belongsToDesktop() const
|
||||||
|
|
||||||
Layer Window::layerForDock() const
|
Layer Window::layerForDock() const
|
||||||
{
|
{
|
||||||
// slight hack for the 'allow window to cover panel' Kicker setting
|
|
||||||
// don't move keepbelow docks below normal window, but only to the same
|
|
||||||
// layer, so that both may be raised to cover the other
|
|
||||||
if (keepBelow()) {
|
|
||||||
return NormalLayer;
|
|
||||||
}
|
|
||||||
if (keepAbove()) { // slight hack for the autohiding panels
|
if (keepAbove()) { // slight hack for the autohiding panels
|
||||||
return AboveLayer;
|
return AboveLayer;
|
||||||
}
|
}
|
||||||
|
|
|
@ -2898,11 +2898,6 @@ Xcb::Property X11Window::fetchShowOnScreenEdge() const
|
||||||
|
|
||||||
void X11Window::readShowOnScreenEdge(Xcb::Property &property)
|
void X11Window::readShowOnScreenEdge(Xcb::Property &property)
|
||||||
{
|
{
|
||||||
// value comes in two parts, edge in the lower byte
|
|
||||||
// then the type in the upper byte
|
|
||||||
// 0 = autohide
|
|
||||||
// 1 = raise in front on activate
|
|
||||||
|
|
||||||
const uint32_t value = property.value<uint32_t>(ElectricNone);
|
const uint32_t value = property.value<uint32_t>(ElectricNone);
|
||||||
ElectricBorder border = ElectricNone;
|
ElectricBorder border = ElectricNone;
|
||||||
switch (value & 0xFF) {
|
switch (value & 0xFF) {
|
||||||
|
@ -2920,28 +2915,15 @@ void X11Window::readShowOnScreenEdge(Xcb::Property &property)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (border != ElectricNone) {
|
if (border != ElectricNone) {
|
||||||
disconnect(m_edgeRemoveConnection);
|
|
||||||
disconnect(m_edgeGeometryTrackingConnection);
|
disconnect(m_edgeGeometryTrackingConnection);
|
||||||
bool successfullyHidden = false;
|
|
||||||
|
|
||||||
if (((value >> 8) & 0xFF) == 1) {
|
hideClient();
|
||||||
setKeepBelow(true);
|
const bool successfullyHidden = isHiddenInternal();
|
||||||
successfullyHidden = keepBelow(); // request could have failed due to user kwin rules
|
|
||||||
|
|
||||||
m_edgeRemoveConnection = connect(this, &Window::keepBelowChanged, this, [this]() {
|
m_edgeGeometryTrackingConnection = connect(this, &X11Window::frameGeometryChanged, this, [this, border]() {
|
||||||
if (!keepBelow()) {
|
|
||||||
workspace()->screenEdges()->reserve(this, ElectricNone);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
hideClient();
|
hideClient();
|
||||||
successfullyHidden = isHiddenInternal();
|
workspace()->screenEdges()->reserve(this, border);
|
||||||
|
});
|
||||||
m_edgeGeometryTrackingConnection = connect(this, &X11Window::frameGeometryChanged, this, [this, border]() {
|
|
||||||
hideClient();
|
|
||||||
workspace()->screenEdges()->reserve(this, border);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
if (successfullyHidden) {
|
if (successfullyHidden) {
|
||||||
workspace()->screenEdges()->reserve(this, border);
|
workspace()->screenEdges()->reserve(this, border);
|
||||||
|
@ -2970,10 +2952,7 @@ void X11Window::updateShowOnScreenEdge()
|
||||||
|
|
||||||
void X11Window::showOnScreenEdge()
|
void X11Window::showOnScreenEdge()
|
||||||
{
|
{
|
||||||
disconnect(m_edgeRemoveConnection);
|
|
||||||
|
|
||||||
showClient();
|
showClient();
|
||||||
setKeepBelow(false);
|
|
||||||
xcb_delete_property(kwinApp()->x11Connection(), window(), atoms->kde_screen_edge_show);
|
xcb_delete_property(kwinApp()->x11Connection(), window(), atoms->kde_screen_edge_show);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -523,7 +523,6 @@ private:
|
||||||
QTimer *m_focusOutTimer;
|
QTimer *m_focusOutTimer;
|
||||||
QTimer m_releaseTimer;
|
QTimer m_releaseTimer;
|
||||||
|
|
||||||
QMetaObject::Connection m_edgeRemoveConnection;
|
|
||||||
QMetaObject::Connection m_edgeGeometryTrackingConnection;
|
QMetaObject::Connection m_edgeGeometryTrackingConnection;
|
||||||
|
|
||||||
QMarginsF m_clientFrameExtents;
|
QMarginsF m_clientFrameExtents;
|
||||||
|
|
Loading…
Reference in a new issue