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

a borderless window alternative #1156

Merged
merged 31 commits into from
Mar 19, 2014
Merged

Conversation

punker76
Copy link
Member

this pr is about changing the current borderless behavior

why?

  • we got many issues with our current solution, because we use AllowsTransparency="True" for the MetroWindow
  • AllowsTransparency="True" breaks the ClearTypeHint mechanism
  • with AllowsTransparency="True" no WinForms/WebBrowser works
  • AllowsTransparency="True" is a performance issue, more info here and here Transparent Windows in WPF

so what is the benefit and what is changed

  • no more AllowsTransparency="True"
  • no Airspace Decorator Integration
  • use shell WindowChrome for custom window
  • WinForms/WebBrowser should work (browser can be tested in demo app)
  • ClearTypeHint works
  • better support for SizeToContent
  • the Window animation is moved to the content and not for the hole window
  • introduce NonActiveBorderBrush and NonActiveGlowBrush

i hope this solution works even better the old one

and most this could fix

works but must be tested by other users with different monitor configurations

  • maximising with IgnoreTaskbarOnMaximize or UseNoneWindowStyle, the taskbar should hide

/cc @Amrykid @flagbug

- remove BorderlessWindowBehavior usage
- remove MetroContentControl, because animating the window content gives
us nasty black flickering
- IsHitTestVisibleInChromeProperty for title bar objects
@QuantumDeveloper
Copy link
Contributor

@punker76 must have 👍

@punker76 punker76 self-assigned this Mar 14, 2014
@punker76 punker76 added this to the v0.13 milestone Mar 14, 2014
@flagbug
Copy link
Member

flagbug commented Mar 14, 2014

The window is somehow cut off on the right side on my left monitor when maximized

mahapps-cut-off

@punker76
Copy link
Member Author

@flagbug thx

@punker76
Copy link
Member Author

@flagbug you can retry testing maximize

for dragging maximized window from top
@flagbug
Copy link
Member

flagbug commented Mar 14, 2014

@punker76 Works now 👍

@QuantumDeveloper
Copy link
Contributor

@punker76 always wanted to ask. Does this window will work finw with hi dpi displays? like 2K and 4K?

@punker76
Copy link
Member Author

@QuantumDeveloper i hope so, can test it out on my tv...

@QuantumDeveloper
Copy link
Contributor

@punker76 yeah, test it please. 4k displays will become popular soon. So, We need support such resolutions.

@AzureKitsune
Copy link
Member

Works for me. 👍

@punker76
Copy link
Member Author

@flagbug can you check my latest changes in #1156 with your multimonitor configuration? thx!

@flagbug
Copy link
Member

flagbug commented Mar 15, 2014

@punker76 IgnoreTaskbarOnMaximize doesn't work, everything else seems to be fine

@flagbug
Copy link
Member

flagbug commented Mar 17, 2014

I have one question though: Is there a reason why we mark BorderlessWindowBehavior as obsolete and not just overwrite the current code?

@punker76
Copy link
Member Author

@100GPing100 @Tide @QuantumDeveloper @flagbug @Amrykid @thoemmi @shiftkey
next version to test with maximized window and hidden taskbar! now using modified version of wpf shell thx :-D

@zeluisping
Copy link
Contributor

I never expected to see a recent shiftkey mention. Also 👍

@punker76 punker76 changed the title [WIP] [RFC] a borderless window alternative [RFC] a borderless window alternative Mar 18, 2014
@flagbug
Copy link
Member

flagbug commented Mar 18, 2014

@punker76 IgnoreTaskBarOnMaximize still doesn't work 😕

@punker76
Copy link
Member Author

@flagbug nice :-( which system? os? oh man, wtf... on my win 7 64 bit two monitors, all works fine

@flagbug
Copy link
Member

flagbug commented Mar 18, 2014

@punker76 Windows 8.1 64bit

Are you sure we are talking about the same behavior? If IgnoreTaskBarOnMaximize is set to true, the window, when maximized, should overlap the taskbar

@punker76
Copy link
Member Author

@flagbug yes, it should overlap/hide the taskbar. and on my win 7 it works...

@zeluisping
Copy link
Contributor

Oh wait, it works for @punker76. I have Windows 8 64bit, I can test it.

@punker76 punker76 changed the title [RFC] a borderless window alternative a borderless window alternative Mar 19, 2014
@AzureKitsune AzureKitsune mentioned this pull request Mar 19, 2014
punker76 added a commit that referenced this pull request Mar 19, 2014
@punker76 punker76 merged commit fa26a4a into master Mar 19, 2014
@flagbug flagbug deleted the punker76-borderless-window-alternative branch October 30, 2014 16:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

7 participants