Add screenshots

This commit is contained in:
2025-05-27 12:59:23 -07:00
parent ffc8737756
commit 1820340fcd
21 changed files with 114 additions and 50 deletions

46
widget/launcher.tsx Normal file
View File

@@ -0,0 +1,46 @@
import { Astal, Gtk, Widget } from "astal/gtk3"
import { EventBox, Scrollable } from "astal/gtk3/widget"
import Apps from "gi://AstalApps"
const { TOP, RIGHT, BOTTOM } = Astal.WindowAnchor
const apps = new Apps.Apps({
entryMultiplier: 1,
categories_multiplier: 0,
description_multiplier: 1,
executable_multiplier: 1,
name_multiplier: 2.5,
keywordsMultiplier: 1,
})
let launcherWindow
function entry(app: Apps.Application) {
return <overlay
valign={Gtk.Align.START}>
<label
css={`background: green; border: 4px solid yellow; min-height: 100px;`}>
{app.name}</label>
</overlay>
}
export default function launcher() {
if (launcherWindow) {
launcherWindow.destroy()
launcherWindow = null
return false
}
launcherWindow = <window
anchor={ TOP | RIGHT | BOTTOM }
className="launcher"
namespace="launcher"
widthRequest={800}
css="background: none;"
layer={Astal.Layer.OVERLAY}>
<overlay overlay=
<eventbox onScroll={() => console.log("scroll")}><box vertical>
{apps.list.map(app => entry(app))}
</box></eventbox>>
<box css="background: linear-gradient(90deg, rgba(0, 0, 0, 0), #000);"/>
</overlay>
</window>
return true
}