aboutsummaryrefslogtreecommitdiffstats
path: root/config/quickshell/qs-hyprview-trixie/layouts/SatelliteLayout.qml
diff options
context:
space:
mode:
authorDon Williams <don.e.williams@gmail.com>2026-07-13 16:11:51 -0400
committerPinapelz <yukais@pinapelz.com>2026-08-29 21:40:34 -0700
commitdcc2b56bd34846c5e8562bdb33ea63f3734d5ec0 (patch)
treebb4dcab06f4a4f2f690fc87e9fc82d335cd21497 /config/quickshell/qs-hyprview-trixie/layouts/SatelliteLayout.qml
parent292b6daf5c56ff60a6263ff4945e74e5ca4372e7 (diff)
Fixed qs-hyprview to work with trixie+
Signed-off-by: Don Williams <don.e.williams@gmail.com> On branch development Your branch is up to date with 'origin/development'. Changes to be committed: renamed: qs-hyprview-trixie/LICENSE -> qs-hyprview-unified/LICENSE renamed: qs-hyprview-trixie/README.md -> qs-hyprview-unified/README.md renamed: qs-hyprview-trixie/common/Appearance.qml -> qs-hyprview-unified/common/Appearance.qml renamed: qs-hyprview-trixie/layouts/BandsLayout.qml -> qs-hyprview-unified/layouts/BandsLayout.qml renamed: qs-hyprview-trixie/layouts/ColumnarLayout.qml -> qs-hyprview-unified/layouts/ColumnarLayout.qml renamed: qs-hyprview-trixie/layouts/HeroLayout.qml -> qs-hyprview-unified/layouts/HeroLayout.qml renamed: qs-hyprview-trixie/layouts/JustifiedLayout.qml -> qs-hyprview-unified/layouts/JustifiedLayout.qml renamed: qs-hyprview-trixie/layouts/LayoutsManager.qml -> qs-hyprview-unified/layouts/LayoutsManager.qml renamed: qs-hyprview-trixie/layouts/MasonryLayout.qml -> qs-hyprview-unified/layouts/MasonryLayout.qml renamed: qs-hyprview-trixie/layouts/SatelliteLayout.qml -> qs-hyprview-unified/layouts/SatelliteLayout.qml renamed: qs-hyprview-trixie/layouts/SmartGridLayout.qml -> qs-hyprview-unified/layouts/SmartGridLayout.qml renamed: qs-hyprview-trixie/layouts/SpiralLayout.qml -> qs-hyprview-unified/layouts/SpiralLayout.qml renamed: qs-hyprview-trixie/layouts/StarggeredLayout.qml -> qs-hyprview-unified/layouts/StarggeredLayout.qml renamed: qs-hyprview-trixie/layouts/VortexLayout.qml -> qs-hyprview-unified/layouts/VortexLayout.qml renamed: qs-hyprview-trixie/layouts/qmldir -> qs-hyprview-unified/layouts/qmldir renamed: qs-hyprview-trixie/modules/Hyprview.qml -> qs-hyprview-unified/modules/Hyprview.qml renamed: qs-hyprview-trixie/modules/SearchBox.qml -> qs-hyprview-unified/modules/SearchBox.qml renamed: qs-hyprview-trixie/modules/WindowThumbnail.qml -> qs-hyprview-unified/modules/WindowThumbnail.qml renamed: qs-hyprview-trixie/modules/qmldir -> qs-hyprview-unified/modules/qmldir renamed: qs-hyprview-trixie/qs-hyprview-template.qml -> qs-hyprview-unified/qs-hyprview-template.qml renamed: qs-hyprview-trixie/screenshots/bands.jpeg -> qs-hyprview-unified/screenshots/bands.jpeg renamed: qs-hyprview-trixie/screenshots/hero.jpeg -> qs-hyprview-unified/screenshots/hero.jpeg renamed: qs-hyprview-trixie/screenshots/masonry.jpeg -> qs-hyprview-unified/screenshots/masonry.jpeg renamed: qs-hyprview-trixie/screenshots/satellite.jpeg -> qs-hyprview-unified/screenshots/satellite.jpeg renamed: qs-hyprview-trixie/screenshots/smartgrid.jpeg -> qs-hyprview-unified/screenshots/smartgrid.jpeg renamed: qs-hyprview-trixie/screenshots/spiral.jpeg -> qs-hyprview-unified/screenshots/spiral.jpeg renamed: qs-hyprview-trixie/screenshots/staggered.jpeg -> qs-hyprview-unified/screenshots/staggered.jpeg renamed: qs-hyprview-trixie/screenshots/vortex.jpeg -> qs-hyprview-unified/screenshots/vortex.jpeg renamed: qs-hyprview-trixie/shell.qml -> qs-hyprview-unified/shell.qml
Diffstat (limited to 'config/quickshell/qs-hyprview-trixie/layouts/SatelliteLayout.qml')
-rw-r--r--config/quickshell/qs-hyprview-trixie/layouts/SatelliteLayout.qml98
1 files changed, 0 insertions, 98 deletions
diff --git a/config/quickshell/qs-hyprview-trixie/layouts/SatelliteLayout.qml b/config/quickshell/qs-hyprview-trixie/layouts/SatelliteLayout.qml
deleted file mode 100644
index 2efb703b..00000000
--- a/config/quickshell/qs-hyprview-trixie/layouts/SatelliteLayout.qml
+++ /dev/null
@@ -1,98 +0,0 @@
-pragma Singleton
-import Quickshell
-import Quickshell.Hyprland
-
-Singleton {
- id: root
-
- function doLayout(windowList, outerWidth, outerHeight) {
- var N = windowList.length
- if (N === 0) return []
-
- // Move active window to the start of the list (Center Item)
- var activeAddr = Hyprland.activeToplevel?.lastIpcObject?.address
- if (activeAddr) {
- var activeIdx = windowList.findIndex(it => it.lastIpcObject.address === activeAddr)
- if (activeIdx !== -1) {
- windowList = [windowList[activeIdx], ...windowList.filter(it => it !== windowList[activeIdx])]
- }
- }
-
- // Safe Area definition (90%)
- var useW = outerWidth * 0.90
- var useH = outerHeight * 0.90
- var offX = (outerWidth - useW) / 2
- var offY = (outerHeight - useH) / 2
-
- var result = []
-
- // Center item (hero)
- var centerItem = windowList[0]
-
- // The center item takes up roughly 35% of the screen dimensions
- var centerW = useW * 0.35
- var centerH = useH * 0.35
-
- // Aspect Fit for the center item
- var w0 = (centerItem.width > 0) ? centerItem.width : 100
- var h0 = (centerItem.height > 0) ? centerItem.height : 100
- var sc0 = Math.min(centerW / w0, centerH / h0)
- var finalCenterW = w0 * sc0
- var finalCenterH = h0 * sc0
-
- result.push({
- win: centerItem.win,
- x: offX + (useW - finalCenterW) / 2,
- y: offY + (useH - finalCenterH) / 2,
- width: finalCenterW,
- height: finalCenterH,
- isSatellite: false
- })
-
- // Orbit items (satellites)
- var satellites = windowList.slice(1)
- var numSat = satellites.length
-
- if (numSat > 0) {
- // Orbit Radius (distance from center)
- var radiusX = useW * 0.4
- var radiusY = useH * 0.4
-
- // Max size for satellites.
- // As the number of satellites increases, we shrink them to avoid overlap.
- var maxSatW = (useW * 0.25) / Math.max(1, (numSat / 6))
- var maxSatH = (useH * 0.25) / Math.max(1, (numSat / 6))
-
- // Start angle (-90 degrees = Top)
- var startAngle = -Math.PI / 2
- var stepAngle = (2 * Math.PI) / numSat
-
- for (var i = 0; i < numSat; i++) {
- var item = satellites[i]
- var angle = startAngle + (i * stepAngle)
-
- // Calculate satellite center coordinates
- var cx = (useW / 2) + radiusX * Math.cos(angle)
- var cy = (useH / 2) + radiusY * Math.sin(angle)
-
- // Aspect Fit satellite
- var ws = (item.width > 0) ? item.width : 100
- var hs = (item.height > 0) ? item.height : 100
- var scS = Math.min(maxSatW / ws, maxSatH / hs)
- var finalSatW = ws * scS
- var finalSatH = hs * scS
-
- result.push({
- win: item.win,
- x: offX + cx - (finalSatW / 2),
- y: offY + cy - (finalSatH / 2),
- width: finalSatW,
- height: finalSatH,
- isSatellite: true
- })
- }
- }
-
- return result
- }
-}
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage