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

Add option for always visible action buttons in side panels. #41414

Conversation

JacksonKearl
Copy link
Contributor

Fixes #37714 by adding a settings config option to keep side menu title bar action buttons visible whenever their panel is expanded.

@msftclas
Copy link

msftclas commented Jan 10, 2018

CLA assistant check
All CLA requirements met.

@JacksonKearl
Copy link
Contributor Author

Touches many files because I needed to inject an IConfigurationService into ViewletPanel. Not sure if there is a way to do this other than passing the service up from all subclasses and letting the base instantiationService.createInstance() handle instantiating the config service.

@JacksonKearl
Copy link
Contributor Author

I am not sure why these changes would cause this test:

test('getUntitledWorkspaceSync', done => {
	let untitled = service.getUntitledWorkspacesSync();
	assert.equal(0, untitled.length);

	return createWorkspace([process.cwd(), os.tmpdir()]).then(untitledOne => {
		untitled = service.getUntitledWorkspacesSync();

		assert.equal(1, untitled.length);
		assert.equal(untitledOne.id, untitled[0].id);

		return createWorkspace([os.tmpdir(), process.cwd()]).then(untitledTwo => {
			untitled = service.getUntitledWorkspacesSync();

			assert.equal(2, untitled.length); // here

			service.deleteUntitledWorkspaceSync(untitledOne);
			untitled = service.getUntitledWorkspacesSync();
			assert.equal(1, untitled.length);

			service.deleteUntitledWorkspaceSync(untitledTwo);
			untitled = service.getUntitledWorkspacesSync();
			assert.equal(0, untitled.length);

			done();
		});
	});
});

to fail with untitled.length being 1 instead of 2 at the marked location, on AppVeyor. Could someone with more knowledge of the ecosystem possibly take a look? Locally (macOS) the tests all pass except

FileSearchEngine Files: *.* exclude with unicode:
     Error: timeout of 5000ms exceeded. Ensure the done() callback is being called in this test.

which also fails for me on master.

@JacksonKearl
Copy link
Contributor Author

Added some comments and now it works. Is the build server known to be a bit temperamental?

@bpasero bpasero assigned joaomoreno and unassigned bpasero Jan 11, 2018
@joaomoreno joaomoreno added this to the Backlog milestone Jan 11, 2018
@bpasero bpasero added layout General VS Code workbench layout issues and removed workbench labels Jan 27, 2018
@joaomoreno joaomoreno merged commit 0d05a4c into microsoft:master Feb 9, 2018
@joaomoreno
Copy link
Member

@JacksonKearl Great job. Yeah, unfortunately there's no way to get around touching all those subclasses. I took care of the merge conflicts and did minor refactoring in the PanelViewlet. Thanks! 🍻

@joaomoreno joaomoreno modified the milestones: Backlog, February 2018 Feb 9, 2018
@joaomoreno
Copy link
Member

Renamed setting to workbench.view.alwaysShowHeaderActions. #44044

@JacksonKearl JacksonKearl deleted the bug/workbench-layout/option-for-always-visible-actions branch March 28, 2018 21:32
@github-actions github-actions bot locked and limited conversation to collaborators Mar 27, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
layout General VS Code workbench layout issues
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Turn off hiding of tree view buttons
4 participants