mirror of
https://github.com/ChrisTitusTech/winutil.git
synced 2026-08-09 17:41:14 +10:00
Restore native window animations and custom caption hit testing (#4888)
* feat: restore native window animations * fix: disable native caption button hit testing * test: remove fake window state assertions
This commit is contained in:
@@ -85,12 +85,12 @@ function Invoke-WPFButton {
|
||||
}
|
||||
}
|
||||
"WPFCloseButton" {$sync.Form.Close(); Write-Host "Bye bye!"}
|
||||
"WPFMinimizeButton" {$sync.Form.WindowState = [Windows.WindowState]::Minimized}
|
||||
"WPFMinimizeButton" {[Windows.SystemCommands]::MinimizeWindow($sync.Form)}
|
||||
"WPFMaximizeButton" {
|
||||
if ($sync.Form.WindowState -eq [Windows.WindowState]::Normal) {
|
||||
$sync.Form.WindowState = [Windows.WindowState]::Maximized
|
||||
[Windows.SystemCommands]::MaximizeWindow($sync.Form)
|
||||
} else {
|
||||
$sync.Form.WindowState = [Windows.WindowState]::Normal
|
||||
[Windows.SystemCommands]::RestoreWindow($sync.Form)
|
||||
}
|
||||
}
|
||||
"WPFselectedAppsButton" {$sync.selectedAppsPopup.IsOpen = -not $sync.selectedAppsPopup.IsOpen}
|
||||
|
||||
@@ -445,31 +445,3 @@ Describe "Invoke-WPFButton progress cleanup" {
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Invoke-WPFButton window state" {
|
||||
BeforeEach {
|
||||
New-WinUtilUiStateTestContext
|
||||
$script:sync.ProcessRunning = $true
|
||||
$script:sync.Form = [pscustomobject]@{
|
||||
WindowState = [Windows.WindowState]::Normal
|
||||
}
|
||||
}
|
||||
|
||||
AfterEach {
|
||||
Remove-Variable -Name sync -Scope Script -ErrorAction SilentlyContinue
|
||||
Remove-Variable -Name sync -Scope Global -ErrorAction SilentlyContinue
|
||||
}
|
||||
|
||||
It "maximizes a normal window" {
|
||||
Invoke-WPFButton -Button "WPFMaximizeButton"
|
||||
|
||||
$script:sync.Form.WindowState | Should -Be ([Windows.WindowState]::Maximized)
|
||||
}
|
||||
|
||||
It "restores a maximized window" {
|
||||
$script:sync.Form.WindowState = [Windows.WindowState]::Maximized
|
||||
|
||||
Invoke-WPFButton -Button "WPFMaximizeButton"
|
||||
|
||||
$script:sync.Form.WindowState | Should -Be ([Windows.WindowState]::Normal)
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -252,10 +252,10 @@ $sync["Form"].Add_MouseDoubleClick({
|
||||
if ($_.OriginalSource.Name -eq "NavDockPanel" -or
|
||||
$_.OriginalSource.Name -eq "GridBesideNavDockPanel") {
|
||||
if ($sync["Form"].WindowState -eq [Windows.WindowState]::Normal) {
|
||||
$sync["Form"].WindowState = [Windows.WindowState]::Maximized
|
||||
[Windows.SystemCommands]::MaximizeWindow($sync.Form)
|
||||
}
|
||||
else{
|
||||
$sync["Form"].WindowState = [Windows.WindowState]::Normal
|
||||
[Windows.SystemCommands]::RestoreWindow($sync.Form)
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@
|
||||
MinHeight="600"
|
||||
Title="WinUtil">
|
||||
<WindowChrome.WindowChrome>
|
||||
<WindowChrome CaptionHeight="0" CornerRadius="10"/>
|
||||
<WindowChrome CaptionHeight="0" CornerRadius="10" UseAeroCaptionButtons="False"/>
|
||||
</WindowChrome.WindowChrome>
|
||||
<Window.Resources>
|
||||
<Style TargetType="ToolTip">
|
||||
|
||||
Reference in New Issue
Block a user