mirror of
https://github.com/Eugeny/tabby
synced 2024-11-15 01:17:14 +00:00
debounce typing in search field - fixes #7579
This commit is contained in:
parent
a4c8aa40b5
commit
145b6447b9
1 changed files with 13 additions and 2 deletions
|
@ -1,4 +1,5 @@
|
|||
import { Component, Input, Output, EventEmitter } from '@angular/core'
|
||||
import { Subject, debounceTime } from 'rxjs'
|
||||
import { Frontend, SearchOptions, SearchState } from '../frontends/frontend'
|
||||
import { ConfigService, NotificationsService, TranslateService } from 'tabby-core'
|
||||
|
||||
|
@ -18,6 +19,8 @@ export class SearchPanelComponent {
|
|||
|
||||
@Output() close = new EventEmitter()
|
||||
|
||||
private queryChanged = new Subject<string>()
|
||||
|
||||
icons = {
|
||||
'case': require('../icons/case.svg'),
|
||||
regexp: require('../icons/regexp.svg'),
|
||||
|
@ -31,11 +34,15 @@ export class SearchPanelComponent {
|
|||
private notifications: NotificationsService,
|
||||
private translate: TranslateService,
|
||||
public config: ConfigService,
|
||||
) { }
|
||||
) {
|
||||
this.queryChanged.pipe(debounceTime(250)).subscribe(() => {
|
||||
this.findPrevious(true)
|
||||
})
|
||||
}
|
||||
|
||||
onQueryChange (): void {
|
||||
this.state = { resultCount: 0 }
|
||||
this.findPrevious(true)
|
||||
this.queryChanged.next(this.query)
|
||||
}
|
||||
|
||||
findNext (incremental = false): void {
|
||||
|
@ -65,4 +72,8 @@ export class SearchPanelComponent {
|
|||
|
||||
this.config.save()
|
||||
}
|
||||
|
||||
ngOnDestroy () {
|
||||
this.queryChanged.complete()
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue