mirror of
https://github.com/Eugeny/tabby
synced 2024-12-13 14:52:45 +00:00
fix(tabby-terminal): prevent copying on select when search find next/previous
This commit is contained in:
parent
bb6ed52291
commit
d3adbd03d4
1 changed files with 12 additions and 2 deletions
|
@ -69,6 +69,7 @@ export class XTermFrontend extends Frontend {
|
|||
private resizeHandler: () => void
|
||||
private configuredTheme: ITheme = {}
|
||||
private copyOnSelect = false
|
||||
private preventNextOnSelectionChangeEvent = false
|
||||
private search = new SearchAddon()
|
||||
private searchState: SearchState = { resultCount: 0 }
|
||||
private fitAddon = new FitAddon()
|
||||
|
@ -116,8 +117,11 @@ export class XTermFrontend extends Frontend {
|
|||
this.title.next(title)
|
||||
})
|
||||
this.xterm.onSelectionChange(() => {
|
||||
if (this.copyOnSelect && this.getSelection()) {
|
||||
this.copySelection()
|
||||
if (this.getSelection()) {
|
||||
if (this.copyOnSelect && !this.preventNextOnSelectionChangeEvent) {
|
||||
this.copySelection()
|
||||
}
|
||||
this.preventNextOnSelectionChangeEvent = false
|
||||
}
|
||||
})
|
||||
this.xterm.onBell(() => {
|
||||
|
@ -444,12 +448,18 @@ export class XTermFrontend extends Frontend {
|
|||
}
|
||||
|
||||
findNext (term: string, searchOptions?: SearchOptions): SearchState {
|
||||
if (this.copyOnSelect) {
|
||||
this.preventNextOnSelectionChangeEvent = true
|
||||
}
|
||||
return this.wrapSearchResult(
|
||||
this.search.findNext(term, this.getSearchOptions(searchOptions)),
|
||||
)
|
||||
}
|
||||
|
||||
findPrevious (term: string, searchOptions?: SearchOptions): SearchState {
|
||||
if (this.copyOnSelect) {
|
||||
this.preventNextOnSelectionChangeEvent = true
|
||||
}
|
||||
return this.wrapSearchResult(
|
||||
this.search.findPrevious(term, this.getSearchOptions(searchOptions)),
|
||||
)
|
||||
|
|
Loading…
Reference in a new issue