diff --git a/src/JiraTimeBot.Ui/JiraTimeBot.Ui.csproj b/src/JiraTimeBot.Ui/JiraTimeBot.Ui.csproj index 5223644..205f17c 100644 --- a/src/JiraTimeBot.Ui/JiraTimeBot.Ui.csproj +++ b/src/JiraTimeBot.Ui/JiraTimeBot.Ui.csproj @@ -61,6 +61,8 @@ + + @@ -124,19 +126,12 @@ MainWindow.xaml Code - - Designer - MSBuild:Compile - Designer MSBuild:Compile - - Settings.xaml - SettingsPage.xaml @@ -181,6 +176,10 @@ - + + + Always + + \ No newline at end of file diff --git a/src/JiraTimeBot.Ui/Views/MainWindow.xaml b/src/JiraTimeBot.Ui/Views/MainWindow.xaml index 5cca4e0..ef5f600 100644 --- a/src/JiraTimeBot.Ui/Views/MainWindow.xaml +++ b/src/JiraTimeBot.Ui/Views/MainWindow.xaml @@ -9,7 +9,9 @@ SizeToContent="WidthAndHeight" d:DataContext="{d:DesignInstance viewModels:ApplicationViewModel}" Title="ApplicationWindow" - ShowInTaskbar="True" d:DesignWidth="517.579" d:DesignHeight="260.977" + Icon="../app.ico" + ShowInTaskbar="True" + d:DesignWidth="517.579" d:DesignHeight="260.977" > diff --git a/src/JiraTimeBot.Ui/Views/MainWindow.xaml.cs b/src/JiraTimeBot.Ui/Views/MainWindow.xaml.cs index 97812cb..a9d7719 100644 --- a/src/JiraTimeBot.Ui/Views/MainWindow.xaml.cs +++ b/src/JiraTimeBot.Ui/Views/MainWindow.xaml.cs @@ -1,15 +1,38 @@ -namespace JiraTimeBot.Ui +using System; +using System.Drawing; +using System.Windows; +using System.Windows.Forms; + +namespace JiraTimeBot.Ui { /// /// Interaction logic for MainWindow.xaml /// public partial class MainWindow { - - public MainWindow() { InitializeComponent(); + + NotifyIcon trayIcon = new System.Windows.Forms.NotifyIcon(); + trayIcon.Icon = new Icon("app.ico"); + trayIcon.Visible = true; + trayIcon.DoubleClick += (sender, args) => + { + Show(); + ShowInTaskbar = true; + WindowState = WindowState.Normal; + }; + } + + protected override void OnStateChanged(EventArgs e) + { + if (WindowState == WindowState.Minimized) + { + ShowInTaskbar = false; + Hide(); + } + base.OnStateChanged(e); } } } diff --git a/src/JiraTimeBot.Ui/Views/Settings.xaml b/src/JiraTimeBot.Ui/Views/Settings.xaml deleted file mode 100644 index 24fda2b..0000000 --- a/src/JiraTimeBot.Ui/Views/Settings.xaml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - diff --git a/src/JiraTimeBot.Ui/Views/Settings.xaml.cs b/src/JiraTimeBot.Ui/Views/Settings.xaml.cs deleted file mode 100644 index ad3e528..0000000 --- a/src/JiraTimeBot.Ui/Views/Settings.xaml.cs +++ /dev/null @@ -1,28 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows; -using System.Windows.Controls; -using System.Windows.Data; -using System.Windows.Documents; -using System.Windows.Input; -using System.Windows.Media; -using System.Windows.Media.Imaging; -using System.Windows.Navigation; -using System.Windows.Shapes; - -namespace JiraTimeBot.Ui -{ - /// - /// Interaction logic for Settings.xaml - /// - public partial class Settings : UserControl - { - public Settings() - { - InitializeComponent(); - } - } -} diff --git a/src/JiraTimeBot.Ui/app.ico b/src/JiraTimeBot.Ui/app.ico new file mode 100644 index 0000000..910d597 Binary files /dev/null and b/src/JiraTimeBot.Ui/app.ico differ