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
00f6d3a88c
Register all event emitters, make some services disposable
2022-10-08 09:00:14 -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 and Megan 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
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
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
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
Daniel Imms
03e3105c55
Fix fg/bg overrides in canvas
2022-10-04 14:10:27 -07:00
Daniel Imms
c5d015c908
Merge branch 'master' into shared_cache
2022-10-04 13:54:14 -07:00
Daniel Imms
f6a61acc86
Merge branch 'master' into feature/lint-by-putout
2022-10-04 09:52:10 -07:00
Daniel Imms
6316eee672
Comment out debug log
2022-10-02 21:32:24 -07:00
Daniel Imms
dbef850039
Hook up attributes to new texture atlas
2022-10-02 13:57:35 -07:00
Daniel Imms
590a8219e3
Merge remote-tracking branch 'upstream/master' into shared_cache
2022-10-02 13:42:44 -07:00
Daniel Imms
f38a49b4d5
Move remaining webgl atlas to shared
2022-10-02 08:48:55 -07:00
Daniel Imms
333b0e28ac
Add ITextureAtlas and use that instead of WebglCharAtlas
2022-10-02 07:48:43 -07:00
Daniel Imms
d669c6e9d6
Fix remaining references
2022-10-01 18:03:43 -07:00
Daniel Imms
c5f9eacbb1
Move other render parts to shared folder
2022-10-01 17:41:16 -07:00
Daniel Imms
6fcc496547
Move cache utils to core shared/ folder
...
Part of #4065
2022-10-01 17:36:16 -07:00
Daniel Imms
ed15a8e170
Create new event with emitter object to simplify code
2022-10-01 08:45:40 -07:00
Daniel Imms
cf9949840b
Use readonly over getter for exposing events
...
Fixes #4164
2022-10-01 07:52:26 -07:00
Daniel Imms
23328a394b
Fix trusted types in dom renderer
...
Fixes #4156
2022-09-27 13:01:36 -07:00
Daniel Imms
09a5da5d33
Fix width of upper 1/8 block char
...
See microsoft/vscode#161323
2022-09-23 10:11:28 -07:00
coderaiser
25eb7d6472
chore: lint using 🐊 Putout
2022-09-15 17:19:34 +03:00
Mihai Parparita
a39a468f19
Make terminal rendering work in popout windows
...
Add support for the parent element (what is passed to Terminal.open)
being in a different (same origin) window. Accesses to DOM APIs such
as requestAnimationFrame and devicePixelRatio thus need to be scoped
to the corrent window, instead of assuming that it's the same as the
window/global scope where the code is running.
This is done by inferring a parent window at the creation time, and
then storing it in CoreBrowserService, which is already passed to most
places that need it.
To catch future regressions, an ESLint rule that checks for global
accesses is added (it uses AST selectors via the no-restricted-syntax
rule).
This should also be applicable when the parent element is an iframe.
Fixes #3758
2022-09-08 16:59:31 -07:00
Jean Pierre
3953db0d68
Fixes https://github.com/microsoft/vscode/issues/160070
2022-09-07 11:56:52 -05:00
Daniel Imms
4a6e7bee21
Fix lgtm recommendations
2022-08-30 14:09:39 -07:00
Daniel Imms
0727741ca1
Remove iterators from IDecorationService
...
They're too low performance for typical use cases
Fixes #4079
2022-08-27 20:50:16 -07:00
Daniel Imms
8bbbc98ac8
Merge pull request #4073 from Tyriar/4072
...
Show entire glyph for extra powerline symbols
2022-08-26 08:33:53 -07:00
Daniel Imms
f6860442fb
Show entire glyph for extra powerline symbols
...
Fixes #4072
2022-08-26 08:12:00 -07:00
Daniel Imms
774ebe40e6
Improve glyph padding, especially in large font sizes
...
Fixes #4066
2022-08-26 07:26:36 -07:00
Daniel Imms
81a62306af
Ensure canvas device dims are > 0x0 when firing callback
...
See microsoft/vscode#157444
2022-08-10 05:59:29 -07:00
Daniel Imms
8f6bde9641
Polish powerline rendering
...
Fixes #3986
2022-07-31 14:27:07 -07:00
Daniel Imms
bff529e1e2
Simplify dom tests and fix assertion
2022-07-30 23:41:08 -07:00
Daniel Imms
e0d4384d3c
Merge branch 'master' into underline
2022-07-30 06:40:41 -07:00
Daniel Imms
ff33834eb2
Merge branch 'master' into inactiveSelection
2022-07-29 14:51:22 -07:00
Daniel Imms
b0c29cac9a
Merge pull request #3932 from Tyriar/tyriar/dim_bg
...
Fix inverse dim rendering on canvas+webgl
2022-07-29 14:50:47 -07:00
Daniel Imms
6493679b2e
Inactive selection bg in dom renderer
...
Part of #3803
2022-07-29 11:00:36 -07:00
Daniel Imms
9cb25fbf06
Rename ITheme.selection to selectionBackground
...
This makes it consistent with selectionForeground and other theme keys and
as a result will make the API easier to work with, especially when inactive
selection is done (#3803 )
2022-07-29 10:34:27 -07:00
Daniel Imms
48142eca23
Merge branch 'master' into tyriar/dim_bg
2022-07-29 10:20:22 -07:00
Daniel Imms
1fe0ec8d2c
Merge branch 'master' into underline
2022-07-29 10:19:52 -07:00
Daniel Imms
d2be5f992a
Merge remote-tracking branch 'upstream/master' into underline
2022-07-28 07:01:41 -07:00
Daniel Imms
437c8aac5c
Merge remote-tracking branch 'upstream/master' into rounding
2022-07-28 07:00:13 -07:00
Daniel Imms
84b259dfa5
Merge remote-tracking branch 'upstream/master' into tyriar/dim_bg
2022-07-28 06:57:27 -07:00
Daniel Imms
ced5c304f1
Move CustomGlyphs.ts into core
2022-07-28 04:46:18 -07:00
Daniel Imms
1c6ce99419
Move canvas renderer contents into addon
2022-07-27 10:26:02 -07:00
Daniel Imms
7a17a26e18
Remove link matchers
...
Fixes #2703
2022-07-27 06:49:35 -07:00
Daniel Imms
2ceec34809
Remove log
2022-07-24 17:20:41 -07:00
Daniel Imms
a4f7e2d8e9
Fix inverse dim on canvas renderer
2022-07-24 13:20:04 -07:00