Commit Graph
8330 Commits
Author SHA1 Message Date
Daniel Imms a2a855d747 Merge pull request #4192 from silamon/ubuntudeprecation
Switch to Ubuntu 20.04
2022-10-09 06:25:11 -07:00
Simon Lamon f983b3cac1 Ubuntu 18.04 deprecation 2022-10-09 10:15:13 +00:00
Daniel Imms 0ba12301a6 Merge pull request #4188 from Tyriar/4184
Create theme service
2022-10-08 15:51:44 -07:00
Daniel Imms 97e084aa50 Remove document from test 2022-10-08 15:44:21 -07:00
Daniel Imms e0fb3b4d19 Remove ColorManager 2022-10-08 15:23:29 -07:00
Daniel Imms a1050d1a11 Merge ColorManager into ThemeService 2022-10-08 15:20:15 -07:00
Daniel Imms 7f9e3b1225 Remove resolved todo 2022-10-08 14:09:00 -07:00
Daniel Imms 48f15cb543 Remove remaining setColors methods 2022-10-08 14:07:28 -07:00
Daniel Imms 6e35bcd767 Use theme service in more places 2022-10-08 13:55:23 -07:00
Daniel Imms 80e474c6ad Viewport listen to theme service 2022-10-08 13:31:31 -07:00
Daniel Imms 4dee0c5d4b Build out theme service more 2022-10-08 12:15:21 -07:00
Daniel Imms a22ad76bd8 Merge pull request #4189 from Tyriar/ensure_canvas_changed
Ensure stale bitmap is not used when drawing new characters
2022-10-08 12:04:27 -07:00
Daniel Imms 4f5154fd21 Ensure stale bitmap is not used when drawing new characters
This would cause a problem where the first time a glyph is used it would
not be visible because it was using the old invalidated bitmap.
2022-10-08 11:56:29 -07:00
Daniel Imms cc6def57e4 Use readonly color set in canvas addon 2022-10-08 11:46:41 -07:00
Daniel Imms c4750eaf77 Create basic theme service
Part of #4184
2022-10-08 11:43:19 -07:00
Daniel Imms 8db2244f5d Merge pull request #4187 from Tyriar/4183_on_naming
Lint rule for on=event emitter and rename all methods with on prefix to handle
2022-10-08 11:14:15 -07:00
Daniel Imms 5d8e4a0af4 Add lint rule to ensure _on prefix is only for event emitters 2022-10-08 11:05:52 -07:00
Daniel Imms eecf52e949 Add lint rule to ensure on prefix is only for event emitters
Fixes #4183
2022-10-08 10:57:31 -07:00
Daniel Imms d8c31d7ad0 Merge pull request #4185 from Tyriar/4167_register_emitter
Fix a bunch of memory retention problems
2022-10-08 10:35:04 -07:00
Daniel Imms d8cf3af555 Fix Marker.dispose 2022-10-08 10:23:19 -07:00
Daniel Imms d3976c05f1 Fix marker dispose unit tests 2022-10-08 09:27:58 -07:00
Daniel Imms 94c3d11239 Fix compile 2022-10-08 09:11:28 -07:00
Daniel Imms 00f6d3a88c Register all event emitters, make some services disposable 2022-10-08 09:00:14 -07:00
Daniel Imms f61d8c91a3 Properly register disposables in SearchAddon 2022-10-08 08:30:39 -07:00
Daniel Imms ac659cb412 Prevent overriding of Disposable.dispose
A common mistake made was overriding dispose and not calling super.dispose,
so a TS trick is now used to move it to a readonly property instead of a
member method which prevents it being overridden.
2022-10-08 08:27:10 -07:00
Daniel Imms 34475f24c3 Release canvas texture atlas 2022-10-08 08:11:28 -07:00
Daniel Imms 8116e035b4 Register webgl renderers 2022-10-08 08:06:43 -07:00
Daniel Imms 56b37a73ac Free WebglAddon 2022-10-08 07:37:55 -07:00
Daniel Imms fc8043a25a Ensure webgl texture atlas is released on dispose 2022-10-08 07:32:51 -07:00
Daniel Imms f88c0e7480 Polish emitter registering in canvas renderer
Part of #4167
2022-10-08 07:24:35 -07:00
Daniel Imms d948b31304 Merge pull request #4181 from Tyriar/clear_race
Fix race condition that could when clearing atlas on 2+ terminals
2022-10-07 16:34:27 -07:00
Daniel Imms 9a4d5dbe26 Merge pull request #4182 from Tyriar/delete_canvas_atlas
Remove the canvas char atlas
2022-10-07 16:32:51 -07:00
Daniel Imms 8e7093f03b Remove the canvas char atlas
This was unused and removing from cache was broken apparently
2022-10-07 16:20:01 -07:00
Daniel ImmsandMegan Rogge c4eef2f470 Fix race condition that could when clearing atlas on 2+ terminals
This is the proper fix for microsoft/vscode#162996, after a bunch of
investigation we found that this is causing the problem:

VS Code clears the texture atlas on OS resume to fix an issue where the texture
could be corrupted. This calls clearTextureAtlas twice which should be fine, but
it's not because inside WebglRenderer.clear we're calling updateModel which is
meant to only ever be called in an animation frame. This calls potentially both
renderers to have stale views of the texture atlas for those rows and our perf
caching of cells (the main purpose of the model) doesn't know it's stale.

Co-Authored-By: Megan Rogge <merogge@microsoft.com>
2022-10-07 16:17:11 -07:00
Daniel Imms 5fcb084089 Merge pull request #4180 from Tyriar/clear_atlas
Fix clearTextureAtlas call as implemented on IRenderer
2022-10-07 14:31:28 -07:00
Daniel Imms e89c507d06 Fix clearTextureAtlas call as implemented on IRenderer
This is the root cause of microsoft/vscode#162996
2022-10-07 14:22:51 -07:00
Daniel Imms eb3de3ebd5 Merge pull request #4151 from Tyriar/renderer_before_open
Allow renderer to be set before Terminal.open is called
2022-10-07 10:17:54 -07:00
Daniel Imms ffa4d921bb Merge remote-tracking branch 'upstream/master' into renderer_before_open 2022-10-07 10:10:24 -07:00
Daniel Imms a060c64a08 Merge pull request #4179 from Tyriar/4178
Split Utf8ToUtf32 decoder unit tests up
2022-10-06 10:38:03 -07:00
Daniel Imms 0d5a526e86 Split Utf8ToUtf32 decoder unit tests up
Fixes #4178
2022-10-06 10:28:54 -07:00
Daniel Imms 3ec08948ec Merge pull request #4177 from Tyriar/tyriar/revert_events
Revert "Merge pull request #4166 from Tyriar/event_with_emitter"
2022-10-06 09:59:50 -07:00
Daniel Imms 4d97729010 Revert "Merge pull request #4166 from Tyriar/event_with_emitter"
This reverts commit d22f7c9edd, reversing
changes made to 1f8e6f0952.
2022-10-06 09:48:54 -07:00
Daniel Imms 5f1651ffbc Merge pull request #4176 from xtermjs/Tyriar-patch-1
Bump copyright year
2022-10-06 09:15:02 -07:00
Daniel Imms ab0082b73a Bump copyright year 2022-10-06 09:14:50 -07:00
Daniel Imms aa55d1bde6 Merge pull request #4170 from Tyriar/shared_cache
Share texture atlas cache code between webgl and canvas renderers
2022-10-05 10:19:17 -07:00
Daniel Imms e0324e32a8 Bring back ImageBitmap optimization in canvas renderer
It's more simple than it used to be, it will clear and debounce all
glyphs when any change is made.
2022-10-04 15:24:10 -07:00
Daniel Imms 3b260a2193 Fix resolved todo 2022-10-04 14:46:00 -07:00
Daniel Imms 622acaaad7 Remove old selection start/end values 2022-10-04 14:45:19 -07:00
Daniel Imms 0d7e18d236 Add CellColorResolver to share load color code 2022-10-04 14:41:27 -07:00
Daniel Imms 83c09c34db Share selection render model code 2022-10-04 14:23:09 -07:00