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

Uniform cursor unfocused rendering. #4441 #4443

Merged
merged 2 commits into from
Mar 23, 2023
Merged

Conversation

tisilent
Copy link
Contributor

Copy link
Member

@Tyriar Tyriar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I remembered when looking at this that we actually did the opposite a while ago, tracking it down I see it was done 3.5 years ago:

This is something that the expected behavior isn't well defined. Personally I think it's better with the rectangle, regardless of cursor style so it's obvious that it's not focused. @jerch what do you think? Should we merge this and close any future complaints as by design?

@Tyriar Tyriar added this to the 5.2.0 milestone Mar 22, 2023
@Tyriar Tyriar self-assigned this Mar 22, 2023
@tisilent
Copy link
Contributor Author

tisilent commented Mar 22, 2023

When I changed, I also felt strange。:flushed:

@jerch
Copy link
Member

jerch commented Mar 22, 2023

Hmm hard to tell, whats the right direction here. Imho there are two aspects that a hollow cursor will show - the current cursor pos + the fact that the terminal in not focused atm.

I cannot think of a good pendant for underline/bar cursors here - still showing the underline/bar loses the unfocused state information for the user. And while not showing any cursor would transport that info, it now lost the position info for the user. So imho the hollow rectangle is the best compromise, since it can show the user both aspects.

I also think that ppl would not mind much, if a terminal they are not actively interacting with would flip the cursor into a hollow block? (Ofc the cursor should not magically appear, if requested to be hidden before by a sequence.)

To sum things up - I think the hollow rectangle is the right way to go for unfocused state.

@boettges
Copy link

This is something that the expected behavior isn't well defined. Personally I think it's better with the rectangle, regardless of cursor style so it's obvious that it's not focused.

@Tyriar also regarding: microsoft/vscode#178379 (comment)

Since applying custom CSS styles is not possible for terminal's content, I think there should be a choice.

Instead of forcing "block" for all inactive terminal instances, I'd suggest a VS Code user setting (for example terminal.integrated.inactiveCursorStyle) with the following options:

  • outline (default)
  • line (non-blinking)
  • underline (non-blinking)
  • none (cursor hidden)

Personally, I've gotten used to the blinking line in regular input modes, while I use both, the block and outline cursor, exclusively in vim's normal and visual mode, respectively.

@Tyriar
Copy link
Member

Tyriar commented Jun 16, 2023

@boettges sounds good, created #4566

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants