33 lines
		
	
	
		
			858 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			858 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import { App, Astal, Gtk, Gdk } from "astal/gtk4"
 | |
| import { Variable } from "astal"
 | |
| 
 | |
| function hide() {
 | |
|     App.get_window("launcher")!.hide()
 | |
| }
 | |
| 
 | |
| export default function Launcher(monitor: Gdk.Monitor) {
 | |
|     const { CENTER } = Gtk.Align
 | |
|     const width = Variable(1000)
 | |
| 
 | |
|     const text = Variable("")
 | |
| 
 | |
|     return <window
 | |
|         name="launcher"
 | |
|         anchor={Astal.WindowAnchor.TOP | Astal.WindowAnchor.BOTTOM}
 | |
|         exclusivity={Astal.Exclusivity.IGNORE}
 | |
|         keymode={Astal.Keymode.ON_DEMAND}
 | |
|         application={App}
 | |
|         onShow={(self) => {
 | |
|             text.set("")
 | |
|             width.set(self.get_current_monitor().get_width_mm())
 | |
|         }}
 | |
|         onKeyPressed={(self, keyval, keycode) => {
 | |
|             print( 'key pressed: ' + keyval + ' which has code ' + keycode );
 | |
|         }}>
 | |
|         <box>
 | |
|             
 | |
|         </box>
 | |
| 
 | |
|         </window>
 | |
| }
 |