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
|
cp bin/nwg-drawer /usr/bin
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
|
rm -r /usr/share/nwg-drawer
|
||||||
rm /usr/bin/nwg-drawer
|
rm /usr/bin/nwg-drawer
|
||||||
|
|
||||||
run:
|
run:
|
||||||
|
|||||||
@@ -18,6 +18,8 @@ and `nwggrid`.
|
|||||||
|
|
||||||
[more screenshots](https://scrot.cloud/album/nwg-drawer.Bogd) | [see on YouTube](https://youtu.be/iIgxJQhCQf0)
|
[more screenshots](https://scrot.cloud/album/nwg-drawer.Bogd) | [see on YouTube](https://youtu.be/iIgxJQhCQf0)
|
||||||
|
|
||||||
|
[](https://repology.org/project/nwg-drawer/versions)
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
### Dependencies
|
### 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"
|
"github.com/gotk3/gotk3/gtk"
|
||||||
)
|
)
|
||||||
|
|
||||||
const version = "0.1.0"
|
const version = "0.1.1"
|
||||||
|
|
||||||
var (
|
var (
|
||||||
appDirs []string
|
appDirs []string
|
||||||
@@ -204,6 +204,7 @@ func main() {
|
|||||||
log.Fatal("Unable to create window:", err)
|
log.Fatal("Unable to create window:", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if wayland() {
|
||||||
layershell.InitForWindow(win)
|
layershell.InitForWindow(win)
|
||||||
|
|
||||||
var output2mon map[string]*gdk.Monitor
|
var output2mon map[string]*gdk.Monitor
|
||||||
@@ -232,6 +233,7 @@ func main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
layershell.SetKeyboardMode(win, layershell.LAYER_SHELL_KEYBOARD_MODE_EXCLUSIVE)
|
layershell.SetKeyboardMode(win, layershell.LAYER_SHELL_KEYBOARD_MODE_EXCLUSIVE)
|
||||||
|
}
|
||||||
|
|
||||||
win.Connect("destroy", func() {
|
win.Connect("destroy", func() {
|
||||||
gtk.MainQuit()
|
gtk.MainQuit()
|
||||||
@@ -274,6 +276,17 @@ func main() {
|
|||||||
cancelClose()
|
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
|
// Set up UI
|
||||||
outerVBox, _ := gtk.BoxNew(gtk.ORIENTATION_VERTICAL, 0)
|
outerVBox, _ := gtk.BoxNew(gtk.ORIENTATION_VERTICAL, 0)
|
||||||
win.Add(outerVBox)
|
win.Add(outerVBox)
|
||||||
|
|||||||
4
tools.go
4
tools.go
@@ -20,6 +20,10 @@ import (
|
|||||||
"github.com/joshuarubin/go-sway"
|
"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.
|
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.
|
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