Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f2bda0e496 | ||
|
|
fd8b9ba128 | ||
|
|
94aba90f3d | ||
|
|
fa9d9c3425 | ||
|
|
4711c36c56 |
1
Makefile
1
Makefile
@@ -16,6 +16,7 @@ install:
|
||||
cp bin/nwg-drawer /usr/bin
|
||||
|
||||
uninstall:
|
||||
rm -r /usr/share/nwg-drawer
|
||||
rm /usr/bin/nwg-drawer
|
||||
|
||||
run:
|
||||
|
||||
@@ -18,6 +18,8 @@ and `nwggrid`.
|
||||
|
||||
[more screenshots](https://scrot.cloud/album/nwg-drawer.Bogd) | [see on YouTube](https://youtu.be/iIgxJQhCQf0)
|
||||
|
||||
[](https://repology.org/project/nwg-drawer/versions)
|
||||
|
||||
## Installation
|
||||
|
||||
### Dependencies
|
||||
|
||||
BIN
bin/nwg-drawer
BIN
bin/nwg-drawer
Binary file not shown.
15
main.go
15
main.go
@@ -19,7 +19,7 @@ import (
|
||||
"github.com/gotk3/gotk3/gtk"
|
||||
)
|
||||
|
||||
const version = "0.1.0"
|
||||
const version = "0.1.1"
|
||||
|
||||
var (
|
||||
appDirs []string
|
||||
@@ -204,6 +204,7 @@ func main() {
|
||||
log.Fatal("Unable to create window:", err)
|
||||
}
|
||||
|
||||
if wayland() {
|
||||
layershell.InitForWindow(win)
|
||||
|
||||
var output2mon map[string]*gdk.Monitor
|
||||
@@ -232,6 +233,7 @@ func main() {
|
||||
}
|
||||
|
||||
layershell.SetKeyboardMode(win, layershell.LAYER_SHELL_KEYBOARD_MODE_EXCLUSIVE)
|
||||
}
|
||||
|
||||
win.Connect("destroy", func() {
|
||||
gtk.MainQuit()
|
||||
@@ -274,6 +276,17 @@ func main() {
|
||||
cancelClose()
|
||||
})
|
||||
|
||||
/*
|
||||
In case someone REALLY needed to use X11 - for some stupid Zoom meeting or something, this allows
|
||||
the drawer to behave properly on Openbox, and possibly somewhere else. For sure not on i3.
|
||||
This feature is not really supported and will stay undocumented.
|
||||
*/
|
||||
if !wayland() {
|
||||
println("Not Wayland, oh really?")
|
||||
win.SetDecorated(false)
|
||||
win.Maximize()
|
||||
}
|
||||
|
||||
// Set up UI
|
||||
outerVBox, _ := gtk.BoxNew(gtk.ORIENTATION_VERTICAL, 0)
|
||||
win.Add(outerVBox)
|
||||
|
||||
4
tools.go
4
tools.go
@@ -20,6 +20,10 @@ import (
|
||||
"github.com/joshuarubin/go-sway"
|
||||
)
|
||||
|
||||
func wayland() bool {
|
||||
return os.Getenv("WAYLAND_DISPLAY") != "" || os.Getenv("XDG_SESSION_TYPE") == "wayland"
|
||||
}
|
||||
|
||||
/*
|
||||
Window leave-notify-event event quits the program with glib Timeout 500 ms.
|
||||
We might have left the window by accident, so let's clear the timeout if window re-entered.
|
||||
|
||||
Reference in New Issue
Block a user