gitextract_i75a93nh/ ├── .clang-format ├── .clang-format-ignore ├── .clang-tidy ├── .gitattributes ├── .github/ │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ └── bug.yml │ ├── actions/ │ │ └── setup_base/ │ │ └── action.yml │ ├── labeler.yml │ ├── pull_request_template.md │ └── workflows/ │ ├── ci.yaml │ ├── clang-format-check.sh │ ├── clang-format.yml │ ├── close-issues.yml │ ├── labeler.yml │ ├── man-update.yaml │ ├── new-pr-comment.yml │ ├── nix-ci.yml │ ├── nix-test.yml │ ├── nix-update-inputs.yml │ ├── nix.yml │ ├── release.yaml │ ├── security-checks.yml │ └── translation-ai-check.yml ├── .gitignore ├── .gitmodules ├── CMakeLists.txt ├── CODE_OF_CONDUCT.md ├── LICENSE ├── Makefile ├── README.md ├── SECURITY.md ├── VERSION ├── assets/ │ └── hyprland-portals.conf ├── docs/ │ ├── Hyprland.1 │ ├── Hyprland.1.rst │ ├── ISSUE_GUIDELINES.md │ ├── hyprctl.1 │ └── hyprctl.1.rst ├── example/ │ ├── hyprland.conf │ ├── hyprland.desktop.in │ ├── hyprland.service │ ├── launch.json │ ├── screenShader.frag │ └── swaybg@.service ├── flake.nix ├── hyprctl/ │ ├── CMakeLists.txt │ ├── hw-protocols/ │ │ └── hyprpaper_core.xml │ ├── hyprctl.bash │ ├── hyprctl.fish │ ├── hyprctl.usage │ ├── hyprctl.zsh │ └── src/ │ ├── Strings.hpp │ ├── helpers/ │ │ └── Memory.hpp │ ├── hyprpaper/ │ │ ├── Hyprpaper.cpp │ │ └── Hyprpaper.hpp │ └── main.cpp ├── hyprland.pc.in ├── hyprpm/ │ ├── CMakeLists.txt │ ├── hyprpm.bash │ ├── hyprpm.fish │ ├── hyprpm.usage │ ├── hyprpm.zsh │ └── src/ │ ├── core/ │ │ ├── DataState.cpp │ │ ├── DataState.hpp │ │ ├── HyprlandSocket.cpp │ │ ├── HyprlandSocket.hpp │ │ ├── Manifest.cpp │ │ ├── Manifest.hpp │ │ ├── Plugin.cpp │ │ ├── Plugin.hpp │ │ ├── PluginManager.cpp │ │ └── PluginManager.hpp │ ├── helpers/ │ │ ├── Colors.hpp │ │ ├── Die.hpp │ │ ├── StringUtils.hpp │ │ ├── Sys.cpp │ │ └── Sys.hpp │ ├── main.cpp │ └── progress/ │ ├── CProgressBar.cpp │ └── CProgressBar.hpp ├── hyprtester/ │ ├── CMakeLists.txt │ ├── clients/ │ │ ├── child-window.cpp │ │ ├── pointer-scroll.cpp │ │ ├── pointer-warp.cpp │ │ └── shortcut-inhibitor.cpp │ ├── plugin/ │ │ ├── Makefile │ │ ├── build.sh │ │ └── src/ │ │ ├── globals.hpp │ │ └── main.cpp │ ├── protocols/ │ │ └── .gitignore │ ├── src/ │ │ ├── Log.hpp │ │ ├── hyprctlCompat.cpp │ │ ├── hyprctlCompat.hpp │ │ ├── main.cpp │ │ ├── shared.hpp │ │ └── tests/ │ │ ├── clients/ │ │ │ ├── .gitignore │ │ │ ├── child-window.cpp │ │ │ ├── pointer-scroll.cpp │ │ │ ├── pointer-warp.cpp │ │ │ ├── shortcut-inhibitor.cpp │ │ │ └── tests.hpp │ │ ├── main/ │ │ │ ├── animations.cpp │ │ │ ├── colors.cpp │ │ │ ├── dwindle.cpp │ │ │ ├── exec.cpp │ │ │ ├── gestures.cpp │ │ │ ├── groups.cpp │ │ │ ├── hyprctl.cpp │ │ │ ├── keybinds.cpp │ │ │ ├── layer.cpp │ │ │ ├── layout.cpp │ │ │ ├── master.cpp │ │ │ ├── misc.cpp │ │ │ ├── persistent.cpp │ │ │ ├── scroll.cpp │ │ │ ├── snap.cpp │ │ │ ├── solitary.cpp │ │ │ ├── tags.cpp │ │ │ ├── tests.hpp │ │ │ ├── window.cpp │ │ │ └── workspaces.cpp │ │ ├── plugin/ │ │ │ ├── plugin.cpp │ │ │ └── plugin.hpp │ │ ├── shared.cpp │ │ └── shared.hpp │ └── test.conf ├── nix/ │ ├── default.nix │ ├── formatter.nix │ ├── hm-module.nix │ ├── lib.nix │ ├── module.nix │ ├── overlays.nix │ ├── tests/ │ │ └── default.nix │ └── update-inputs.sh ├── protocols/ │ ├── input-method-unstable-v2.xml │ ├── kde-server-decoration.xml │ ├── virtual-keyboard-unstable-v1.xml │ ├── wayland-drm.xml │ ├── wlr-data-control-unstable-v1.xml │ ├── wlr-foreign-toplevel-management-unstable-v1.xml │ ├── wlr-gamma-control-unstable-v1.xml │ ├── wlr-layer-shell-unstable-v1.xml │ ├── wlr-output-management-unstable-v1.xml │ ├── wlr-output-power-management-unstable-v1.xml │ ├── wlr-screencopy-unstable-v1.xml │ └── wlr-virtual-pointer-unstable-v1.xml ├── scripts/ │ ├── generateShaderIncludes.sh │ ├── hyprlandStaticAsan.diff │ └── waylandStatic.diff ├── src/ │ ├── Compositor.cpp │ ├── Compositor.hpp │ ├── SharedDefs.hpp │ ├── config/ │ │ ├── ConfigDataValues.hpp │ │ ├── ConfigDescriptions.hpp │ │ ├── ConfigManager.cpp │ │ ├── ConfigManager.hpp │ │ ├── ConfigValue.cpp │ │ ├── ConfigValue.hpp │ │ ├── ConfigWatcher.cpp │ │ ├── ConfigWatcher.hpp │ │ └── defaultConfig.hpp │ ├── debug/ │ │ ├── HyprCtl.cpp │ │ ├── HyprCtl.hpp │ │ ├── HyprDebugOverlay.cpp │ │ ├── HyprDebugOverlay.hpp │ │ ├── HyprNotificationOverlay.cpp │ │ ├── HyprNotificationOverlay.hpp │ │ ├── TracyDefines.hpp │ │ ├── crash/ │ │ │ ├── CrashReporter.cpp │ │ │ ├── CrashReporter.hpp │ │ │ ├── SignalSafe.cpp │ │ │ └── SignalSafe.hpp │ │ └── log/ │ │ ├── Logger.cpp │ │ ├── Logger.hpp │ │ └── RollingLogFollow.hpp │ ├── defines.hpp │ ├── desktop/ │ │ ├── DesktopTypes.hpp │ │ ├── Workspace.cpp │ │ ├── Workspace.hpp │ │ ├── history/ │ │ │ ├── WindowHistoryTracker.cpp │ │ │ ├── WindowHistoryTracker.hpp │ │ │ ├── WorkspaceHistoryTracker.cpp │ │ │ └── WorkspaceHistoryTracker.hpp │ │ ├── reserved/ │ │ │ ├── ReservedArea.cpp │ │ │ └── ReservedArea.hpp │ │ ├── rule/ │ │ │ ├── Engine.cpp │ │ │ ├── Engine.hpp │ │ │ ├── Rule.cpp │ │ │ ├── Rule.hpp │ │ │ ├── effect/ │ │ │ │ └── EffectContainer.hpp │ │ │ ├── layerRule/ │ │ │ │ ├── LayerRule.cpp │ │ │ │ ├── LayerRule.hpp │ │ │ │ ├── LayerRuleApplicator.cpp │ │ │ │ ├── LayerRuleApplicator.hpp │ │ │ │ ├── LayerRuleEffectContainer.cpp │ │ │ │ └── LayerRuleEffectContainer.hpp │ │ │ ├── matchEngine/ │ │ │ │ ├── BoolMatchEngine.cpp │ │ │ │ ├── BoolMatchEngine.hpp │ │ │ │ ├── IntMatchEngine.cpp │ │ │ │ ├── IntMatchEngine.hpp │ │ │ │ ├── MatchEngine.cpp │ │ │ │ ├── MatchEngine.hpp │ │ │ │ ├── RegexMatchEngine.cpp │ │ │ │ ├── RegexMatchEngine.hpp │ │ │ │ ├── TagMatchEngine.cpp │ │ │ │ ├── TagMatchEngine.hpp │ │ │ │ ├── WorkspaceMatchEngine.cpp │ │ │ │ └── WorkspaceMatchEngine.hpp │ │ │ ├── utils/ │ │ │ │ └── SetUtils.hpp │ │ │ └── windowRule/ │ │ │ ├── WindowRule.cpp │ │ │ ├── WindowRule.hpp │ │ │ ├── WindowRuleApplicator.cpp │ │ │ ├── WindowRuleApplicator.hpp │ │ │ ├── WindowRuleEffectContainer.cpp │ │ │ └── WindowRuleEffectContainer.hpp │ │ ├── state/ │ │ │ ├── FocusState.cpp │ │ │ └── FocusState.hpp │ │ ├── types/ │ │ │ └── OverridableVar.hpp │ │ └── view/ │ │ ├── GlobalViewMethods.cpp │ │ ├── GlobalViewMethods.hpp │ │ ├── Group.cpp │ │ ├── Group.hpp │ │ ├── LayerSurface.cpp │ │ ├── LayerSurface.hpp │ │ ├── Popup.cpp │ │ ├── Popup.hpp │ │ ├── SessionLock.cpp │ │ ├── SessionLock.hpp │ │ ├── Subsurface.cpp │ │ ├── Subsurface.hpp │ │ ├── View.cpp │ │ ├── View.hpp │ │ ├── WLSurface.cpp │ │ ├── WLSurface.hpp │ │ ├── Window.cpp │ │ └── Window.hpp │ ├── devices/ │ │ ├── IHID.cpp │ │ ├── IHID.hpp │ │ ├── IKeyboard.cpp │ │ ├── IKeyboard.hpp │ │ ├── IPointer.cpp │ │ ├── IPointer.hpp │ │ ├── ITouch.cpp │ │ ├── ITouch.hpp │ │ ├── Keyboard.cpp │ │ ├── Keyboard.hpp │ │ ├── Mouse.cpp │ │ ├── Mouse.hpp │ │ ├── Tablet.cpp │ │ ├── Tablet.hpp │ │ ├── TouchDevice.cpp │ │ ├── TouchDevice.hpp │ │ ├── VirtualKeyboard.cpp │ │ ├── VirtualKeyboard.hpp │ │ ├── VirtualPointer.cpp │ │ └── VirtualPointer.hpp │ ├── event/ │ │ ├── EventBus.cpp │ │ └── EventBus.hpp │ ├── helpers/ │ │ ├── AnimatedVariable.hpp │ │ ├── AsyncDialogBox.cpp │ │ ├── AsyncDialogBox.hpp │ │ ├── ByteOperations.hpp │ │ ├── CMType.cpp │ │ ├── CMType.hpp │ │ ├── Color.cpp │ │ ├── Color.hpp │ │ ├── CursorShapes.hpp │ │ ├── DamageRing.cpp │ │ ├── DamageRing.hpp │ │ ├── Drm.cpp │ │ ├── Drm.hpp │ │ ├── Format.cpp │ │ ├── Format.hpp │ │ ├── MainLoopExecutor.cpp │ │ ├── MainLoopExecutor.hpp │ │ ├── MiscFunctions.cpp │ │ ├── MiscFunctions.hpp │ │ ├── Monitor.cpp │ │ ├── Monitor.hpp │ │ ├── MonitorFrameScheduler.cpp │ │ ├── MonitorFrameScheduler.hpp │ │ ├── MonitorZoomController.cpp │ │ ├── MonitorZoomController.hpp │ │ ├── SdDaemon.cpp │ │ ├── SdDaemon.hpp │ │ ├── Splashes.hpp │ │ ├── TagKeeper.cpp │ │ ├── TagKeeper.hpp │ │ ├── TransferFunction.cpp │ │ ├── TransferFunction.hpp │ │ ├── WLClasses.cpp │ │ ├── WLClasses.hpp │ │ ├── cm/ │ │ │ ├── ColorManagement.cpp │ │ │ ├── ColorManagement.hpp │ │ │ └── ICC.cpp │ │ ├── defer/ │ │ │ └── Promise.hpp │ │ ├── env/ │ │ │ ├── Env.cpp │ │ │ └── Env.hpp │ │ ├── fs/ │ │ │ ├── FsUtils.cpp │ │ │ └── FsUtils.hpp │ │ ├── math/ │ │ │ ├── Direction.cpp │ │ │ ├── Direction.hpp │ │ │ ├── Expression.cpp │ │ │ ├── Expression.hpp │ │ │ ├── Math.cpp │ │ │ └── Math.hpp │ │ ├── memory/ │ │ │ └── Memory.hpp │ │ ├── signal/ │ │ │ └── Signal.hpp │ │ ├── sync/ │ │ │ ├── SyncReleaser.cpp │ │ │ ├── SyncReleaser.hpp │ │ │ ├── SyncTimeline.cpp │ │ │ └── SyncTimeline.hpp │ │ ├── time/ │ │ │ ├── Time.cpp │ │ │ ├── Time.hpp │ │ │ ├── Timer.cpp │ │ │ └── Timer.hpp │ │ └── varlist/ │ │ └── VarList.hpp │ ├── hyprerror/ │ │ ├── HyprError.cpp │ │ └── HyprError.hpp │ ├── i18n/ │ │ ├── Engine.cpp │ │ └── Engine.hpp │ ├── includes.hpp │ ├── init/ │ │ ├── initHelpers.cpp │ │ └── initHelpers.hpp │ ├── layout/ │ │ ├── LayoutManager.cpp │ │ ├── LayoutManager.hpp │ │ ├── algorithm/ │ │ │ ├── Algorithm.cpp │ │ │ ├── Algorithm.hpp │ │ │ ├── FloatingAlgorithm.cpp │ │ │ ├── FloatingAlgorithm.hpp │ │ │ ├── ModeAlgorithm.cpp │ │ │ ├── ModeAlgorithm.hpp │ │ │ ├── TiledAlgorithm.hpp │ │ │ ├── floating/ │ │ │ │ └── default/ │ │ │ │ ├── DefaultFloatingAlgorithm.cpp │ │ │ │ └── DefaultFloatingAlgorithm.hpp │ │ │ └── tiled/ │ │ │ ├── dwindle/ │ │ │ │ ├── DwindleAlgorithm.cpp │ │ │ │ └── DwindleAlgorithm.hpp │ │ │ ├── master/ │ │ │ │ ├── MasterAlgorithm.cpp │ │ │ │ └── MasterAlgorithm.hpp │ │ │ ├── monocle/ │ │ │ │ ├── MonocleAlgorithm.cpp │ │ │ │ └── MonocleAlgorithm.hpp │ │ │ └── scrolling/ │ │ │ ├── ScrollTapeController.cpp │ │ │ ├── ScrollTapeController.hpp │ │ │ ├── ScrollingAlgorithm.cpp │ │ │ └── ScrollingAlgorithm.hpp │ │ ├── space/ │ │ │ ├── Space.cpp │ │ │ └── Space.hpp │ │ ├── supplementary/ │ │ │ ├── DragController.cpp │ │ │ ├── DragController.hpp │ │ │ ├── WorkspaceAlgoMatcher.cpp │ │ │ └── WorkspaceAlgoMatcher.hpp │ │ └── target/ │ │ ├── Target.cpp │ │ ├── Target.hpp │ │ ├── WindowGroupTarget.cpp │ │ ├── WindowGroupTarget.hpp │ │ ├── WindowTarget.cpp │ │ └── WindowTarget.hpp │ ├── macros.hpp │ ├── main.cpp │ ├── managers/ │ │ ├── ANRManager.cpp │ │ ├── ANRManager.hpp │ │ ├── CursorManager.cpp │ │ ├── CursorManager.hpp │ │ ├── DonationNagManager.cpp │ │ ├── DonationNagManager.hpp │ │ ├── EventManager.cpp │ │ ├── EventManager.hpp │ │ ├── KeybindManager.cpp │ │ ├── KeybindManager.hpp │ │ ├── PointerManager.cpp │ │ ├── PointerManager.hpp │ │ ├── ProtocolManager.cpp │ │ ├── ProtocolManager.hpp │ │ ├── SeatManager.cpp │ │ ├── SeatManager.hpp │ │ ├── SessionLockManager.cpp │ │ ├── SessionLockManager.hpp │ │ ├── TokenManager.cpp │ │ ├── TokenManager.hpp │ │ ├── VersionKeeperManager.cpp │ │ ├── VersionKeeperManager.hpp │ │ ├── WelcomeManager.cpp │ │ ├── WelcomeManager.hpp │ │ ├── XCursorManager.cpp │ │ ├── XCursorManager.hpp │ │ ├── XWaylandManager.cpp │ │ ├── XWaylandManager.hpp │ │ ├── animation/ │ │ │ ├── AnimationManager.cpp │ │ │ ├── AnimationManager.hpp │ │ │ ├── DesktopAnimationManager.cpp │ │ │ └── DesktopAnimationManager.hpp │ │ ├── cursor/ │ │ │ ├── CursorShapeOverrideController.cpp │ │ │ └── CursorShapeOverrideController.hpp │ │ ├── eventLoop/ │ │ │ ├── EventLoopManager.cpp │ │ │ ├── EventLoopManager.hpp │ │ │ ├── EventLoopTimer.cpp │ │ │ └── EventLoopTimer.hpp │ │ ├── input/ │ │ │ ├── IdleInhibitor.cpp │ │ │ ├── InputManager.cpp │ │ │ ├── InputManager.hpp │ │ │ ├── InputMethodPopup.cpp │ │ │ ├── InputMethodPopup.hpp │ │ │ ├── InputMethodRelay.cpp │ │ │ ├── InputMethodRelay.hpp │ │ │ ├── Tablets.cpp │ │ │ ├── TextInput.cpp │ │ │ ├── TextInput.hpp │ │ │ ├── Touch.cpp │ │ │ ├── UnifiedWorkspaceSwipeGesture.cpp │ │ │ ├── UnifiedWorkspaceSwipeGesture.hpp │ │ │ └── trackpad/ │ │ │ ├── GestureTypes.hpp │ │ │ ├── TrackpadGestures.cpp │ │ │ ├── TrackpadGestures.hpp │ │ │ └── gestures/ │ │ │ ├── CloseGesture.cpp │ │ │ ├── CloseGesture.hpp │ │ │ ├── CursorZoomGesture.cpp │ │ │ ├── CursorZoomGesture.hpp │ │ │ ├── DispatcherGesture.cpp │ │ │ ├── DispatcherGesture.hpp │ │ │ ├── FloatGesture.cpp │ │ │ ├── FloatGesture.hpp │ │ │ ├── FullscreenGesture.cpp │ │ │ ├── FullscreenGesture.hpp │ │ │ ├── ITrackpadGesture.cpp │ │ │ ├── ITrackpadGesture.hpp │ │ │ ├── MoveGesture.cpp │ │ │ ├── MoveGesture.hpp │ │ │ ├── ResizeGesture.cpp │ │ │ ├── ResizeGesture.hpp │ │ │ ├── SpecialWorkspaceGesture.cpp │ │ │ ├── SpecialWorkspaceGesture.hpp │ │ │ ├── WorkspaceSwipeGesture.cpp │ │ │ └── WorkspaceSwipeGesture.hpp │ │ ├── permissions/ │ │ │ ├── DynamicPermissionManager.cpp │ │ │ └── DynamicPermissionManager.hpp │ │ └── screenshare/ │ │ ├── CursorshareSession.cpp │ │ ├── ScreenshareFrame.cpp │ │ ├── ScreenshareManager.cpp │ │ ├── ScreenshareManager.hpp │ │ └── ScreenshareSession.cpp │ ├── pch/ │ │ └── pch.hpp │ ├── plugins/ │ │ ├── HookSystem.cpp │ │ ├── HookSystem.hpp │ │ ├── PluginAPI.cpp │ │ ├── PluginAPI.hpp │ │ ├── PluginSystem.cpp │ │ └── PluginSystem.hpp │ ├── protocols/ │ │ ├── AlphaModifier.cpp │ │ ├── AlphaModifier.hpp │ │ ├── CTMControl.cpp │ │ ├── CTMControl.hpp │ │ ├── ColorManagement.cpp │ │ ├── ColorManagement.hpp │ │ ├── CommitTiming.cpp │ │ ├── CommitTiming.hpp │ │ ├── ContentType.cpp │ │ ├── ContentType.hpp │ │ ├── CursorShape.cpp │ │ ├── CursorShape.hpp │ │ ├── DRMLease.cpp │ │ ├── DRMLease.hpp │ │ ├── DRMSyncobj.cpp │ │ ├── DRMSyncobj.hpp │ │ ├── DataDeviceWlr.cpp │ │ ├── DataDeviceWlr.hpp │ │ ├── ExtDataDevice.cpp │ │ ├── ExtDataDevice.hpp │ │ ├── ExtWorkspace.cpp │ │ ├── ExtWorkspace.hpp │ │ ├── Fifo.cpp │ │ ├── Fifo.hpp │ │ ├── FocusGrab.cpp │ │ ├── FocusGrab.hpp │ │ ├── ForeignToplevel.cpp │ │ ├── ForeignToplevel.hpp │ │ ├── ForeignToplevelWlr.cpp │ │ ├── ForeignToplevelWlr.hpp │ │ ├── FractionalScale.cpp │ │ ├── FractionalScale.hpp │ │ ├── GammaControl.cpp │ │ ├── GammaControl.hpp │ │ ├── GlobalShortcuts.cpp │ │ ├── GlobalShortcuts.hpp │ │ ├── HyprlandSurface.cpp │ │ ├── HyprlandSurface.hpp │ │ ├── IdleInhibit.cpp │ │ ├── IdleInhibit.hpp │ │ ├── IdleNotify.cpp │ │ ├── IdleNotify.hpp │ │ ├── ImageCaptureSource.cpp │ │ ├── ImageCaptureSource.hpp │ │ ├── ImageCopyCapture.cpp │ │ ├── ImageCopyCapture.hpp │ │ ├── InputMethodV2.cpp │ │ ├── InputMethodV2.hpp │ │ ├── LayerShell.cpp │ │ ├── LayerShell.hpp │ │ ├── LinuxDMABUF.cpp │ │ ├── LinuxDMABUF.hpp │ │ ├── LockNotify.cpp │ │ ├── LockNotify.hpp │ │ ├── MesaDRM.cpp │ │ ├── MesaDRM.hpp │ │ ├── OutputManagement.cpp │ │ ├── OutputManagement.hpp │ │ ├── OutputPower.cpp │ │ ├── OutputPower.hpp │ │ ├── PointerConstraints.cpp │ │ ├── PointerConstraints.hpp │ │ ├── PointerGestures.cpp │ │ ├── PointerGestures.hpp │ │ ├── PointerWarp.cpp │ │ ├── PointerWarp.hpp │ │ ├── PresentationTime.cpp │ │ ├── PresentationTime.hpp │ │ ├── PrimarySelection.cpp │ │ ├── PrimarySelection.hpp │ │ ├── RelativePointer.cpp │ │ ├── RelativePointer.hpp │ │ ├── Screencopy.cpp │ │ ├── Screencopy.hpp │ │ ├── SecurityContext.cpp │ │ ├── SecurityContext.hpp │ │ ├── ServerDecorationKDE.cpp │ │ ├── ServerDecorationKDE.hpp │ │ ├── SessionLock.cpp │ │ ├── SessionLock.hpp │ │ ├── ShortcutsInhibit.cpp │ │ ├── ShortcutsInhibit.hpp │ │ ├── SinglePixel.cpp │ │ ├── SinglePixel.hpp │ │ ├── Tablet.cpp │ │ ├── Tablet.hpp │ │ ├── TearingControl.cpp │ │ ├── TearingControl.hpp │ │ ├── TextInputV1.cpp │ │ ├── TextInputV1.hpp │ │ ├── TextInputV3.cpp │ │ ├── TextInputV3.hpp │ │ ├── ToplevelExport.cpp │ │ ├── ToplevelExport.hpp │ │ ├── ToplevelMapping.cpp │ │ ├── ToplevelMapping.hpp │ │ ├── Viewporter.cpp │ │ ├── Viewporter.hpp │ │ ├── VirtualKeyboard.cpp │ │ ├── VirtualKeyboard.hpp │ │ ├── VirtualPointer.cpp │ │ ├── VirtualPointer.hpp │ │ ├── WaylandProtocol.cpp │ │ ├── WaylandProtocol.hpp │ │ ├── XDGActivation.cpp │ │ ├── XDGActivation.hpp │ │ ├── XDGBell.cpp │ │ ├── XDGBell.hpp │ │ ├── XDGDecoration.cpp │ │ ├── XDGDecoration.hpp │ │ ├── XDGDialog.cpp │ │ ├── XDGDialog.hpp │ │ ├── XDGOutput.cpp │ │ ├── XDGOutput.hpp │ │ ├── XDGShell.cpp │ │ ├── XDGShell.hpp │ │ ├── XDGTag.cpp │ │ ├── XDGTag.hpp │ │ ├── XWaylandShell.cpp │ │ ├── XWaylandShell.hpp │ │ ├── core/ │ │ │ ├── Compositor.cpp │ │ │ ├── Compositor.hpp │ │ │ ├── DataDevice.cpp │ │ │ ├── DataDevice.hpp │ │ │ ├── Output.cpp │ │ │ ├── Output.hpp │ │ │ ├── Seat.cpp │ │ │ ├── Seat.hpp │ │ │ ├── Shm.cpp │ │ │ ├── Shm.hpp │ │ │ ├── Subcompositor.cpp │ │ │ └── Subcompositor.hpp │ │ └── types/ │ │ ├── Buffer.cpp │ │ ├── Buffer.hpp │ │ ├── ContentType.cpp │ │ ├── ContentType.hpp │ │ ├── DMABuffer.cpp │ │ ├── DMABuffer.hpp │ │ ├── DataDevice.cpp │ │ ├── DataDevice.hpp │ │ ├── SurfaceRole.hpp │ │ ├── SurfaceState.cpp │ │ ├── SurfaceState.hpp │ │ ├── SurfaceStateQueue.cpp │ │ ├── SurfaceStateQueue.hpp │ │ ├── WLBuffer.cpp │ │ └── WLBuffer.hpp │ ├── render/ │ │ ├── AsyncResourceGatherer.hpp │ │ ├── Framebuffer.cpp │ │ ├── Framebuffer.hpp │ │ ├── GLRenderer.cpp │ │ ├── GLRenderer.hpp │ │ ├── OpenGL.cpp │ │ ├── OpenGL.hpp │ │ ├── Renderbuffer.cpp │ │ ├── Renderbuffer.hpp │ │ ├── Renderer.cpp │ │ ├── Renderer.hpp │ │ ├── Shader.cpp │ │ ├── Shader.hpp │ │ ├── ShaderLoader.cpp │ │ ├── ShaderLoader.hpp │ │ ├── Texture.cpp │ │ ├── Texture.hpp │ │ ├── Transformer.cpp │ │ ├── Transformer.hpp │ │ ├── decorations/ │ │ │ ├── CHyprBorderDecoration.cpp │ │ │ ├── CHyprBorderDecoration.hpp │ │ │ ├── CHyprDropShadowDecoration.cpp │ │ │ ├── CHyprDropShadowDecoration.hpp │ │ │ ├── CHyprGroupBarDecoration.cpp │ │ │ ├── CHyprGroupBarDecoration.hpp │ │ │ ├── DecorationPositioner.cpp │ │ │ ├── DecorationPositioner.hpp │ │ │ ├── IHyprWindowDecoration.cpp │ │ │ └── IHyprWindowDecoration.hpp │ │ ├── gl/ │ │ │ ├── GLFramebuffer.cpp │ │ │ ├── GLFramebuffer.hpp │ │ │ ├── GLRenderbuffer.cpp │ │ │ ├── GLRenderbuffer.hpp │ │ │ ├── GLTexture.cpp │ │ │ └── GLTexture.hpp │ │ ├── pass/ │ │ │ ├── BorderPassElement.cpp │ │ │ ├── BorderPassElement.hpp │ │ │ ├── ClearPassElement.cpp │ │ │ ├── ClearPassElement.hpp │ │ │ ├── FramebufferElement.cpp │ │ │ ├── FramebufferElement.hpp │ │ │ ├── Pass.cpp │ │ │ ├── Pass.hpp │ │ │ ├── PassElement.cpp │ │ │ ├── PassElement.hpp │ │ │ ├── PreBlurElement.cpp │ │ │ ├── PreBlurElement.hpp │ │ │ ├── RectPassElement.cpp │ │ │ ├── RectPassElement.hpp │ │ │ ├── RendererHintsPassElement.cpp │ │ │ ├── RendererHintsPassElement.hpp │ │ │ ├── ShadowPassElement.cpp │ │ │ ├── ShadowPassElement.hpp │ │ │ ├── SurfacePassElement.cpp │ │ │ ├── SurfacePassElement.hpp │ │ │ ├── TexPassElement.cpp │ │ │ ├── TexPassElement.hpp │ │ │ ├── TextureMatteElement.cpp │ │ │ └── TextureMatteElement.hpp │ │ └── shaders/ │ │ └── glsl/ │ │ ├── CM.glsl │ │ ├── blur1.frag │ │ ├── blur1.glsl │ │ ├── blur2.frag │ │ ├── blur2.glsl │ │ ├── blurFinish.glsl │ │ ├── blurfinish.frag │ │ ├── blurprepare.frag │ │ ├── blurprepare.glsl │ │ ├── border.frag │ │ ├── border.glsl │ │ ├── cm_helpers.glsl │ │ ├── constants.h │ │ ├── defines.h │ │ ├── ext.frag │ │ ├── gain.glsl │ │ ├── glitch.frag │ │ ├── passthru.frag │ │ ├── quad.frag │ │ ├── rgbamatte.frag │ │ ├── rounding.glsl │ │ ├── shadow.frag │ │ ├── shadow.glsl │ │ ├── surface.frag │ │ ├── tex300.vert │ │ ├── tex320.vert │ │ └── tonemap.glsl │ ├── version.h.in │ └── xwayland/ │ ├── Dnd.cpp │ ├── Dnd.hpp │ ├── Server.cpp │ ├── Server.hpp │ ├── XDataSource.cpp │ ├── XDataSource.hpp │ ├── XSurface.cpp │ ├── XSurface.hpp │ ├── XWM.cpp │ ├── XWM.hpp │ ├── XWayland.cpp │ └── XWayland.hpp ├── start/ │ ├── CMakeLists.txt │ └── src/ │ ├── core/ │ │ ├── Instance.cpp │ │ ├── Instance.hpp │ │ └── State.hpp │ ├── helpers/ │ │ ├── Logger.hpp │ │ ├── Memory.hpp │ │ ├── Nix.cpp │ │ └── Nix.hpp │ └── main.cpp ├── systemd/ │ └── hyprland-uwsm.desktop └── tests/ └── desktop/ └── Reserved.cpp