Fix window size

pull/4/head
cutefishd 5 years ago
parent 55efb6a134
commit 07933f9991

@ -10,12 +10,11 @@ import FishUI 1.0 as FishUI
Item { Item {
id: root id: root
// The window manager is forced to set the window size. width: launcher.screenRect.width
// width: launcher.screenRect.width height: launcher.screenRect.height
// height: launcher.screenRect.height
property real horizontalSpacing: root.width * 0.01 * Screen.devicePixelRatio property real horizontalSpacing: launcher.screenRect.width * 0.01 * Screen.devicePixelRatio
property real verticalSpacing: root.height * 0.01 * Screen.devicePixelRatio property real verticalSpacing: launcher.screenRect.height * 0.01 * Screen.devicePixelRatio
Wallpaper { Wallpaper {
id: backend id: backend
@ -25,10 +24,11 @@ Item {
id: wallpaper id: wallpaper
anchors.fill: parent anchors.fill: parent
source: "file://" + backend.wallpaper source: "file://" + backend.wallpaper
sourceSize: Qt.size(width, height) sourceSize: Qt.size(auncher.screenRect.width,
launcher.screenRect.height)
fillMode: Image.PreserveAspectCrop fillMode: Image.PreserveAspectCrop
clip: true asynchronous: false
cache: true cache: false
smooth: false smooth: false
} }

@ -30,14 +30,13 @@
Launcher::Launcher(QQuickView *w) Launcher::Launcher(QQuickView *w)
: QQuickView(w) : QQuickView(w)
{ {
m_screenRect = qApp->primaryScreen()->geometry();
m_screenAvailableRect = qApp->primaryScreen()->availableGeometry(); m_screenAvailableRect = qApp->primaryScreen()->availableGeometry();
new LauncherAdaptor(this); new LauncherAdaptor(this);
engine()->rootContext()->setContextProperty("launcher", this); engine()->rootContext()->setContextProperty("launcher", this);
setFlags(Qt::FramelessWindowHint); setFlags(Qt::FramelessWindowHint | Qt::CoverWindow);
setResizeMode(QQuickView::SizeRootObjectToView); setResizeMode(QQuickView::SizeRootObjectToView);
setClearBeforeRendering(true); setClearBeforeRendering(true);
setScreen(qApp->primaryScreen()); setScreen(qApp->primaryScreen());
@ -80,10 +79,11 @@ QRect Launcher::screenAvailableRect()
void Launcher::onGeometryChanged() void Launcher::onGeometryChanged()
{ {
m_screenRect = qApp->primaryScreen()->geometry(); if (m_screenRect != qApp->primaryScreen()->geometry()) {
setGeometry(qApp->primaryScreen()->geometry()); m_screenRect = qApp->primaryScreen()->geometry();
setGeometry(m_screenRect);
emit screenRectChanged(); emit screenRectChanged();
}
} }
void Launcher::onAvailableGeometryChanged(const QRect &geometry) void Launcher::onAvailableGeometryChanged(const QRect &geometry)
@ -99,6 +99,12 @@ void Launcher::showEvent(QShowEvent *e)
QQuickView::showEvent(e); QQuickView::showEvent(e);
} }
void Launcher::resizeEvent(QResizeEvent *e)
{
// The window manager forces the size.
e->ignore();
}
void Launcher::onActiveChanged() void Launcher::onActiveChanged()
{ {
if (!isActive()) if (!isActive())

@ -49,6 +49,7 @@ private slots:
protected: protected:
void showEvent(QShowEvent *e) override; void showEvent(QShowEvent *e) override;
void resizeEvent(QResizeEvent *e) override;
private: private:
void onActiveChanged(); void onActiveChanged();

Loading…
Cancel
Save