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

Feature Request: Distraction free (zen) mode #12940

Closed
ihorskyi opened this issue Sep 28, 2016 · 15 comments
Closed

Feature Request: Distraction free (zen) mode #12940

ihorskyi opened this issue Sep 28, 2016 · 15 comments
Assignees
Labels
feature-request Request for new features or functionality ux User experience issues
Milestone

Comments

@ihorskyi
Copy link

Would be most useful to have it in vscode. IDE/Editors that have it

  • IntelliJ idea/Webstorm
  • Eclipse
  • Atom
  • Sublime Text
@joaomoreno joaomoreno assigned bpasero and bgashler1 and unassigned bpasero and bgashler1 Sep 28, 2016
@joaomoreno joaomoreno added the feature-request Request for new features or functionality label Sep 28, 2016
@joaomoreno joaomoreno added this to the Backlog milestone Sep 28, 2016
@joaomoreno joaomoreno added linux Issues with VS Code on Linux ux User experience issues and removed linux Issues with VS Code on Linux labels Sep 28, 2016
@smuuf
Copy link

smuuf commented Sep 29, 2016

Do you mean something like when you press F11?
That works for me, with version 1.5.3.

@bpasero
Copy link
Member

bpasero commented Sep 29, 2016

@ihorskyi you can hide the sidebar and set the window to full screen (from the view menu). You can even hide the status bar too.

@ihorskyi
Copy link
Author

ihorskyi commented Sep 29, 2016

@smuuf what is F11? If that is a full screen, then it is just a full screen, there are still lot of distracting elements occupying screen real estate.

@bpasero Could you please show the way to hide sidebar so it is not visible at all? And is it possible to hide tab titles?

Picture says a thousand words, here are examples of what I mean:

Atom

Default

atom - default

ZEN mode

atom - zen mode

WebStorm

Default

webstorm - default

Distraction free mode

webstorm - distraction free mode

VSCode

Default

vscode - default

Fullscreen without status bar (Maximum what I could remove from screen)

vscode - with distracting elements

BTW, every editor hides scrollbars by default nowdays

@bpasero
Copy link
Member

bpasero commented Sep 29, 2016

@ihorskyi you could disable tabs but not hide them. you can also not hide the activity bar to the far left currently, but we are thinking about a zen mode because other users asked for it too.

@bpasero bpasero removed this from the Backlog milestone Sep 29, 2016
@bpasero bpasero changed the title Feature Request: Distraction free mode Feature Request: Distraction free (zen) mode Sep 29, 2016
@alefragnani
Copy link

What a coincidence! Last week I decided to create an extension do to exactly that 😄 . But unfortunately I had to pause, because it would be necessary some API improvements. I was thinking/searching the source show to accomplish it.

There are 3 commands that should be updated, to accept a boolean parameter (today are only a toggle mechanism:

        'workbench.action.toggleStatusbarVisibility'
        'workbench.action.toggleSidebarVisibility'
        'workbench.action.toggleFullScreen'

If it is not possible to update the commands to accept parameters, another idea is to add this attributes as User Settings. So, with the new API to update user settings (September release). The same API could be used to hide/show Tabs, Line Numbers, and other distractions.

And also, the possibility to hide the Activity Bar, which already is reported (#1105)

I would be happy to help, if needed

@bpasero
Copy link
Member

bpasero commented Sep 30, 2016

I like that 👍

@TheColorRed
Copy link

TheColorRed commented Oct 5, 2016

Here is how I think it should look (and possibly without line numbers)

  • no tabs
  • no sidebars

Atom and WebStorm both have a lot of padding on the sides which isn't helpful when you have multiple editors side by side, or the editor isn't maximized.

vscode-zen

@panKt
Copy link

panKt commented Oct 5, 2016

@TheColorRed, sorry, but you provided a super lame example, please have your own experience on how the real zen mode works in various apps.

  • No line number (but could be toggled using hotkeys)
  • Git diffs should be visible (but could be toggled using hotkeys)
  • Code errors/warnings should be visible (but could be toggled using hotkeys)
  • No status bar (but could be toggled using hotkeys)
  • No Scrollbars visible until user scrolls
  • No those menu bar (File, Edit, View) - because app is fullscreen by default in zen mode
  • Margin is absolutely essential there. And It automatically adapts to multiple editors
    etc...

@TheColorRed
Copy link

TheColorRed commented Oct 5, 2016

Sorry... Maybe it is called something else then...

Also my issue was closed because it was considered a duplicate of this.

@dilijev
Copy link

dilijev commented Oct 10, 2016

@ihorskyi re: auto-hide scrollbars: VS Code's scrollbar is actually transparent so you can see code under it. I agree that auto-hide when not searching might be nice as an option because it would remove the mild distraction, but there are some reasons to show the scrollbar at all times is that it does at times contain useful information, like indicators to show you where matches to Find queries are, and which lines of source have changed according to version control.

If the ability to auto-hide the scrollbar were added, I'd recommend a three-way configurable option:

editor.showScrollbar: { "always", "whenScrolling", "whenMatching", "never" }

Although, hotkeys/commands/APIs should be able to override the behavior because a user might want to change these quickly and temporarily, like for instance when entering or leaving zen mode.

I think "never" could work because we have the status bar and some editors like VIM work perfectly well without showing a scrollbar by showing percentage through the file your cursor is located at, or showing current and total lines in the status bar. Someone using zen mode might appreciate the ability to hide the scrollbar entirely and navigate through other means (would also help with the VIM plugin, incidentally).

@isidorn
Copy link
Contributor

isidorn commented Nov 16, 2016

We pushed a first version of zen mode which will be available in tomorrow's insiders.
Currently it is possible to enter the zen mode via view menu action or via command pallete - "Toggle Zen Mode":

  • Hides all parts: sidebar, activity bar, status bar, panel
  • Goes into full screen mode

You can get out of full screen by toggling that action again or by going outside of fullscreen mode or by pressing Esc when no other context using escape is there (e.g. no find widget).

Since some users do not want to go into fullScreen mode when going into zen we have provided the setting workbench.fullScreenZenMode which by default is true.

Currently zen mode is not adding any margin to the editor or hiding tabs. For this feel free to open new feature requests where we can debate on the usefulness of this.
Default keybinding is cmd + K + Z.

You can try it out and provide feedback - please note that we prefer new issues for additional feature requests in this area.

@bpasero
Copy link
Member

bpasero commented Nov 16, 2016

untitled

@ihorskyi
Copy link
Author

@isidorn is it possible to hide tab title?

@isidorn
Copy link
Contributor

isidorn commented Nov 17, 2016

@ihorskyi currently not but I am thinking about disabling tabs when in zen mode. So the title would still be there - it would just not be cluttered

@bpasero
Copy link
Member

bpasero commented Nov 17, 2016

That is actually an interesting idea 👍

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
feature-request Request for new features or functionality ux User experience issues
Projects
None yet
Development

No branches or pull requests

10 participants