5 Commits

Author SHA1 Message Date
piotr
0810250b3a default temt -> foot; consume Esc key event 2022-01-09 14:30:59 +01:00
piotr
6e76f49729 fix #38 @nightly-brew 2022-01-09 12:56:51 +01:00
Piotr Miller
94c94b8b1e Merge pull request #35 from nwg-piotr/term
support for the foot terminal
2021-11-29 00:47:33 +01:00
piotr
3d6f3e6e3c support foot terminal 2021-11-21 21:45:10 +01:00
piotr
2e305e6e52 bump to 0.2.1 2021-10-01 00:40:27 +02:00
4 changed files with 19 additions and 7 deletions

Binary file not shown.

12
main.go
View File

@@ -21,7 +21,7 @@ import (
"github.com/gotk3/gotk3/gtk" "github.com/gotk3/gotk3/gtk"
) )
const version = "0.2.0" const version = "0.2.3"
var ( var (
appDirs []string appDirs []string
@@ -126,7 +126,7 @@ var columnsNumber = flag.Uint("c", 6, "number of Columns")
var itemSpacing = flag.Uint("spacing", 20, "icon spacing") var itemSpacing = flag.Uint("spacing", 20, "icon spacing")
var lang = flag.String("lang", "", "force lang, e.g. \"en\", \"pl\"") var lang = flag.String("lang", "", "force lang, e.g. \"en\", \"pl\"")
var fileManager = flag.String("fm", "thunar", "File Manager") var fileManager = flag.String("fm", "thunar", "File Manager")
var term = flag.String("term", defaultStringIfBlank(os.Getenv("TERM"), "alacritty"), "Terminal emulator") var term = flag.String("term", defaultStringIfBlank(os.Getenv("TERM"), "foot"), "Terminal emulator")
var nameLimit = flag.Int("fslen", 80, "File Search name LENgth Limit") var nameLimit = flag.Int("fslen", 80, "File Search name LENgth Limit")
var noCats = flag.Bool("nocats", false, "Disable filtering by category") var noCats = flag.Bool("nocats", false, "Disable filtering by category")
var noFS = flag.Bool("nofs", false, "Disable file search") var noFS = flag.Bool("nofs", false, "Disable file search")
@@ -349,7 +349,7 @@ func main() {
gtk.MainQuit() gtk.MainQuit()
}) })
win.Connect("key-press-event", func(window *gtk.Window, event *gdk.Event) bool { win.Connect("key-release-event", func(window *gtk.Window, event *gdk.Event) bool {
key := &gdk.EventKey{Event: event} key := &gdk.EventKey{Event: event}
switch key.KeyVal() { switch key.KeyVal() {
case gdk.KEY_Escape: case gdk.KEY_Escape:
@@ -364,16 +364,16 @@ func main() {
restoreStateAndHide() restoreStateAndHide()
} }
} }
return false return true
case gdk.KEY_downarrow, gdk.KEY_Up, gdk.KEY_Down, gdk.KEY_Left, gdk.KEY_Right, gdk.KEY_Tab, case gdk.KEY_downarrow, gdk.KEY_Up, gdk.KEY_Down, gdk.KEY_Left, gdk.KEY_Right, gdk.KEY_Tab,
gdk.KEY_Return, gdk.KEY_Page_Up, gdk.KEY_Page_Down, gdk.KEY_Home, gdk.KEY_End: gdk.KEY_Return, gdk.KEY_Page_Up, gdk.KEY_Page_Down, gdk.KEY_Home, gdk.KEY_End:
return false return true
default: default:
if !searchEntry.IsFocus() { if !searchEntry.IsFocus() {
searchEntry.GrabFocusWithoutSelecting() searchEntry.GrabFocusWithoutSelecting()
} }
return false return true
} }
}) })

View File

@@ -559,7 +559,13 @@ func launch(command string, terminal bool) {
cmd := exec.Command(elements[cmdIdx], elements[1+cmdIdx:]...) cmd := exec.Command(elements[cmdIdx], elements[1+cmdIdx:]...)
if terminal { if terminal {
args := []string{"-e", elements[cmdIdx]} var args []string
if *term != "foot" {
args = []string{"-e", elements[cmdIdx]}
} else {
args = []string{elements[cmdIdx]}
}
cmd = exec.Command(*term, args...) cmd = exec.Command(*term, args...)
} }

View File

@@ -77,6 +77,9 @@ func setUpPinnedFlowBox() *gtk.FlowBox {
btn.Connect("enter-notify-event", func() { btn.Connect("enter-notify-event", func() {
statusLabel.SetText(entry.CommentLoc) statusLabel.SetText(entry.CommentLoc)
}) })
btn.Connect("focus-in-event", func() {
statusLabel.SetText(entry.CommentLoc)
})
flowBox.Add(btn) flowBox.Add(btn)
} }
pinnedFlowBoxWrapper.PackStart(flowBox, true, false, 0) pinnedFlowBoxWrapper.PackStart(flowBox, true, false, 0)
@@ -272,6 +275,9 @@ func flowBoxButton(entry desktopEntry) *gtk.Button {
button.Connect("enter-notify-event", func() { button.Connect("enter-notify-event", func() {
statusLabel.SetText(desc) statusLabel.SetText(desc)
}) })
button.Connect("focus-in-event", func() {
statusLabel.SetText(desc)
})
return button return button
} }