mirror of
https://github.com/Llewellynvdm/fzf.git
synced 2025-01-25 16:18:27 +00:00
Allow dragging of scrollbar
This commit is contained in:
parent
435d8fa0a2
commit
7c660aa86e
@ -2582,6 +2582,7 @@ func (t *Terminal) Loop() {
|
|||||||
t.eventChan <- t.tui.GetChar()
|
t.eventChan <- t.tui.GetChar()
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
dragging := false
|
||||||
for looping {
|
for looping {
|
||||||
var newCommand *string
|
var newCommand *string
|
||||||
var reloadSync bool
|
var reloadSync bool
|
||||||
@ -3038,8 +3039,6 @@ func (t *Terminal) Loop() {
|
|||||||
}
|
}
|
||||||
} else if t.window.Enclose(my, mx) {
|
} else if t.window.Enclose(my, mx) {
|
||||||
mx -= t.window.Left()
|
mx -= t.window.Left()
|
||||||
bar := mx == t.window.Width()-1
|
|
||||||
mx = util.Constrain(mx-t.promptLen, 0, len(t.input))
|
|
||||||
my -= t.window.Top()
|
my -= t.window.Top()
|
||||||
min := 2 + len(t.header)
|
min := 2 + len(t.header)
|
||||||
if t.noInfoLine() {
|
if t.noInfoLine() {
|
||||||
@ -3056,7 +3055,15 @@ func (t *Terminal) Loop() {
|
|||||||
my = h - my - 1
|
my = h - my - 1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if bar && my >= min {
|
dragging = me.Down && (dragging || my >= min && mx == t.window.Width()-1)
|
||||||
|
if me.Double {
|
||||||
|
// Double-click
|
||||||
|
if my >= min {
|
||||||
|
if t.vset(t.offset+my-min) && t.cy < t.merger.Length() {
|
||||||
|
return doActions(actionsFor(tui.DoubleClick))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if dragging && my >= min {
|
||||||
barLength, barStart := t.getScrollbar()
|
barLength, barStart := t.getScrollbar()
|
||||||
if barLength > 0 {
|
if barLength > 0 {
|
||||||
maxItems := t.maxItems()
|
maxItems := t.maxItems()
|
||||||
@ -3069,14 +3076,8 @@ func (t *Terminal) Loop() {
|
|||||||
req(reqList)
|
req(reqList)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if me.Double {
|
|
||||||
// Double-click
|
|
||||||
if my >= min {
|
|
||||||
if t.vset(t.offset+my-min) && t.cy < t.merger.Length() {
|
|
||||||
return doActions(actionsFor(tui.DoubleClick))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else if me.Down {
|
} else if me.Down {
|
||||||
|
mx = util.Constrain(mx-t.promptLen, 0, len(t.input))
|
||||||
if my == t.promptLine() && mx >= 0 {
|
if my == t.promptLine() && mx >= 0 {
|
||||||
// Prompt
|
// Prompt
|
||||||
t.cx = mx + t.xoffset
|
t.cx = mx + t.xoffset
|
||||||
|
Loading…
x
Reference in New Issue
Block a user