Przeglądaj źródła

It turns out setting the top level view transparent forces ARGB surfaces

Donald Carr 6 lat temu
rodzic
commit
29874d758d
1 zmienionych plików z 8 dodań i 1 usunięć
  1. 8 1
      src/main.cpp

+ 8 - 1
src/main.cpp

@@ -132,8 +132,15 @@ void ArtView::populateScreen(QScreen *screen)
     } else {
         screen = view->screen();
     }
+    QSettings settings;
     QRect geometry = screen->availableGeometry();
-    view->setColor(Qt::transparent);
+    bool transparentToplevel = settings.value("transparentToplevel", false).toBool();
+    settings.setValue("transparentToplevel", transparentToplevel);
+    if (transparentToplevel) {
+        view->setColor(Qt::transparent);
+    } else {
+        view->setColor(Qt::black);
+    }
     view->setResizeMode(QQuickView::SizeRootObjectToView);
     view->setSource(QUrl(qmlPath + "/main.qml"));
     view->setGeometry(geometry);