make the panelcontroller a focusable dock

seems the way everything is more predictable
BUG:332676
wilder-5.14
Marco Martin 12 years ago
parent bab630a9da
commit 610c0f6b54
  1. 13
      shell/panelconfigview.cpp

@ -32,6 +32,7 @@
#include <klocalizedstring.h>
#include <kwindoweffects.h>
#include <KActionCollection>
#include <KWindowSystem>
#include <Plasma/Containment>
#include <Plasma/Corona>
@ -46,9 +47,15 @@ PanelConfigView::PanelConfigView(Plasma::Containment *containment, PanelView *pa
m_visibilityMode = panelView->visibilityMode();
panelView->setVisibilityMode(PanelView::WindowsGoBelow);
setScreen(panelView->screen());
connect(panelView, &QWindow::screenChanged, [=](QScreen *screen){setScreen(screen); syncGeometry();});
setFlags(Qt::BypassWindowManagerHint);
connect(panelView, &QWindow::screenChanged,
[=](QScreen *screen) {
setScreen(screen);
syncGeometry();
});
KWindowSystem::setType(winId(), NET::Dock);
setFlags(Qt::WindowFlags((flags() | Qt::FramelessWindowHint) & (~Qt::WindowDoesNotAcceptFocus)));
KWindowSystem::forceActiveWindow(winId());
KWindowEffects::enableBlurBehind(winId(), true);
updateContrast();

Loading…
Cancel
Save