Vscode: Support `scm.providers.visible` setting

Created on 8 Mar 2019  路  20Comments  路  Source: microsoft/vscode

Issue Type: Bug

after today nightly release, i cant move he git panel.
it is stuck at close the top most part of the screen, only leaving abotu 8 repos showing.

the funny thing is that for several of the past releases it used to open at the very bottom and always made me resize to be able to see the diffs.

VS Code version: Code - Insiders 1.33.0-insider (9b849d9de7168eb4f685823bf9b9e27a0a8dae74, 2019-03-08T06:57:39.083Z)
OS version: Darwin x64 18.5.0


System Info

|Item|Value|
|---|---|
|CPUs|Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz (8 x 2800)|
|GPU Status|2d_canvas: enabled
checker_imaging: disabled_off
flash_3d: enabled
flash_stage3d: enabled
flash_stage3d_baseline: enabled
gpu_compositing: enabled
multiple_raster_threads: enabled_on
native_gpu_memory_buffers: enabled
rasterization: enabled
surface_synchronization: enabled_on
video_decode: enabled
webgl: enabled
webgl2: enabled|
|Load (avg)|7, 4, 3|
|Memory (System)|16.00GB (0.24GB free)|
|Process Argv||
|Screen Reader|no|
|VM|0%|

Extensions (13)

Extension|Author (truncated)|Version
---|---|---
markdown-toc|Ala|1.5.6
spellright|ban|3.0.28
vscode-icontheme-nomo-dark|be5|1.3.6
better-toml|bun|0.3.2
vscode-pull-request-github|Git|0.5.0
terraform|mau|1.3.7
markdown-shortcuts|mdi|0.11.0
prettify-json|moh|0.0.3
python|ms-|2019.2.5558
vscode-docker|Pet|0.5.2
vscode-icons|rob|8.2.0
vscode-nginx|sha|0.6.0
sort-lines|Tyr|1.8.0


feature-request scm verification-needed verified

All 20 comments

The SCM view went through some refactorings. I'll add a setting that will let you control whether you want to manually resize that view.

Just to confirm, you're talking about the view which shows all repositories in a list?

@joaomoreno correct.

Question: why shouldn't it be manual to begin with ?

In the Explorer viewlet, there's the section of Open Editors. That one isn't manual and serves a similar purpose.

yeah, that one should be ok.. i dont expect anyone to have 100 files open :p

soooooo i went to test that theory ahha
the Open Editors should either be scrollable and/or be resizable , no?
never bothered me, but now you pointed it to me :|

:laughing:

@joaomoreno let me know when a fix goes to the nightly build so I can test.
it's kinda annoying at the moment, but the perils of running nightly and testing features :)

Just pushed a scm.providers.visible setting which allows you define the max height of that view in terms of number of repositories. When set to 0, it sets the view to be resizeable.

Perfect.
Will test tomorrow cheers

@joaomoreno this is far from fixed... or a least there is another bug in it.

although now i can resize by adding "scm.providers.visible": 0,
now clicking in a repository, it makes the bottom panel jump around, some cases collapsing, some jumping to the top.

if it helps , here is my settings.json

{
    "breadcrumbs.enabled": false,
    "docker.dockerComposeDetached": false,
    "docker.showExplorer": false,
    "editor.folding": false,
    "editor.foldingStrategy": "indentation",
    "editor.fontSize": 14,
    "editor.formatOnSave": true,
    "editor.glyphMargin": false,
    "editor.insertSpaces": false,
    "editor.minimap.enabled": false,
    "editor.renderWhitespace": "all",
    "editor.showFoldingControls": "always",
    "editor.tabCompletion": "on",
    "editor.trimAutoWhitespace": true,
    "editor.wordWrap": "on",
    "files.autoSave": "afterDelay",
    "files.autoSaveDelay": 1000,
    "files.eol": "\n",
    "git.alwaysSignOff": true,
    "git.autofetch": true,
    "git.confirmSync": false,
    "git.detectSubmodulesLimit": 100,
    "git.enableSmartCommit": true,
    "git.fetchOnPull": true,
    "githubPullRequests.logLevel": "off",
    "githubPullRequests.telemetry.enabled": false,
    "json.format.enable": true,
    "markdown.preview.scrollEditorWithPreview": true,
    "python.pythonPath": "/usr/local/bin/python3",
    "telemetry.enableCrashReporter": false,
    "telemetry.enableTelemetry": false,
    "terraform.telemetry.enabled": false,
    "vsicons.projectDetection.disableDetect": true,
    "window.newWindowDimensions": "fullscreen",
    "window.restoreFullscreen": true,
    "window.restoreWindows": "all",
    "window.zoomLevel": 0,
    "workbench.editor.labelFormat": "default",
    "workbench.iconTheme": "vscode-icons",
    "workbench.startupEditor": "newUntitledFile",
    "workbench.statusBar.feedback.visible": false,
    "scm.providers.visible": 0,
    "files.associations": {
        "Dockerfile-*": "dockerfile",
        "*.yml.*": "yaml",
        "*.tpl": "shellscript",
        "*.tf": "terraform",
        "*.tf_": "terraform",
        "*.tf.override": "terraform",
    },
    "[terraform]": {
        "editor.formatOnSave": true
    },
    "terraform.format": {
        "enable": true,
        "formatOnSave": true
    },
    "terraform.path": "/usr/local/bin/terraform",
    "terraform.lintPath": "/usr/local/bin/tflint",
    "terraform.codelens.enabled": true,
    "terraform.indexing": {
        "enabled": false,
        "liveIndexing": false,
        "delay": 500,
        "exclude": [
            ".terraform/**/*",
            "**/.terraform/**/*"
        ]
    },
    "spellright.language": [
        "en"
    ],
    "spellright.documentTypes": [
        "markdown",
        "latex"
    ]
}

Yup. SCM panels work now as contributable views, so they have inherent view size memory. When we switch between them, the views infrastructure doesn't know whihc view has priority to reset its size.

Given this, and that the Open Editors view has been working without this resize feature for a long time, I will remove the fact that you can set it to 0 to manually resize and will ask you to give it a try for a month.

If it still annoys you in a month from now, we'll address it. Remember that with the setting, you can choose how many repositories you want to see at once. The idea here is to minimize the time you spend on resizing views and everything should work without much effort on your part.

For a bit of context
We have half hundred git submodules in that repo, which is why it is so long

The resize of the changes panel is extremely useful cause sometimes you have a few diff files, sometimes several dozens.
Sometimes you even want to avoid committing local temporary changes, so that panel can grow quite a bit.

And given the size of number of repositories, one has to scroll a lot to switch between repos to commit or change branches

And this affects different engineers in our team in different ways cause all have different needs.

I suspect all vscode users will have their particular needs too.

A static size is so inefficient.

Especially coming from the previous behaviour on the stable version that just worked

Regarding the Open Editors panel, indeed I didn't notice it until you brought it up. But honestly I only ever use it to compare files.
But scm I do use extensively, and many many many times a day, and it behaviour is one of the primary reasons why I use vscode cause it makes so ease to manage such a big mono repo

So... I guess your requirement is: the sash should stay as it is, as you switch from repository to repository?

I love all these little names you call stuff that I don't know about ehe
If you are referring to the bottom panel that lists file changes, I would say I'm rather comfortable with a manually set size (especially since I also switch vscode across multiple size screens, so it should be DPI based)

Unless it is smart enough to list a good portion of the panel and still a large view of the repos

With your fix, setting at 0, it would most of the times extend fully, blocking access to repos.
Click another repo, and it would almost hide.

That behavior is extremely unpredictable for us humans 馃槉 and causes frustration.

I'm willing to try a few more approaches in order to make the product better in the name of better UX.

At the same time, I was rather comfortable with the original behaviour.

I might also be one of the few that uses such a large scm so comfortably, as I see many other vscode users struggling with switching repos when more than one is available (the bottom bar and the side scm drop down gets confused when a different one is selected)

The sash is the handle which you pick up with the mouse and move up and down to resize the views.

I have to say, I feel extremely humble for such a good response time and dedication from the vscode team to the issues I've reported.
Makes me enjoy testing the nightly builds and provide feedback

Just brought back the 0 behavior and added a better job at preserving the repository panel's height when switching. Let me know how it goes.

will test.
shall i remove the scm preference?

If you want to manually resize it, you must set it to 0.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

DovydasNavickas picture DovydasNavickas  路  3Comments

v-pavanp picture v-pavanp  路  3Comments

shanalikhan picture shanalikhan  路  3Comments

omidgolparvar picture omidgolparvar  路  3Comments

philipgiuliani picture philipgiuliani  路  3Comments