Advertisement
Guest User

main.qml

a guest
May 29th, 2019
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
QML 1.63 KB | None | 0 0
  1. import QtQuick 2.6
  2. import QtQuick.Window 2.2
  3. import QtQuick.Scene3D 2.12
  4. import QtWayland.Compositor 1.3
  5.  
  6. WaylandCompositor {
  7.     // The output defines the screen.
  8.     WaylandOutput {
  9.         sizeFollowsWindow: true
  10.         scaleFactor: 1
  11.         window: Window {
  12.             width: 1600
  13.             height: 900
  14.             visible: true
  15.  
  16.             Scene3D {
  17.                 anchors.fill: parent
  18.                 entity: sceneRoot
  19.                 cameraAspectRatioMode: Scene3D.AutomaticAspectRatio
  20.             }
  21.  
  22.             MainScene {
  23.                 id: sceneRoot
  24.             }
  25.         }
  26.     }
  27.     WlShell {
  28.         onWlShellSurfaceCreated:
  29.             shellSurfaceCreated(shellSurface, "wl");
  30.     }
  31.     XdgShellV6 {
  32.         onToplevelCreated:
  33.             shellSurfaceCreated(xdgSurface, "xdgv6");
  34.     }
  35.     XdgShell {
  36.         onToplevelCreated:
  37.             shellSurfaceCreated(xdgSurface, "xdg");
  38.     }
  39.     function shellSurfaceCreated (shellSurf, shellSurfType) {
  40.         console.log("Creating surface...");
  41.         var panelComponent = Qt.createComponent("Panel.qml");
  42.  
  43.         var panelInstance = panelComponent.createObject(sceneRoot, {
  44.             "shellSurf": shellSurf,
  45.             "shellSurfType": shellSurfType
  46.         });
  47.         console.log(shellSurfType + " surface Created");
  48.     }
  49.  
  50.     function resizeShellSurface(shellSurf, shellSurfType, size) {
  51.         switch(shellSurfType) {
  52.         case "wl":
  53.             shellSurf.sendConfigure(size, 0);
  54.             break;
  55.         case "xdg":
  56.         case "xdgv6":
  57.             shellSurf.sendFullscreen(size);
  58.             break;
  59.         }
  60.     }
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement