summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorAylur <[email protected]>2024-11-08 21:23:07 +0000
committerAylur <[email protected]>2024-11-08 21:23:07 +0000
commit302fcae7ae0b58767518e6003d0a80966d7ca4bb (patch)
tree0c42ace859db1fbe4bca928389ac17406fbe74b4 /examples
parent48b6b0742fb21a298985dc6c86605099e6d5abd1 (diff)
example(applauncher): hide on app launch
Diffstat (limited to 'examples')
-rw-r--r--examples/js/applauncher/widget/Applauncher.tsx14
1 files changed, 12 insertions, 2 deletions
diff --git a/examples/js/applauncher/widget/Applauncher.tsx b/examples/js/applauncher/widget/Applauncher.tsx
index f52780b..c7bac68 100644
--- a/examples/js/applauncher/widget/Applauncher.tsx
+++ b/examples/js/applauncher/widget/Applauncher.tsx
@@ -4,8 +4,14 @@ import { Variable } from "astal"
const MAX_ITEMS = 8
+function hide() {
+ App.get_window("launcher")!.hide()
+}
+
function AppButton({ app }: { app: Apps.Application }) {
- return <button className="AppButton" onClicked={() => app.launch()}>
+ return <button
+ className="AppButton"
+ onClicked={() => { hide(); app.launch() }}>
<box>
<icon icon={app.iconName} />
<box valign={Gtk.Align.CENTER} vertical>
@@ -32,7 +38,10 @@ export default function Applauncher() {
const text = Variable("")
const list = text(text => apps.fuzzy_query(text).slice(0, MAX_ITEMS))
- const hide = () => App.get_window("launcher")!.hide()
+ const onEnter = () => {
+ apps.fuzzy_query(text.get())?.[0].launch()
+ hide()
+ }
return <window
name="launcher"
@@ -54,6 +63,7 @@ export default function Applauncher() {
placeholderText="Search"
text={text()}
onChanged={self => text.set(self.text)}
+ onActivate={onEnter}
/>
<box spacing={6} vertical>
{list.as(list => list.map(app => (