mirror of
https://github.com/ChrisTitusTech/winutil.git
synced 2026-08-09 09:31:15 +10:00
Add maximaze button (#4841)
* Add maximize button logic and update assets * Add maximize button with theming * delelte logo * Center and restyle the window control buttons * Fix window state test setup --------- Co-authored-by: aran628 <aran2014+@gmail.com> Co-authored-by: Chris Titus <contact@christitus.com>
This commit is contained in:
co-authored by
aran628
Chris Titus
parent
822003d87f
commit
13a18eeeb2
@@ -5,7 +5,7 @@
|
||||
BeforeAll {
|
||||
$script:repoRoot = (Resolve-Path (Join-Path $PSScriptRoot "..")).Path
|
||||
|
||||
if (-not ("System.Windows.Controls.CheckBox" -as [type])) {
|
||||
if (-not ("Windows.Visibility" -as [type])) {
|
||||
Add-Type @"
|
||||
namespace Windows
|
||||
{
|
||||
@@ -15,7 +15,25 @@ namespace Windows
|
||||
Collapsed
|
||||
}
|
||||
}
|
||||
"@
|
||||
}
|
||||
|
||||
if (-not ("Windows.WindowState" -as [type])) {
|
||||
Add-Type @"
|
||||
namespace Windows
|
||||
{
|
||||
public enum WindowState
|
||||
{
|
||||
Normal,
|
||||
Minimized,
|
||||
Maximized
|
||||
}
|
||||
}
|
||||
"@
|
||||
}
|
||||
|
||||
if (-not ("System.Windows.Controls.CheckBox" -as [type])) {
|
||||
Add-Type @"
|
||||
namespace System.Windows.Controls
|
||||
{
|
||||
public class CheckBox
|
||||
@@ -316,3 +334,32 @@ Describe "Invoke-WPFButton progress cleanup" {
|
||||
Should -Not -Invoke Set-WinUtilTweaksProgressIndicator
|
||||
}
|
||||
}
|
||||
|
||||
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)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user