Skip to content

Commit c59162e

Browse files
committed
Merge branch 'main' into merogge/acc-edit
2 parents 86a3bf6 + 426ecc2 commit c59162e

File tree

153 files changed

+2878
-1936
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

153 files changed

+2878
-1936
lines changed

.git-blame-ignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@ ae1452eea678f5266ef513f22dacebb90955d6c9
1515
# joaomoreno: add ghooks dev dependency
1616
0dfc06e0f9de5925de792cdf9f0e6597bb25908f
1717

18+
# joaomoreno: line endings
19+
12ab70d329a13dd5b18d892cd40edd7138259bc3
20+
1821
# mjbvz: organize imports
1922
494cbbd02d67e87727ec885f98d19551aa33aad1
2023
a3cb14be7f2cceadb17adf843675b1a59537dbbd

.vscode/launch.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@
159159
"--disable-extensions"
160160
],
161161
"outFiles": [
162-
"${workspaceFolder}/out/**/*.js"
162+
"${workspaceFolder}/extensions/vscode-api-tests/out/**/*.js"
163163
],
164164
"presentation": {
165165
"group": "5_tests",
@@ -177,7 +177,7 @@
177177
"--extensionTestsPath=${workspaceFolder}/extensions/vscode-api-tests/out/workspace-tests"
178178
],
179179
"outFiles": [
180-
"${workspaceFolder}/out/**/*.js"
180+
"${workspaceFolder}/extensions/vscode-api-tests/out/**/*.js"
181181
],
182182
"presentation": {
183183
"group": "5_tests",

extensions/emmet/package.json

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -482,11 +482,10 @@
482482
"@types/node": "16.x"
483483
},
484484
"dependencies": {
485-
"@emmetio/abbreviation": "^2.2.0",
486485
"@emmetio/css-parser": "ramya-rao-a/css-parser#vscode",
487486
"@emmetio/html-matcher": "^0.3.3",
488-
"@emmetio/math-expression": "^1.0.4",
489-
"@vscode/emmet-helper": "^2.3.0",
487+
"@emmetio/math-expression": "^1.0.5",
488+
"@vscode/emmet-helper": "^2.8.8",
490489
"image-size": "~1.0.0",
491490
"vscode-languageserver-textdocument": "^1.0.1"
492491
},

extensions/emmet/yarn.lock

Lines changed: 38 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -2,26 +2,19 @@
22
# yarn lockfile v1
33

44

5-
"@emmetio/abbreviation@^2.2.0":
6-
version "2.2.2"
7-
resolved "https://registry.yarnpkg.com/@emmetio/abbreviation/-/abbreviation-2.2.2.tgz#746762fd9e7a8c2ea604f580c62e3cfe250e6989"
8-
integrity sha512-TtE/dBnkTCct8+LntkqVrwqQao6EnPAs1YN3cUgxOxTaBlesBCY37ROUAVZrRlG64GNnVShdl/b70RfAI3w5lw==
5+
"@emmetio/abbreviation@^2.3.2":
6+
version "2.3.2"
7+
resolved "https://registry.yarnpkg.com/@emmetio/abbreviation/-/abbreviation-2.3.2.tgz#375bf6bc6ae6405f62dd0ddab2559b46502d01f4"
8+
integrity sha512-8vqkn4rtjm5Zv34RPgsq3/ij88ri+IcfC2MxPELytrQvfpaLyppscE0YSwDVuIUR6KL5GCBUfr5Mo7SHSbswpA==
99
dependencies:
10-
"@emmetio/scanner" "^1.0.0"
10+
"@emmetio/scanner" "^1.0.3"
1111

12-
"@emmetio/abbreviation@^2.2.3":
13-
version "2.2.3"
14-
resolved "https://registry.yarnpkg.com/@emmetio/abbreviation/-/abbreviation-2.2.3.tgz#2b3c0383c1a4652f677d5b56fb3f1616fe16ef10"
15-
integrity sha512-87pltuCPt99aL+y9xS6GPZ+Wmmyhll2WXH73gG/xpGcQ84DRnptBsI2r0BeIQ0EB/SQTOe2ANPqFqj3Rj5FOGA==
12+
"@emmetio/css-abbreviation@^2.1.7":
13+
version "2.1.7"
14+
resolved "https://registry.yarnpkg.com/@emmetio/css-abbreviation/-/css-abbreviation-2.1.7.tgz#9791269586d780cf4b40078ea79886d1888a188a"
15+
integrity sha512-nrOt3/QROjYYK1cMjoO5fCfHIf0hFpcZeQQt7Ew6ixZ0ElEEs77ijnY57HC6ti91W/mn+c1T7ET8sClBMRHHBg==
1616
dependencies:
17-
"@emmetio/scanner" "^1.0.0"
18-
19-
"@emmetio/css-abbreviation@^2.1.4":
20-
version "2.1.4"
21-
resolved "https://registry.yarnpkg.com/@emmetio/css-abbreviation/-/css-abbreviation-2.1.4.tgz#90362e8a1122ce3b76f6c3157907d30182f53f54"
22-
integrity sha512-qk9L60Y+uRtM5CPbB0y+QNl/1XKE09mSO+AhhSauIfr2YOx/ta3NJw2d8RtCFxgzHeRqFRr8jgyzThbu+MZ4Uw==
23-
dependencies:
24-
"@emmetio/scanner" "^1.0.0"
17+
"@emmetio/scanner" "^1.0.3"
2518

2619
"@emmetio/css-parser@ramya-rao-a/css-parser#vscode":
2720
version "0.4.0"
@@ -38,17 +31,22 @@
3831
"@emmetio/stream-reader" "^2.0.0"
3932
"@emmetio/stream-reader-utils" "^0.1.0"
4033

41-
"@emmetio/math-expression@^1.0.4":
42-
version "1.0.4"
43-
resolved "https://registry.yarnpkg.com/@emmetio/math-expression/-/math-expression-1.0.4.tgz#cb657ed944f82b3728f863bf5ece1b1ff3ae7497"
44-
integrity sha512-1m7y8/VeXCAfgFoPGTerbqCIadApcIINujd3TaM/LRLPPKiod8aT1PPmh542spnsUSsSnZJjbuF7xiO4WFA42g==
34+
"@emmetio/math-expression@^1.0.5":
35+
version "1.0.5"
36+
resolved "https://registry.yarnpkg.com/@emmetio/math-expression/-/math-expression-1.0.5.tgz#d0cc52ed453a107bc9b19c5d71d1390d3aecbe48"
37+
integrity sha512-qf5SXD/ViS04rXSeDg9CRGM10xLC9dVaKIbMHrrwxYr5LNB/C0rOfokhGSBwnVQKcidLmdRJeNWH1V1tppZ84Q==
4538
dependencies:
46-
"@emmetio/scanner" "^1.0.0"
39+
"@emmetio/scanner" "^1.0.4"
4740

48-
"@emmetio/scanner@^1.0.0":
49-
version "1.0.0"
50-
resolved "https://registry.yarnpkg.com/@emmetio/scanner/-/scanner-1.0.0.tgz#065b2af6233fe7474d44823e3deb89724af42b5f"
51-
integrity sha512-8HqW8EVqjnCmWXVpqAOZf+EGESdkR27odcMMMGefgKXtar00SoYNSryGv//TELI4T3QFsECo78p+0lmalk/CFA==
41+
"@emmetio/scanner@^1.0.3":
42+
version "1.0.3"
43+
resolved "https://registry.yarnpkg.com/@emmetio/scanner/-/scanner-1.0.3.tgz#755e581517e2302d31a387e4064bf73035ebfc46"
44+
integrity sha512-/EFyTijquAwKMGSBd50RnjxsfDXmZAFp71PGu7sM6LEnEJXMV+FKL7Rvr6YLu4czQmPVRsfyhcbQz+WZnM4AZw==
45+
46+
"@emmetio/scanner@^1.0.4":
47+
version "1.0.4"
48+
resolved "https://registry.yarnpkg.com/@emmetio/scanner/-/scanner-1.0.4.tgz#e9cdc67194fd91f8b7eb141014be4f2d086c15f1"
49+
integrity sha512-IqRuJtQff7YHHBk4G8YZ45uB9BaAGcwQeVzgj/zj8/UdOhtQpEIupUhSk8dys6spFIWVZVeK20CzGEnqR5SbqA==
5250

5351
"@emmetio/stream-reader-utils@^0.1.0":
5452
version "0.1.0"
@@ -65,24 +63,24 @@
6563
resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.6.tgz#6bef7a2a0ad684cf6e90fcfe31cecabd9ce0a3ae"
6664
integrity sha512-ua7PgUoeQFjmWPcoo9khiPum3Pd60k4/2ZGXt18sm2Slk0W0xZTqt5Y0Ny1NyBiN1EVQ/+FaF9NcY4Qe6rwk5w==
6765

68-
"@vscode/emmet-helper@^2.3.0":
69-
version "2.8.6"
70-
resolved "https://registry.yarnpkg.com/@vscode/emmet-helper/-/emmet-helper-2.8.6.tgz#ee2fa52321d6af8a40310fd9d37b8590a4dabb18"
71-
integrity sha512-IIB8jbiKy37zN8bAIHx59YmnIelY78CGHtThnibD/d3tQOKRY83bYVi9blwmZVUZh6l9nfkYH3tvReaiNxY9EQ==
66+
"@vscode/emmet-helper@^2.8.8":
67+
version "2.8.8"
68+
resolved "https://registry.yarnpkg.com/@vscode/emmet-helper/-/emmet-helper-2.8.8.tgz#df64989d2812e031cd6393ce896a2fe33ae976bd"
69+
integrity sha512-QuD4CmNeXSFxuP8VZwI6qL+8vmmd7JcSdwsEIdsrzb4YumWs/+4rXRX9MM+NsFfUO69g6ezngCD7XRd6jY9TQw==
7270
dependencies:
73-
emmet "^2.3.0"
71+
emmet "^2.4.3"
7472
jsonc-parser "^2.3.0"
7573
vscode-languageserver-textdocument "^1.0.1"
7674
vscode-languageserver-types "^3.15.1"
7775
vscode-uri "^2.1.2"
7876

79-
emmet@^2.3.0:
80-
version "2.3.6"
81-
resolved "https://registry.yarnpkg.com/emmet/-/emmet-2.3.6.tgz#1d93c1ac03164da9ddf74864c1f341ed6ff6c336"
82-
integrity sha512-pLS4PBPDdxuUAmw7Me7+TcHbykTsBKN/S9XJbUOMFQrNv9MoshzyMFK/R57JBm94/6HSL4vHnDeEmxlC82NQ4A==
77+
emmet@^2.4.3:
78+
version "2.4.3"
79+
resolved "https://registry.yarnpkg.com/emmet/-/emmet-2.4.3.tgz#c99f19e572a270da27f456dd7f65dfda83dc0ec1"
80+
integrity sha512-Bq6zozVDVrLbBmKdosI9Q2DvrFh/ehwnNjgDRsvGVjPOEAhMKie9HwQnPuUi3NOZ2itVGyRwsLAdufnG9DVFwg==
8381
dependencies:
84-
"@emmetio/abbreviation" "^2.2.3"
85-
"@emmetio/css-abbreviation" "^2.1.4"
82+
"@emmetio/abbreviation" "^2.3.2"
83+
"@emmetio/css-abbreviation" "^2.1.7"
8684

8785
image-size@~1.0.0:
8886
version "1.0.0"
@@ -114,9 +112,9 @@ vscode-languageserver-textdocument@^1.0.1:
114112
integrity sha512-ynEGytvgTb6HVSUwPJIAZgiHQmPCx8bZ8w5um5Lz+q5DjP0Zj8wTFhQpyg8xaMvefDytw2+HH5yzqS+FhsR28A==
115113

116114
vscode-languageserver-types@^3.15.1:
117-
version "3.17.2"
118-
resolved "https://registry.yarnpkg.com/vscode-languageserver-types/-/vscode-languageserver-types-3.17.2.tgz#b2c2e7de405ad3d73a883e91989b850170ffc4f2"
119-
integrity sha512-zHhCWatviizPIq9B7Vh9uvrH6x3sK8itC84HkamnBWoDFJtzBf7SWlpLCZUit72b3os45h6RWQNC9xHRDF8dRA==
115+
version "3.17.3"
116+
resolved "https://registry.yarnpkg.com/vscode-languageserver-types/-/vscode-languageserver-types-3.17.3.tgz#72d05e47b73be93acb84d6e311b5786390f13f64"
117+
integrity sha512-SYU4z1dL0PyIMd4Vj8YOqFvHu7Hz/enbWtpfnVbJHU4Nd1YNYx8u0ennumc6h48GQNeOLxmwySmnADouT/AuZA==
120118

121119
vscode-uri@^2.1.2:
122120
version "2.1.2"

extensions/git/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1681,17 +1681,17 @@
16811681
{
16821682
"command": "git.stageSelectedRanges",
16831683
"group": "2_git@1",
1684-
"when": "isInDiffRightEditor && !isInEmbeddedDiffEditor && config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInDiffEditor && resourceScheme =~ /^git$|^file$/"
1684+
"when": "isInDiffRightEditor && !isEmbeddedDiffEditor && config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInDiffEditor && resourceScheme =~ /^git$|^file$/"
16851685
},
16861686
{
16871687
"command": "git.unstageSelectedRanges",
16881688
"group": "2_git@2",
1689-
"when": "isInDiffRightEditor && !isInEmbeddedDiffEditor && config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInDiffEditor && resourceScheme =~ /^git$|^file$/"
1689+
"when": "isInDiffRightEditor && !isEmbeddedDiffEditor && config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInDiffEditor && resourceScheme =~ /^git$|^file$/"
16901690
},
16911691
{
16921692
"command": "git.revertSelectedRanges",
16931693
"group": "2_git@3",
1694-
"when": "isInDiffRightEditor && !isInEmbeddedDiffEditor && config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInDiffEditor && resourceScheme =~ /^git$|^file$/"
1694+
"when": "isInDiffRightEditor && !isEmbeddedDiffEditor && config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInDiffEditor && resourceScheme =~ /^git$|^file$/"
16951695
}
16961696
],
16971697
"editor/content": [

extensions/ipynb/src/notebookImagePaste.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,8 @@ class DropOrPasteEditProvider implements vscode.DocumentPasteEditProvider, vscod
4949

5050
private readonly id = 'insertAttachment';
5151

52+
private readonly defaultPriority = 5;
53+
5254
async provideDocumentPasteEdits(
5355
document: vscode.TextDocument,
5456
_ranges: readonly vscode.Range[],
@@ -66,7 +68,7 @@ class DropOrPasteEditProvider implements vscode.DocumentPasteEditProvider, vscod
6668
}
6769

6870
const pasteEdit = new vscode.DocumentPasteEdit(insert.insertText, this.id, vscode.l10n.t('Insert Image as Attachment'));
69-
pasteEdit.priority = this.getPriority(dataTransfer);
71+
pasteEdit.priority = this.getPastePriority(dataTransfer);
7072
pasteEdit.additionalEdit = insert.additionalEdit;
7173
return pasteEdit;
7274
}
@@ -84,20 +86,20 @@ class DropOrPasteEditProvider implements vscode.DocumentPasteEditProvider, vscod
8486

8587
const dropEdit = new vscode.DocumentDropEdit(insert.insertText);
8688
dropEdit.id = this.id;
87-
dropEdit.priority = this.getPriority(dataTransfer);
89+
dropEdit.priority = this.defaultPriority;
8890
dropEdit.additionalEdit = insert.additionalEdit;
8991
dropEdit.label = vscode.l10n.t('Insert Image as Attachment');
9092
return dropEdit;
9193
}
9294

93-
private getPriority(dataTransfer: vscode.DataTransfer): number {
95+
private getPastePriority(dataTransfer: vscode.DataTransfer): number {
9496
if (dataTransfer.get('text/plain')) {
9597
// Deprioritize in favor of normal text content
9698
return -5;
9799
}
98100

99101
// Otherwise boost priority so attachments are preferred
100-
return 5;
102+
return this.defaultPriority;
101103
}
102104

103105
private async createInsertImageAttachmentEdit(

extensions/notebook-renderers/src/index.ts

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -198,13 +198,28 @@ function onScrollHandler(e: globalThis.Event) {
198198
}
199199
}
200200

201+
function onKeypressHandler(e: KeyboardEvent) {
202+
if (e.ctrlKey || e.shiftKey) {
203+
return;
204+
}
205+
if (e.code === 'ArrowDown' || e.code === 'End' || e.code === 'ArrowUp' || e.code === 'Home') {
206+
// These should change the scroll position, not adjust the selected cell in the notebook
207+
e.stopPropagation();
208+
}
209+
}
210+
201211
// if there is a scrollable output, it will be scrolled to the given value if provided or the bottom of the element
202212
function initializeScroll(scrollableElement: HTMLElement, disposables: DisposableStore, scrollTop?: number) {
203213
if (scrollableElement.classList.contains(scrollableClass)) {
204-
scrollableElement.classList.toggle('scrollbar-visible', scrollableElement.scrollHeight > scrollableElement.clientHeight);
214+
const scrollbarVisible = scrollableElement.scrollHeight > scrollableElement.clientHeight;
215+
scrollableElement.classList.toggle('scrollbar-visible', scrollbarVisible);
205216
scrollableElement.scrollTop = scrollTop !== undefined ? scrollTop : scrollableElement.scrollHeight;
206-
scrollableElement.addEventListener('scroll', onScrollHandler);
207-
disposables.push({ dispose: () => scrollableElement.removeEventListener('scroll', onScrollHandler) });
217+
if (scrollbarVisible) {
218+
scrollableElement.addEventListener('scroll', onScrollHandler);
219+
disposables.push({ dispose: () => scrollableElement.removeEventListener('scroll', onScrollHandler) });
220+
scrollableElement.addEventListener('keydown', onKeypressHandler);
221+
disposables.push({ dispose: () => scrollableElement.removeEventListener('keydown', onKeypressHandler) });
222+
}
208223
}
209224
}
210225

extensions/notebook-renderers/src/linkify.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@
66
const CONTROL_CODES = '\\u0000-\\u0020\\u007f-\\u009f';
77
const WEB_LINK_REGEX = new RegExp('(?:[a-zA-Z][a-zA-Z0-9+.-]{2,}:\\/\\/|data:|www\\.)[^\\s' + CONTROL_CODES + '"]{2,}[^\\s' + CONTROL_CODES + '"\')}\\],:;.!?]', 'ug');
88

9-
const WIN_ABSOLUTE_PATH = /(?:[a-zA-Z]:(?:(?:\\|\/)[\w\.-]*)+)/;
10-
const WIN_RELATIVE_PATH = /(?:(?:\~|\.)(?:(?:\\|\/)[\w\.-]*)+)/;
9+
const WIN_ABSOLUTE_PATH = /(?<=^|\s)(?:[a-zA-Z]:(?:(?:\\|\/)[\w\.-]*)+)/;
10+
const WIN_RELATIVE_PATH = /(?<=^|\s)(?:(?:\~|\.)(?:(?:\\|\/)[\w\.-]*)+)/;
1111
const WIN_PATH = new RegExp(`(${WIN_ABSOLUTE_PATH.source}|${WIN_RELATIVE_PATH.source})`);
12-
const POSIX_PATH = /((?:\~|\.)?(?:\/[\w\.-]*)+)/;
12+
const POSIX_PATH = /(?<=^|\s)((?:\~|\.)?(?:\/[\w\.-]*)+)/;
1313
const LINE_COLUMN = /(?:\:([\d]+))?(?:\:([\d]+))?/;
1414
const isWindows = (typeof navigator !== 'undefined') ? navigator.userAgent && navigator.userAgent.indexOf('Windows') >= 0 : false;
1515
const PATH_LINK_REGEX = new RegExp(`${isWindows ? WIN_PATH.source : POSIX_PATH.source}${LINE_COLUMN.source}`, 'g');

extensions/vscode-api-tests/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
"customEditorMove",
1111
"diffCommand",
1212
"documentFiltersExclusive",
13+
"documentPaste",
1314
"editorInsets",
1415
"extensionRuntime",
1516
"extensionsAny",

0 commit comments

Comments
 (0)