Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Explore additional layout control surfaces for discoverability #137633

Closed
sbatten opened this issue Nov 22, 2021 · 43 comments
Closed

Explore additional layout control surfaces for discoverability #137633

sbatten opened this issue Nov 22, 2021 · 43 comments
Assignees
Labels
plan-item VS Code - planned item for upcoming
Milestone

Comments

@sbatten
Copy link
Member

sbatten commented Nov 22, 2021

The goal of this issue is to experiment with new layout control surfaces to help users understand/discover the different layout customization options.

The initial version of this is available in insiders and disable-able via workbench.experimental.layoutControl.enabled

image

@sbatten sbatten added the plan-item VS Code - planned item for upcoming label Nov 22, 2021
@sbatten sbatten added this to the November 2021 milestone Nov 22, 2021
@sbatten sbatten self-assigned this Nov 22, 2021
@sbatten sbatten modified the milestones: November 2021, December 2021 Dec 2, 2021
@sbatten
Copy link
Member Author

sbatten commented Jan 21, 2022

The latest here is
image

image

@heartacker
Copy link
Contributor

hei, how can we exit the view without keyboard?
image

I think we should add a close button to the left-top

@bpasero
Copy link
Member

bpasero commented Jan 25, 2022

From testing: Some entries toggle on click, other entries are more like radio boxes, I think this picker needs a UX revisit.

@miguelsolorio
Copy link
Contributor

My comments from Slack:

While I do like that I can customize the layout, the quick pick feels like an odd choice because:

  • the options by themselves don’t make a ton of sense without the title, which is on the right, so your eyes are bouncing left/right which make it not easy to scan and takes a bit longer to read
  • it’s not clear if hitting enter or clicking an item will toggle it or if it’s the eye
  • the sections titles should be more user friendly, instead of “move side bar” maybe “side bar placement” etc.
  • after playing with this, the ux feels very strange as there is a mixture of checks and toggles. there’s also no way to dismiss with the mouse (you have to use “esc”)

While I can see the need to make layout customization more discoverable, the overall ux of the quick pick in this context suffers from usability as there’s so many patterns being used. I personally prefer the menu version, better but keeping the menu open, since it’s simpler & a known pattern.

@Tyriar
Copy link
Member

Tyriar commented Jan 25, 2022

My thoughts:

  • I like the theme picker-like quick pick approach
  • Can we get radio buttons supported?
  • Can we use checkboxes? Instead of the eye?
  • Highlighting sections based on the hovered/focused item is a great idea

@TylerLeonhardt
Copy link
Member

TylerLeonhardt commented Jan 25, 2022

  • Can we get radio buttons supported?
  • Can we use checkboxes? Instead of the eye?

Right now the quickpick is all or nothing with checkboxes so that would need to change but is a pretty large item. #141500
Only after that would it be worth implementing radio button support for a group for this feature. #141503

Also I might also say that having #120866 would be a dependency as I think a bunch of checkboxes (6 in this case) is kinda jarring over the approach @sbatten already took.

@miguelsolorio
Copy link
Contributor

miguelsolorio commented Jan 25, 2022

I think one of the way to fix the mixture of toggles is to switch to using checks for all items, which makes it easier to understand and it maps to the appearance menu. I'd also remove the layout modes as those aren't really customization. I'd also rename the titles to make them more readable:

CleanShot 2022-01-25 at 14 51 14@2x

@sbatten
Copy link
Member Author

sbatten commented Jan 25, 2022

@misolori this is not really possible with today's quick pick, but I agree on having a more uniform visualization. The current design spawns from another desire: I would like to come up with a UX that does not prevent us from adding custom visualization icons as well. On the left it would be nice to have codicons for each part to help the user identify the parts before selection

@miguelsolorio
Copy link
Contributor

miguelsolorio commented Jan 26, 2022

Based on @sbatten's idea on adding icons for each area to identify the area I made a little mockup that could show this:

CleanShot 2022-01-25 at 16 31 15@2x

There were also some other ideas from the design team (@daviddossett @jilljac + others) around using the right controls (checkbox vs toggle), which would require some api changes, that i think properly represent each control:

CleanShot 2022-01-25 at 17 02 33@2x

There's also the "simpler" approach of no icons:

CleanShot 2022-01-25 at 17 02 10@2x

@miguelsolorio
Copy link
Contributor

miguelsolorio commented Jan 26, 2022

Also +1 to highlighting the active area for the visibility items:

CleanShot 2022-01-25 at 17 17 07@2x

@Tyriar
Copy link
Member

Tyriar commented Jan 26, 2022

@misolori

I think one of the way to fix the mixture of toggles is to switch to using checks for all items, which makes it easier to understand and it maps to the appearance menu.

All checks feels bad to me since some are checks and some are radio buttons.

That last mockup looks fantastic though 👍

@gjsjohnmurray
Copy link
Contributor

Short-term, how about prefixing mutually-exclusive labels with circle-filled or circle-outline, and toggles with check or nothing? Put the appropriate layout icon (after) that state-icon.

sbatten added a commit that referenced this issue Jan 27, 2022
sbatten added a commit that referenced this issue Jan 27, 2022
@gjsjohnmurray
Copy link
Contributor

gjsjohnmurray commented Jan 28, 2022

Short-term, how about prefixing mutually-exclusive labels with circle-filled or circle-outline, and toggles with check or nothing? Put the appropriate layout icon (after) that state-icon.

A mockup I created using Developer Tools

image

Prefixes are \eab2 (check), \ea71 (circle-filled) and \2003 (EM SPACE)

@heartacker
Copy link
Contributor

image
maybe it's better to use dot instead for activity-bar and status-bar
I think it is hard to distinguish sidebar and activity-bar at first-quick peek

@sbatten sbatten modified the milestones: January 2022, March 2022 Jan 28, 2022
@gjsjohnmurray
Copy link
Contributor

I would like to have a quicker way to show/hide the side panel, something similar to the activity bar would be perfect.

@AlbertoFabbri93 are you seeing the Configure Layout button on your title bar?

image

If not, set "workbench.experimental.layoutControl.enabled": true and "window.titleBarStyle": "custom"

Hold down your mouse button on that button, drag the highlight down the menu to Show Side Panel item, then release the mouse button.

If you prefer a keyboard shortcut, bind one to the View: Toggle Side Panel command.

@ElanHasson
Copy link

@ElanHasson You can add it with image

Thanks @sbatten.

I'm also seeing an issue when I set a layout it doesn't persist across sessions. My expectation was that if I set a layout, it persists without additional config.

@sbatten
Copy link
Member Author

sbatten commented Feb 4, 2022

@ElanHasson can you please file a separate issue with repro steps so I can confirm whether the behavior you are seeing is a bug?

@ElanHasson
Copy link

ElanHasson commented Feb 4, 2022

Will do.

@sbatten #142231

Thanks for your work!

@RedMustard
Copy link

Similar use case as @lexiconium. I'm curious if we're overlooking something.

Prior to the new layout controls, I was able to dock my terminal side-by-side with the Side Bar on the right side of the window. As far as I can tell, the new layout controls prevent this type of layout and, instead, enforce the Side Panel to be on the opposite side of the window as the Side Bar.

@nickmccurdy
Copy link

The button doesn't appear in full screen on macOS, could we move it to the tab bar instead? I'd like to use this, but I almost always have VSCode full screen, so I can't without changing my workflow.

@AlbertoFabbri93
Copy link

@gjsjohnmurray Thank you very much for the reply, I have the Configure Layout button enabled but I feel like it is not that convenient if you are often toggling the visibility of the side panel.

@apple4ever
Copy link

apple4ever commented Feb 7, 2022

I like the new feature, but it needs a quick access button (more than the button up top which requires two clicks, as opposed to the sidebar which only requires one click) and a key code (command-option-B makes sense on a Mac).

@wesleyboar
Copy link

Please help me see the button. I do not see the button, in full screen nor windowed.

My Settings:
  • window.titleBarStyle: custom
  • workbench.experimental.layoutControl.enabled: true
  • workbench.enableExperiments: true
Steps Performed (click to toggle visibility):
  1. In full-screen mode.
  2. Confirm window.titleBarStyle setting is custom (was already set to this).
  3. Change workbench.experimental.layoutControl.enabled to true.
  4. From full-screen to windowed mode.
  5. Restart VS Code.
  6. In windowed mode.
  7. Merge all windows.
  8. From windowed to full-screen mode.
  9. Confirm workbench.enableExperiments is set to true (was already set to this).
  10. Cry here.

VS Code 1.64.0 / MacOS Monterey 12.1

@heartacker
Copy link
Contributor

heartacker commented Feb 9, 2022

try my extension.
https://marketplace.visualstudio.com/items?itemName=heartacker.toggle-panel
a

@IdemIsDito
Copy link

IdemIsDito commented Feb 14, 2022

I'm not able to get my preferred panel setup with the new sidepanel, previously I had from LTR: editor, panel, sidebar

image

@sbatten
Copy link
Member Author

sbatten commented Feb 14, 2022

@IdemIsDito , the new side panel cannot be moved to the same side as the side bar. To do this, we have re-enabled you to move the bottom panel to the the right side with the side bar.

sbatten added a commit that referenced this issue Feb 22, 2022
@sbatten
Copy link
Member Author

sbatten commented Feb 22, 2022

For those following this issue, please try out this new setting in insiders: workbench.experimental.layoutControl.type

@heartacker
Copy link
Contributor

wonderful

@heartacker
Copy link
Contributor

image
inharmonious menu icon

too bigger

@sbatten
Copy link
Member Author

sbatten commented Feb 22, 2022

@misolori maybe we go back to the less abstract icon for workbench

@miguelsolorio
Copy link
Contributor

we've updated the layout icon to be a bit smaller, open to more feedback:

CleanShot 2022-02-25 at 09 31 43@2x

@sbatten sbatten modified the milestones: February 2022, March 2022 Feb 25, 2022
jsjoeio added a commit to coder/vscode that referenced this issue Mar 4, 2022
* debug: bump js-debug

* Resources lost their authority part (fix microsoft#141328)

* Run OSS tool

* Enable resourceurls (microsoft#140709)

* Enable resourceurls

* Add selection to resourceurls from trees

* Rename identifier

* Respond to PR feedback

* Do not loop opver openEditors

* cleanup @vscode/windows-registry

* Bump node-fetch from 2.6.2 to 2.6.7 (microsoft#141307)

Bumps [node-fetch](https://github.com/node-fetch/node-fetch) from 2.6.2 to 2.6.7.
- [Release notes](https://github.com/node-fetch/node-fetch/releases)
- [Commits](node-fetch/node-fetch@v2.6.2...v2.6.7)

---
updated-dependencies:
- dependency-name: node-fetch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump node-fetch from 2.6.1 to 2.6.7 in /build (microsoft#141306)

Bumps [node-fetch](https://github.com/node-fetch/node-fetch) from 2.6.1 to 2.6.7.
- [Release notes](https://github.com/node-fetch/node-fetch/releases)
- [Commits](node-fetch/node-fetch@v2.6.1...v2.6.7)

---
updated-dependencies:
- dependency-name: node-fetch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fixes microsoft#141392

* Add check that the editor's ESM JS files can be loaded in a browser

* Create from template options for configure tasks
Fixes microsoft#140867

* web - only simplify `vscode-remote` workspaces (microsoft#141411)

* web - use correct untitled workspace object (fix microsoft#141411)

* Install playwright using `npx playwright install`

* Fix microsoft#141326

* Most recent -> last link

Fixes microsoft#141419

* Add ellipsis to open detected link

Fixes microsoft#141416

* $ref '' in 'http://json-schema.org/draft-07/schema' can not be resolved. Fixes microsoft#141445

* Use `@playwright/test` instead of `playwright`

* Document how to unset auto reply, support null explicitly

Fixes microsoft#141456

* remove unnecessary async

* fix microsoft#141435

* add shell integration message to zsh part of microsoft#141448

* add shell integration message to pwsh, fix microsoft#141448

* Fix spelling error

* Install playwright deps

* Remove redundant 0 from bold sequence

* fix microsoft#141420

* Run headless on CI

* bold pwsh shell integration text

* Fix cwdFolder on Windows

Fixes microsoft#141443

* Move common imports to `.eslintrc.json`

* Avoid `*` and spell out all allowed node modules to have squiggles when importing `vscode` by accident

* Don't change target because `webpack` can't handle `es2020`.

* Prevent link highlight in markdown code blocks and spans (microsoft#140816)

* Prevent link highlight in markdown codeblocks (microsoft#139770)

* Handle inline codespan variants for markdown link provider (microsoft#139770)

* Refactor codespan detection in markdown link provider (microsoft#139770)

* Add back  ESM-uncomment

* Remove export

* fully qualify kind

* Remove no longer necessary rule (microsoft#140989)

* Get rid of `null!`

* Fixes microsoft#140884: removal rules only target rules that appear before

* handle bash login args (microsoft#141467)

* support case insensitive shell executables, add tests

* update with runtime key changes
fixes  microsoft#141389

* fixes microsoft#141387

* remove unused import

* Update Codicons: Add layout icons (Refs microsoft#137633)
microsoft/vscode-codicons@a2e80bf

* fixes microsoft#141384

* fixes microsoft#141421

* Tweak CES survey assignment

* Ambiguity in comments for createFileSystemWatcher (fix microsoft#141494)

* 🆙 distro

* Fix extension tree dnd supported types
Fixes microsoft#141418

* Avoid `[createInstance]` warnings in unit tests

* handle extension resource

* Adopt `TestInstantiationService.get`

* Improve comments

* Improve explanations

* Only log server greeting to log file, not again to the console

* Avoid a lot of newlines when running from source

* Fixes use of model after it got disposed.

* Bump node-fetch from 2.6.1 to 2.6.7 in /extensions/github (microsoft#141538)

Bumps [node-fetch](https://github.com/node-fetch/node-fetch) from 2.6.1 to 2.6.7.
- [Release notes](https://github.com/node-fetch/node-fetch/releases)
- [Commits](node-fetch/node-fetch@v2.6.1...v2.6.7)

---
updated-dependencies:
- dependency-name: node-fetch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* support login args on linux too

* formatting and clean up

* Refactors unicode highlight options

* Fixes microsoft#141152 by not showing unicode highlights in the ruler or minimap.

* Fix cwd setting in workspace file

Fixes microsoft#136099

Co-Authored-By: Megan Rogge <merogge@microsoft.com>

* update doc

* fix microsoft#141366. Safari does not respect input::placeholder rules, set line height explicitly.

* better warning when an extension depends on an API proposal that doesn't exist, microsoft/vscode-python#18363

* remove inlay hints config again, fixes microsoft#140225

* debug: bump js-debug

* Fix microsoft#141393

* testing: add autosave before each test run

* testing: add autosave before each test run

Save the current project file before each test run so that the code logic is up to date when the test is run

* debug: Add debug.saveBeforeTest - Fix microsoft#139125

* testing: add autosave before each test run

* testing: adjust the "saveBeforeTest" to a suitable position

* fix microsoft#141367.

* Fix microsoft#141461

* Bump node-fetch from 2.6.1 to 2.6.7 in /extensions/github-authentication (microsoft#141537)

Bumps [node-fetch](https://github.com/node-fetch/node-fetch) from 2.6.1 to 2.6.7.
- [Release notes](https://github.com/node-fetch/node-fetch/releases)
- [Commits](node-fetch/node-fetch@v2.6.1...v2.6.7)

---
updated-dependencies:
- dependency-name: node-fetch
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump node-fetch in /extensions/microsoft-authentication (microsoft#141536)

Bumps [node-fetch](https://github.com/node-fetch/node-fetch) from 2.6.1 to 2.6.7.
- [Release notes](https://github.com/node-fetch/node-fetch/releases)
- [Commits](node-fetch/node-fetch@v2.6.1...v2.6.7)

---
updated-dependencies:
- dependency-name: node-fetch
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix microsoft#141368. Overflow.

* re microsoft#141368. disable replace all if the curr match is not model.

* fix microsoft#141371.

* 💄

* fix microsoft#141370. Update buttons on find match state change.

* update find unit test.

* Move `tokenizationSupport` inside `TokenizationStateStore` (microsoft#140476)

* Rearrange methods

* Extract `ContiguousGrowingArray`

* Improve names and documentation for `TokenizationStateStore`

* Add setting to control repository scan

* fix microsoft#141515.

* Fix microsoft#141469

* update terminalLinkManager's processCwd when cwd changes with shell integration on (microsoft#141595)

* Emit event with valid range

* make terminal output readonly (microsoft#141601)

* Only show link commands if a terminal has been created

Fixes microsoft#141593

* Fixes microsoft#139877: Allow `DomScrollableElement` to use float scroll values

* update doc

* Change notebook markdown fold hint to a CellPart

* Cell fold hint fixes
Hide when in edit mode, simplify top calculation, fix height calc when in edit mode

* compositePart should use createActionViewItem helper
fixes microsoft#141399

* feedback

* fix microsoft#141294

* fix Terminal: Cannot refresh property when process is undefined microsoft#141288

* Bumping eslint versions (microsoft#141121)

* hBumping eslint versions

- Bump eslint and typescript/eslint versions to latest
- Fixing `code-no-unused-expression` for `x?.(b);` type statements
- Fixed a few new semicolon errors from upgrade

* Bump eslint parser in build

* Fix eslint errors in d.ts

* update layout state prefix
fixes microsoft#141372 microsoft#141376 microsoft#141374

* Fix import path

* Close microsoft#141465

* fixes microsoft#141398

* fixes microsoft#141404

* unused import

* Add link to sort description

* Close microsoft#141555

* refs microsoft#141426

* fixes microsoft#141432

* fixes microsoft#141552

* Instrument watermark opening

* Adding video tutorials to get started

* add customize layout icons
refs microsoft#137633

* Remove stale comment
microsoft#140878 is fixed

* Startup dialog goes through the request service (microsoft#141592)

* show error when inlay hints command fails, annotate error with source (e.g extension name), fixes microsoft#141588

* Fixes microsoft#138746.

* - Check if URL is pointing to the right service
- Set selective request and response headers
- Update the scheme on the client

* cache resourceUrlTemplate Uri

* Fixes microsoft#69391: Reserve extra bottom padding when the hover has a horizontal scrollbar

* fix microsoft#141643

* Revert "always set aria-selected, even for listbox"

This reverts commit 1356392.

* Fixes microsoft#141638: `-command` rules should only remove default rules

* fix microsoft#141299

* Remove terminalLocation from api proposal list

Fixes microsoft#141645

* Match z-index on parameter hints to the hover

Fixes microsoft#140761

* Reveal panel/editor when running a recent command/dir

Fixes microsoft#141619

* Ensure quick pick is closed on view output

Fixes microsoft#141615

* Inconsistent single quotes use in --help (same for code --help)

* Reduce duplication

* Fixes microsoft#25221: Render line highlights for all cursors

* server: port range is end inclusive, improve validation

* fix typo

* Use `display:none` when overview ruler is turned off

* Better align simple options with `<input>`s

* Fixes microsoft#140367: Take into account horizontal padding when layouting the editor

* Update scripts to point to `tsc` one folder up

* Fix microsoft#141331

* Update description (microsoft/vscode-remote-release#6184)

* fix typos

* fix microsoft#141633

* await open editor

* Allow richer commands in get started entries

* Update src/vs/workbench/contrib/terminal/browser/terminalInstance.ts

Co-authored-by: Megan Rogge <megan.rogge@microsoft.com>

* create process in an empty workspace when cwd is userHome (microsoft#141660)

* Fixes microsoft#140490 by always using `cursor:text` on macOS instead of our custom cursor. Since macOS Catalina the native cursor has a white border which makes it work well on dark themes, making our custom cursor not necessary. Also, macOS High Sierra is no longer officially supported by Apple (ref microsoft#96946)

* Update shell integration config description

Fixes microsoft#141308

* --help should read better

* tty for ./scipts/code-server

* Support null in auto replies setting

Fixes microsoft#141666

* Improve auto replies config more

Part of microsoft#141666

* debug: bump js-debug

* Update typescript-eslint/experimental-utils

Fixes microsoft#141653

* Update Codicons: Add modes and menu bar
microsoft/vscode-codicons@ee85be1

* tweak setting language

* refs microsoft#137633

* testing: fix inline decoration overlap

Fixes microsoft#138915

* Use fully qualified names in @link

* Fix `undefined`s in text search results (microsoft#141522)

* Revert "create process in an empty workspace when cwd is userHome (microsoft#141660)"

This reverts commit a58b538.

* copy & continue. Fixes microsoft/vscode-internalbacklog#2613

* fixes microsoft#141471

* Fix microsoft#141477

* readonly

* type -> interface

* Avoid lookbehind in regexp

Fixes microsoft#141689

* Clean up unused method, re microsoft#139541

* 💄
re microsoft#141582

* fix microsoft#141686

* Disable windows adjustment for active indicator (Refs microsoft#140647)

* Temporary window shift

* Revert

* Dont require steps to be defined
Fixes microsoft#141603

* Fix microsoft#141434

* Fix microsoft#141439

* microsoft#141054 enable the tests and keep debugging

* Revert "fix microsoft#141686"

This reverts commit 4af3e14

Didn't seem to fix the issue

* Bump distro

* Revert "support file llink"

This reverts commit 09108ba.

* Trim characters off match instead to get key, fixes microsoft#141614 (microsoft#141818)

* Fix microsoft#141910

* Revert "fix microsoft#140907"

This reverts commit a81c3b0.

* Ensure parameter hints z-index is lower than suggest

Terminal screen element's z-index is 31

Fixes microsoft#141947

* Fix comments can't be updated (microsoft#142013)

Fixes of microsoft#142012

* debug: fix action bar input being hidden (microsoft#142230)

For microsoft#142010

* Revert "debug: fix action bar input being hidden (microsoft#142230)" (microsoft#142240)

This reverts commit 4a4c17c.

* Bump distro and version (microsoft#142419)

* Disable auto replies by default

Fixes microsoft#142341

* Latest update breaks due to proxy requirement. Fixes microsoft#142201

* debug: bump js-debug (microsoft#142531)

* debug: fix action bar input being hidden (microsoft#142530)

For microsoft#142010

* GVFS: can't open file (fix microsoft#142481) (microsoft#142499)

* safeguard init exthost message (microsoft#142486)

* Execution object should be able to be returned by getCellExecution at the time the change event is fired microsoft#142466

* Make sure we pass along windows style paths to pluginProbeLocations (microsoft#142420)

* Fix bare math blocks with nested beging/end (microsoft#142136)

Fixes microsoft#141905

This picks up microsoft/vscode-markdown-it-katex@b1ed14d

* Fix quoting for tasks (microsoft#142400)

Fixes microsoft#142196

* Bump version to 1.64.2

* refs microsoft#142176 (microsoft#142423)

* Candidate/142146 (microsoft#142424)

* refs microsoft#142146

* refs microsoft#142146

* Fix microsoft#142421 (microsoft#142433)

POINTER_DOWN was stealing too many events.
The old event handlers handled events such as MOUSE_UP,
and it turns out we can just use POINTER_UP instead.

* fixes microsoft#141349 (microsoft#142644)

* fixes microsoft#141349

* additional handling of the panel position with panel alignment

* chore: update package.json and yarn.lock

From what I can tell, it looks like there aren't many changes here. cookie was
added as a devDependency. We had that as a regular dependency already. I moved
it to match theirs. They were also using 0.4.0 while we had 0.4.1. Hope that
doesn't matter.

The other big update was eslint to 8.7.0 from 6.8.0. That could cause breaking
changes potentially. Something to look out for.

* feat: update product.json

I don't see anything changed here for us to worry about.

This is mostly making sure we keep the right names on win32.

* fix: dont use remote node in code-server.sh

I am unsure if this was the right move but it appears that we commented this
out previously and did not load remote node. I think this is because it leads
to Node version discrepencies which we don't want.

* feat: add getPreferredWebSchema network.ts

It appears they added a new method to the RemoteAuthoritiesImpl called
`getPreferredWebSchema` which returns either 'http' or 'https'.

* chore: resolve conflicts in src/vs/code/browser/workbench/workbench-dev.html

Not much to report here. Seems like nothing new.

* chore: update src/vs/code/browser/workbench/workbench.html

Based on what I can tell, they changed workbench.web.api to workbench.web.main
for most of these static assets. I hope that is accurate.

* fix: conflict in src/vs/platform/remote/browser/browserSocketFactory.ts

I am not 100% if the new code is similar to ours. We had to patch this to work
against the current path.

Their new implementation may do the same thing but I couldn't tell from looking
at it.

We may want to revisit this later when we switch to patches. Hopefully we can
remove this.

* fix:  src/vs/platform/remote/common/remoteAgentConnection.ts

It appears they've added a new parameter to `createSocket` which takes a string
for a debugLabel.

Not sure how it's used or made available but it's interesting because it takes
the `connectionTypeToString` which we're adding to the query.

Makes me think we might be able to remove this patch if our backend can get
access to the debugLabel somehow.

* fix:  src/vs/server/node/serverEnvironmentService.ts

Seems like a bunch of new serverOptions were added, some deprecated.

I am not sure how this will affect code-server. They added 'host' so I wonder if we could deprecate 'bind-address' on the code-server side
and instead use host:port with VS Code. Something to consider.

* fix:  src/vs/workbench/browser/web.main.ts

Nothing major here. Had to add a random property called `ctor`
to the CodeServerAdditions class. Also used connectionTokenCookie instead
of hard-coded string which is a nice addition.

* fix:  src/vs/workbench/browser/web.api.ts

Clean up IWorkbenchConstructionOptions. That's mostly it here.

* fix:  src/vs/workbench/contrib/extensions/browser/extensionsViewlet.ts

Added flexible:Height: true to the SyncDescriptor since we were missing it.

Removed a block that showed the prevented the web view extensions from
automatically hiding.

I did this because upstream removed two properties it was using:
this.hasInstalledWebExtensionsContextKey and
this.updateInstalledWebExtensionsContext. I hope that was right.

* fix: src/vs/server/node/server.main.ts

I removed `args['server-data-dir']` from `REMOTE_DATA_FOLDER` since we don't
have access to `args` here.

The other change was the `{ mode: 0o700 }` added to the `fs.mkdirSync` call.
Not sure if that's related to chmod 0700 or something else.

* wip

* fix: conflicts in src/vs/server/node/webClientServer.ts

We resolved a few things here with the conflicts.

* fix:  src/vs/code/browser/workbench/workbench.ts

We were able to remove a couple of our patches, which is awesome!

Still have some things to test though.

* fix: src/vs/server/node/remoteExtensionHostAgentServer.ts

Moved our custom serverThemeService into the src/vs/server/node folder and added the missing _serviceBrand to the interface and the class to fix a ctor error.

* fix: remove clientTheme from webClientServer

* fix: also remove from html files

* fix: add missing __metadata change

* chore: clean up code comments

* chore: clean up comments

* chore: fix typo

* wip: add notes for debugging folder query param

* refactor: remove workspace & folder from code-server args

* fixup!: clean up TODOS

* revert(code-server.sh): match upstream

Co-authored-by: Connor Peet <connor@peet.io>
Co-authored-by: Benjamin Pasero <benjamin.pasero@microsoft.com>
Co-authored-by: Henning Dieterichs <hdieterichs@microsoft.com>
Co-authored-by: Alex Ross <alros@microsoft.com>
Co-authored-by: Joao Moreno <joao.moreno@microsoft.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alex Dima <alexdima@microsoft.com>
Co-authored-by: Logan Ramos <lramos15@gmail.com>
Co-authored-by: Daniel Imms <2193314+Tyriar@users.noreply.github.com>
Co-authored-by: Martin Aeschlimann <martinae@microsoft.com>
Co-authored-by: meganrogge <merogge@microsoft.com>
Co-authored-by: Waqas Ali <waqas.abbasi@outlook.com>
Co-authored-by: Matt Bierner <matb@microsoft.com>
Co-authored-by: Tyler Leonhardt <me@tylerleonhardt.com>
Co-authored-by: Megan Rogge <megan.rogge@microsoft.com>
Co-authored-by: SteVen Batten <sbatten@microsoft.com>
Co-authored-by: Miguel Solorio <miguel.solorio@microsoft.com>
Co-authored-by: Harald Kirschner <hkirschner@microsoft.com>
Co-authored-by: Sandeep Somavarapu <sasomava@microsoft.com>
Co-authored-by: rebornix <penn.lv@gmail.com>
Co-authored-by: Johannes Rieken <johannes.rieken@gmail.com>
Co-authored-by: Hans <416870376@qq.com>
Co-authored-by: Ladislau Szomoru <3372902+lszomoru@users.noreply.github.com>
Co-authored-by: Jackson Kearl <jakearl@microsoft.com>
Co-authored-by: Rob Lourens <roblourens@gmail.com>
Co-authored-by: isidor <inikolic@microsoft.com>
Co-authored-by: Christof Marti <chrmarti@microsoft.com>
Co-authored-by: gregvanl <gregvanl@microsoft.com>
Co-authored-by: Benjamin Tidor <benjamin@tidor.net>
Co-authored-by: Raymond Zhao <raymondzhao@microsoft.com>
Co-authored-by: Henning Dieterichs <notify.henning.dieterichs@live.de>
Co-authored-by: SteVen Batten <6561887+sbatten@users.noreply.github.com>
sbatten added a commit that referenced this issue Mar 24, 2022
@sbatten sbatten closed this as completed Mar 24, 2022
gabritto pushed a commit to gabritto/vscode that referenced this issue Mar 25, 2022
@github-actions github-actions bot locked and limited conversation to collaborators May 8, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
plan-item VS Code - planned item for upcoming
Projects
None yet
Development

No branches or pull requests