Comments (7)
If you have already introduced the throttled func, you still need to clear the search at the time of resize otherwise they render relative to the old buffer 🤔
from terminal.
Also, we don't really need to clear the highlights (and we should absolutely not because that's going to be announced as results being cleared 🤔). All we need is when there's a pending call to refresh the highlights, we should mark current results within Search
to be not fresh. So, when the renderer tries to read in between the pending call, it should get an empty list for the duration. Later, the throttled call would refresh the results and mark them as fresh again.
from terminal.
[...] and we should absolutely not because that's going to be announced as results being cleared
BTW I've removed the event and replaced it with
- An "output is idle" event, which gets thrown whenever there wasn't any output for 100ms
ControlCore::Search()
returns aSearchResults
struct
TermControl
owns ControlCore
and because of that IMHO the former should be in charge of deciding when to call into the latter. Whenever ControlCore
raises this generic "output is idle" event, TermControl
calls _core.Search()
and handles updating the UI synchronously. That way no search update event is needed.
So, when the renderer tries to read in between the pending call, it should get an empty list for the duration. Later, the throttled call would refresh the results and mark them as fresh again.
I may be misunderstanding you again, but you're suggesting to clear the search results after the reflow and then trigger a search update asynchronously, right? That's the same thing I had in mind. 🙂
from terminal.
They shouldn't stick around after a resize
Does #16611 fix this for you?
from terminal.
I may be doing something wrong, but it seems to still occur.
from terminal.
BTW something funny is happening when I resize the app (this is a debug build so it's a little laggy):
96rPQXu7URrfxUdb.mp4
This is with my changes in to redo the search on resize, but I haven't touched the search code so I think it may have a bug.
from terminal.
OH.
from terminal.
Related Issues (20)
- Enable dragging tabs to other Windows Terminal Windows HOT 6
- Show current position as starting position inn Windows Terminal Settings Launch Parameters Launch Position HOT 3
- wt.exe windows does not restore correctly after exiting full screen HOT 9
- Cascadia Code arrow segments not displaying correctly HOT 8
- [1.21] Doesn't show the prompt when using "Shell Integration" escape sequences in bash prompt on WSL HOT 3
- Quickly invoking PowerShell menu completion multiple times crashes Terminal
- Splitting pane with shortcut opens wrong terminal session HOT 2
- Different color is displayed when the Cursor color is white in Ubuntu-ColorScheme. HOT 4
- Gaps between block elements when using Direct2D HOT 7
- Shift Double-click in tmux select words from differnet panes HOT 1
- Cursor invalidation failing when line renditions are used HOT 2
- Unlimited zoom-in using Ctrl+Wheel causes renderer to crash HOT 3
- Double wide nerd font glyphs are rendered incorrectly in 1.21 HOT 8
- Cloud shell console loses prompt location HOT 3
- Error trying to use double quotes with git commit -m HOT 2
- PS 7 prompt does not render properly with shell integration profile code HOT 4
- Cursor movement is not always detected on double-width lines HOT 1
- ssh to linux mint pc, bash prompt blinks a line below HOT 5
- Coding to education, starting read.me files app name education hub. I try a app to display chapters like educational lessons from on by my work from social issue. I like coding on it new educational material interesting to read and develop.
- Restart-connection on an active terminal does not terminate original process
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from terminal.