mirror of
https://github.com/sourcegit-scm/sourcegit.git
synced 2024-12-23 20:47:25 -08:00
style<Window>: show progress bar in taskbar while popup is running
This commit is contained in:
parent
951a38d445
commit
905531f2db
4 changed files with 19 additions and 1 deletions
|
@ -12,6 +12,11 @@
|
|||
Title="{DynamicResource Text.Clone}"
|
||||
Width="500" SizeToContent="Height"
|
||||
ResizeMode="NoResize">
|
||||
|
||||
<Window.TaskbarItemInfo>
|
||||
<TaskbarItemInfo ProgressState="None"/>
|
||||
</Window.TaskbarItemInfo>
|
||||
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="28"/>
|
||||
|
|
|
@ -4,6 +4,7 @@ using System.IO;
|
|||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Shell;
|
||||
|
||||
namespace SourceGit.Views {
|
||||
|
||||
|
@ -35,6 +36,7 @@ namespace SourceGit.Views {
|
|||
if (Validation.GetHasError(edit)) return;
|
||||
}
|
||||
|
||||
TaskbarItemInfo.ProgressState = TaskbarItemProgressState.Indeterminate;
|
||||
progress.Visibility = Visibility.Visible;
|
||||
processing.IsAnimating = true;
|
||||
|
||||
|
@ -78,6 +80,7 @@ namespace SourceGit.Views {
|
|||
return true;
|
||||
});
|
||||
|
||||
TaskbarItemInfo.ProgressState = TaskbarItemProgressState.None;
|
||||
progress.Visibility = Visibility.Collapsed;
|
||||
processing.IsAnimating = false;
|
||||
if (succ) {
|
||||
|
|
|
@ -16,6 +16,11 @@
|
|||
Height="{Binding Source={x:Static models:Preference.Instance}, Path=Window.Height, Mode=TwoWay}"
|
||||
WindowState="{Binding Source={x:Static models:Preference.Instance}, Path=Window.State, Mode=TwoWay}"
|
||||
Closing="OnClosing">
|
||||
|
||||
<Window.TaskbarItemInfo>
|
||||
<TaskbarItemInfo ProgressState="None"/>
|
||||
</Window.TaskbarItemInfo>
|
||||
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="{Binding ElementName=me, Path=WindowState, Converter={StaticResource WindowStateToTitleBarHeight}}"/>
|
||||
|
|
|
@ -10,6 +10,7 @@ using System.Windows.Controls.Primitives;
|
|||
using System.Windows.Input;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Shell;
|
||||
|
||||
namespace SourceGit.Views.Widgets {
|
||||
|
||||
|
@ -154,14 +155,18 @@ namespace SourceGit.Views.Widgets {
|
|||
isPopupLocked = true;
|
||||
popupProgressMask.Visibility = Visibility.Visible;
|
||||
processing.IsAnimating = true;
|
||||
App.Current.MainWindow.TaskbarItemInfo.ProgressState = TaskbarItemProgressState.Indeterminate;
|
||||
|
||||
var task = curPopup.Start();
|
||||
if (task != null) {
|
||||
var close = await task;
|
||||
App.Current.MainWindow.TaskbarItemInfo.ProgressState = TaskbarItemProgressState.None;
|
||||
if (close) {
|
||||
ClosePopups(true);
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
App.Current.MainWindow.TaskbarItemInfo.ProgressState = TaskbarItemProgressState.None;
|
||||
}
|
||||
|
||||
isPopupLocked = false;
|
||||
|
|
Loading…
Reference in a new issue