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 support for "Always on top" mode #6903

Merged
15 commits merged into from
Jul 14, 2020
Merged

Add support for "Always on top" mode #6903

15 commits merged into from
Jul 14, 2020

Conversation

zadjii-msft
Copy link
Member

@zadjii-msft zadjii-msft commented Jul 13, 2020

This PR adds support for always on top mode, via two mechanisms:

  • The global setting alwaysOnTop. When set to true, the window will be
    created in the "topmost" group of windows. Changing this value will
    hot-reload whether the window is in the topmost group.
  • The action toggleAlwaysOnTop, which will toggle the alwaysOnTop
    property at runtime.

Detailed Description of the Pull Request / Additional comments

All "topmost" windows maintain an internal z-ordering relative to one
another, but they're all always above all other "non-topmost" windows.
So multiple Windows Terminal windows which are both alwaysOnTop will
maintain a z-order relative to one another, but they'll all be on top of
all other windows.

Validation Steps Performed

Toggled always on top mode, both in the settings and also at runtime,
and verified that it largely did what I expected.

Closes #3038

…rless in either mode. Now double check NCIW...
… an acceptable known issue, since the alternative is having a white line on top of the window when it loses focus
…ll-just-do-it-myself

# Conflicts:
#	src/cascadia/TerminalApp/ActionAndArgs.cpp
#	src/cascadia/TerminalApp/AppActionHandlers.cpp
#	src/cascadia/TerminalApp/ShortcutActionDispatch.cpp
#	src/cascadia/TerminalApp/ShortcutActionDispatch.h
#	src/cascadia/TerminalApp/ShortcutActionDispatch.idl
#	src/cascadia/TerminalApp/TerminalPage.cpp
#	src/cascadia/TerminalApp/TerminalPage.h
…lwaysOnTop

# Conflicts:
#	doc/cascadia/profiles.schema.json
#	src/cascadia/TerminalApp/ActionAndArgs.cpp
#	src/cascadia/TerminalApp/AppActionHandlers.cpp
#	src/cascadia/TerminalApp/AppLogic.h
#	src/cascadia/TerminalApp/AppLogic.idl
#	src/cascadia/TerminalApp/Resources/en-US/Resources.resw
#	src/cascadia/TerminalApp/ShortcutActionDispatch.cpp
#	src/cascadia/TerminalApp/ShortcutActionDispatch.h
#	src/cascadia/TerminalApp/ShortcutActionDispatch.idl
#	src/cascadia/TerminalApp/TerminalPage.cpp
#	src/cascadia/TerminalApp/TerminalPage.h
#	src/cascadia/TerminalApp/TerminalPage.idl
#	src/cascadia/TerminalApp/defaults.json
#	src/cascadia/WindowsTerminal/AppHost.cpp
#	src/cascadia/WindowsTerminal/AppHost.h
#	src/cascadia/WindowsTerminal/IslandWindow.cpp
#	src/cascadia/WindowsTerminal/IslandWindow.h
#	src/cascadia/WindowsTerminal/NonClientIslandWindow.cpp
@ghost ghost added Area-User Interface Issues pertaining to the user interface of the Console or Terminal Issue-Task It's a feature request, but it doesn't really need a major design. Product-Terminal The new Windows Terminal. labels Jul 13, 2020
@zadjii-msft zadjii-msft mentioned this pull request Jul 13, 2020
3 tasks
src/cascadia/TerminalApp/TerminalPage.cpp Outdated Show resolved Hide resolved
src/cascadia/TerminalApp/TerminalPage.cpp Outdated Show resolved Hide resolved
src/cascadia/TerminalApp/TerminalPage.idl Outdated Show resolved Hide resolved
src/cascadia/WindowsTerminal/IslandWindow.cpp Outdated Show resolved Hide resolved
@ghost ghost added Needs-Author-Feedback The original author of the issue/PR needs to come back and respond to something and removed Needs-Author-Feedback The original author of the issue/PR needs to come back and respond to something labels Jul 13, 2020
Copy link
Member

@DHowett DHowett left a comment

Choose a reason for hiding this comment

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

Let's do this, it rocks

@DHowett DHowett removed their assignment Jul 14, 2020
@DHowett DHowett added the Needs-Second It's a PR that needs another sign-off label Jul 14, 2020
@ghost ghost requested review from miniksa and carlos-zamora July 14, 2020 19:01
@carlos-zamora
Copy link
Member

Don't forget the docs yo

@DHowett
Copy link
Member

DHowett commented Jul 14, 2020

@msftbot merge this in 10 minutes

@ghost ghost added the AutoMerge Marked for automatic merge by the bot when requirements are met label Jul 14, 2020
@ghost
Copy link

ghost commented Jul 14, 2020

Hello @DHowett!

Because you've given me some instructions on how to help merge this pull request, I'll be modifying my merge approach. Here's how I understand your requirements for merging this pull request:

  • I won't merge this pull request until after the UTC date Tue, 14 Jul 2020 21:08:26 GMT, which is in 10 minutes

If this doesn't seem right to you, you can tell me to cancel these instructions and use the auto-merge policy that has been configured for this repository. Try telling me "forget everything I just told you".

@DHowett
Copy link
Member

DHowett commented Jul 14, 2020

@msftbot merge this in 1 minute

@ghost
Copy link

ghost commented Jul 14, 2020

Hello @DHowett!

Because you've given me some instructions on how to help merge this pull request, I'll be modifying my merge approach. Here's how I understand your requirements for merging this pull request:

  • I won't merge this pull request until after the UTC date Tue, 14 Jul 2020 21:01:28 GMT, which is in 1 minute

If this doesn't seem right to you, you can tell me to cancel these instructions and use the auto-merge policy that has been configured for this repository. Try telling me "forget everything I just told you".

@ghost ghost merged commit 3b2ee44 into master Jul 14, 2020
@ghost ghost deleted the dev/migrie/f/3038-alwaysOnTop branch July 14, 2020 21:02
@ghost
Copy link

ghost commented Jul 22, 2020

🎉Windows Terminal Preview v1.2.2022.0 has been released which incorporates this pull request.:tada:

Handy links:

This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-User Interface Issues pertaining to the user interface of the Console or Terminal AutoMerge Marked for automatic merge by the bot when requirements are met Issue-Task It's a feature request, but it doesn't really need a major design. Needs-Second It's a PR that needs another sign-off Product-Terminal The new Windows Terminal.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Feature Request: Always On Top
4 participants