mirror of
https://github.com/kovidgoyal/kitty.git
synced 2026-05-13 16:37:27 +00:00
kitten diff: Fix incorrect rendering if diff completes before terminal responds to capabilities query
This commit is contained in:
parent
e1d8565fb6
commit
ecf7f0cab0
1 changed files with 9 additions and 2 deletions
|
|
@ -287,7 +287,7 @@ func (self *Handler) resize_all_images_if_needed() {
|
|||
}
|
||||
|
||||
func (self *Handler) rerender_diff() error {
|
||||
if self.diff_map != nil && self.collection != nil {
|
||||
if self.diff_map != nil && self.collection != nil && self.terminal_capabilities_received {
|
||||
err := self.render_diff()
|
||||
if err != nil {
|
||||
return err
|
||||
|
|
@ -305,6 +305,13 @@ func (self *Handler) handle_async_result(r AsyncResult) error {
|
|||
self.highlight_all()
|
||||
self.load_all_images()
|
||||
case DIFF:
|
||||
if !self.terminal_capabilities_received {
|
||||
go func() {
|
||||
self.async_results <- r
|
||||
self.lp.WakeupMainThread()
|
||||
}()
|
||||
return nil
|
||||
}
|
||||
self.diff_map = r.diff_map
|
||||
self.calculate_statistics()
|
||||
self.clear_mouse_selection()
|
||||
|
|
@ -333,7 +340,7 @@ func (self *Handler) handle_async_result(r AsyncResult) error {
|
|||
func (self *Handler) on_resize(old_size, new_size loop.ScreenSize) error {
|
||||
self.clear_mouse_selection()
|
||||
self.update_screen_size(new_size)
|
||||
if self.diff_map != nil && self.collection != nil {
|
||||
if self.diff_map != nil && self.collection != nil && self.terminal_capabilities_received {
|
||||
err := self.render_diff()
|
||||
if err != nil {
|
||||
return err
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue