├── .gitignore ├── Build ├── DevCrew.ToastNotifications_TemporaryKey.snk ├── generate-nuget.ps1 └── nuget.exe ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── Docs ├── Configuration.md ├── CustomNotificatios.md ├── Migration.md ├── ReleaseNotes.md └── StronglyNamedAssemblies.md ├── ISSUE_TEMPLATE.md ├── Media ├── demo.gif ├── project-icon.ico └── project-icon.png ├── README.md ├── Src ├── Examples │ ├── BasicUsageExample │ │ ├── App.config │ │ ├── App.xaml │ │ ├── App.xaml.cs │ │ ├── BasicUsageExample.csproj │ │ ├── MainWindow.xaml │ │ ├── MainWindow.xaml.cs │ │ ├── Properties │ │ │ ├── AssemblyInfo.cs │ │ │ ├── Resources.Designer.cs │ │ │ ├── Resources.resx │ │ │ ├── Settings.Designer.cs │ │ │ └── Settings.settings │ │ ├── ToastViewModel.cs │ │ └── toast-notifications-icon.ico │ ├── ConfigurationExample │ │ ├── App.config │ │ ├── App.xaml │ │ ├── App.xaml.cs │ │ ├── ConfigurationExample.csproj │ │ ├── MainViewModel.cs │ │ ├── MainWindow.xaml │ │ ├── MainWindow.xaml.cs │ │ ├── Properties │ │ │ ├── AssemblyInfo.cs │ │ │ ├── Resources.Designer.cs │ │ │ ├── Resources.resx │ │ │ ├── Settings.Designer.cs │ │ │ └── Settings.settings │ │ ├── Utilities │ │ │ ├── EnumBooleanConverter.cs │ │ │ ├── NotificationLifetimeType.cs │ │ │ └── PositionProviderType.cs │ │ └── toast-notifications-icon.ico │ ├── CustomNotificationsExample │ │ ├── App.config │ │ ├── App.xaml │ │ ├── App.xaml.cs │ │ ├── CustomCommand │ │ │ ├── CustomCommandDisplayPart.xaml │ │ │ ├── CustomCommandDisplayPart.xaml.cs │ │ │ ├── CustomCommandExtensions.cs │ │ │ └── CustomCommandNotification.cs │ │ ├── CustomInput │ │ │ ├── CustomCommandExtensions.cs │ │ │ ├── CustomInputDisplayPart.xaml │ │ │ ├── CustomInputDisplayPart.xaml.cs │ │ │ └── CustomInputNotification.cs │ │ ├── CustomMessage │ │ │ ├── CustomDisplayPart.xaml │ │ │ ├── CustomDisplayPart.xaml.cs │ │ │ ├── CustomMessageExtensions.cs │ │ │ └── CustomNotification.cs │ │ ├── CustomNotificationsExample.csproj │ │ ├── MahAppsNotification │ │ │ ├── MahAppsDisplayPart.xaml │ │ │ ├── MahAppsDisplayPart.xaml.cs │ │ │ ├── MahAppsNotification.cs │ │ │ └── MahAppsNotificationExtensions.cs │ │ ├── MainWindow.xaml │ │ ├── MainWindow.xaml.cs │ │ ├── Properties │ │ │ ├── AssemblyInfo.cs │ │ │ ├── Resources.Designer.cs │ │ │ ├── Resources.resx │ │ │ ├── Settings.Designer.cs │ │ │ └── Settings.settings │ │ ├── Utilities │ │ │ └── RelayCommand.cs │ │ └── packages.config │ └── DotNetCoreUsageExample │ │ ├── App.xaml │ │ ├── App.xaml.cs │ │ ├── DotNetCoreUsageExample.csproj │ │ ├── MainWindow.xaml │ │ ├── MainWindow.xaml.cs │ │ ├── ToastViewModel.cs │ │ └── toast-notifications-icon.ico ├── ToastNotifications.Messages │ ├── Core │ │ └── MessageBase.cs │ ├── Error │ │ ├── ErrorDisplayPart.xaml │ │ ├── ErrorDisplayPart.xaml.cs │ │ └── ErrorMessage.cs │ ├── ErrorExtensions.cs │ ├── Information │ │ ├── InformationDisplayPart.xaml │ │ ├── InformationDisplayPart.xaml.cs │ │ └── InformationMessage.cs │ ├── InformationExtensions.cs │ ├── Properties │ │ ├── AssemblyInfo.cs │ │ ├── Resources.Designer.cs │ │ ├── Resources.resx │ │ ├── Settings.Designer.cs │ │ └── Settings.settings │ ├── Success │ │ ├── SuccessDisplayPart.xaml │ │ ├── SuccessDisplayPart.xaml.cs │ │ └── SuccessMessage.cs │ ├── SuccessExtensions.cs │ ├── Themes │ │ └── Default.xaml │ ├── ToastNotifications.Messages.csproj │ ├── ToastNotifications.Messages.nuspec │ ├── Warning │ │ ├── WarningDisplayPart.xaml │ │ ├── WarningDisplayPart.xaml.cs │ │ └── WarningMessage.cs │ ├── WarningExtensions.cs │ └── toast-notifications-icon.ico ├── ToastNotifications.sln └── ToastNotifications │ ├── Core │ ├── DisplayOptions.cs │ ├── EjectDirection.cs │ ├── INotification.cs │ ├── INotificationAnimator.cs │ ├── IPositionProvider.cs │ ├── MessageOptions.cs │ ├── NotificationBase.cs │ ├── NotificationDisplayPart.cs │ ├── NotifierConfiguration.cs │ └── WindowsTaskBarLocation.cs │ ├── Display │ ├── NotificationAnimator.cs │ ├── NotificationsDisplaySupervisor.cs │ ├── NotificationsItemsControl.cs │ ├── NotificationsWindow.xaml │ └── NotificationsWindow.xaml.cs │ ├── Events │ ├── AllowedSourcesInputEventHandler.cs │ ├── BlockAllKeyInputEventHandler.cs │ ├── DelegatedInputEventHandler.cs │ └── IKeyboardEventHandler.cs │ ├── Lifetime │ ├── Clear │ │ ├── ClearAll.cs │ │ ├── ClearByMessage.cs │ │ ├── ClearByTag.cs │ │ ├── ClearFirst.cs │ │ ├── ClearLast.cs │ │ └── IClearStrategy.cs │ ├── CloseNotificationEventArgs.cs │ ├── CountBasedLifetimeSupervisor.cs │ ├── INotificationsLifeTimeSupervisor.cs │ ├── MaximumNotificationCount.cs │ ├── NotificationMetaData.cs │ ├── NotificationsList.cs │ ├── ShowNotificationEventArgs.cs │ └── TimeAndCountBasedLifetimeSupervisor.cs │ ├── Notifier.cs │ ├── Position │ ├── ControlPositionProvider.cs │ ├── Corner.cs │ ├── GdiPrimaryScreenPositionProvider.cs │ ├── PositionExtensions.cs │ ├── PrimaryScreenPositionProvider.cs │ └── WindowPositionProvider.cs │ ├── Properties │ ├── AssemblyInfo.cs │ ├── Resources.Designer.cs │ ├── Resources.resx │ ├── Settings.Designer.cs │ └── Settings.settings │ ├── ToastNotifications.csproj │ ├── ToastNotifications.nuspec │ ├── Utilities │ ├── DateTimeNow.cs │ ├── DateTimeProvider.cs │ ├── DelayAction.cs │ ├── IDateTimeProvider.cs │ ├── IInterval.cs │ ├── Interval.cs │ ├── VisualTreeHelper.cs │ └── WinApi.cs │ ├── readme.txt │ └── toast-notifications-icon.ico └── license /.gitignore: -------------------------------------------------------------------------------- 1 | ## Ignore Visual Studio temporary files, build results, and 2 | ## files generated by popular Visual Studio add-ons. 3 | 4 | # User-specific files 5 | *.suo 6 | *.user 7 | *.userosscache 8 | *.sln.docstates 9 | 10 | # User-specific files (MonoDevelop/Xamarin Studio) 11 | *.userprefs 12 | 13 | # Build results 14 | [Dd]ebug/ 15 | [Dd]ebugPublic/ 16 | [Rr]elease/ 17 | [Rr]eleases/ 18 | x64/ 19 | x86/ 20 | bld/ 21 | [Bb]in/ 22 | [Oo]bj/ 23 | [Ll]og/ 24 | 25 | # Visual Studio 2015 cache/options directory 26 | .vs/ 27 | # Uncomment if you have tasks that create the project's static files in wwwroot 28 | #wwwroot/ 29 | 30 | # MSTest test Results 31 | [Tt]est[Rr]esult*/ 32 | [Bb]uild[Ll]og.* 33 | 34 | # NUNIT 35 | *.VisualState.xml 36 | TestResult.xml 37 | 38 | # Build Results of an ATL Project 39 | [Dd]ebugPS/ 40 | [Rr]eleasePS/ 41 | dlldata.c 42 | 43 | # DNX 44 | project.lock.json 45 | artifacts/ 46 | 47 | *_i.c 48 | *_p.c 49 | *_i.h 50 | *.ilk 51 | *.meta 52 | *.obj 53 | *.pch 54 | *.pdb 55 | *.pgc 56 | *.pgd 57 | *.rsp 58 | *.sbr 59 | *.tlb 60 | *.tli 61 | *.tlh 62 | *.tmp 63 | *.tmp_proj 64 | *.log 65 | *.vspscc 66 | *.vssscc 67 | .builds 68 | *.pidb 69 | *.svclog 70 | *.scc 71 | 72 | # Chutzpah Test files 73 | _Chutzpah* 74 | 75 | # Visual C++ cache files 76 | ipch/ 77 | *.aps 78 | *.ncb 79 | *.opendb 80 | *.opensdf 81 | *.sdf 82 | *.cachefile 83 | 84 | # Visual Studio profiler 85 | *.psess 86 | *.vsp 87 | *.vspx 88 | *.sap 89 | 90 | # TFS 2012 Local Workspace 91 | $tf/ 92 | 93 | # Guidance Automation Toolkit 94 | *.gpState 95 | 96 | # ReSharper is a .NET coding add-in 97 | _ReSharper*/ 98 | *.[Rr]e[Ss]harper 99 | *.DotSettings.user 100 | 101 | # JustCode is a .NET coding add-in 102 | .JustCode 103 | 104 | # TeamCity is a build add-in 105 | _TeamCity* 106 | 107 | # DotCover is a Code Coverage Tool 108 | *.dotCover 109 | 110 | # NCrunch 111 | _NCrunch_* 112 | .*crunch*.local.xml 113 | nCrunchTemp_* 114 | 115 | # MightyMoose 116 | *.mm.* 117 | AutoTest.Net/ 118 | 119 | # Web workbench (sass) 120 | .sass-cache/ 121 | 122 | # Installshield output folder 123 | [Ee]xpress/ 124 | 125 | # DocProject is a documentation generator add-in 126 | DocProject/buildhelp/ 127 | DocProject/Help/*.HxT 128 | DocProject/Help/*.HxC 129 | DocProject/Help/*.hhc 130 | DocProject/Help/*.hhk 131 | DocProject/Help/*.hhp 132 | DocProject/Help/Html2 133 | DocProject/Help/html 134 | 135 | # Click-Once directory 136 | publish/ 137 | 138 | # Publish Web Output 139 | *.[Pp]ublish.xml 140 | *.azurePubxml 141 | # Comment the next line if you want to checkin your web deploy settings 142 | # but database connection strings (with potential passwords) will be unencrypted 143 | *.pubxml 144 | *.publishproj 145 | 146 | # NuGet Packages 147 | *.nupkg 148 | # The packages folder can be ignored because of Package Restore 149 | **/packages/* 150 | # except build/, which is used as an MSBuild target. 151 | !**/packages/build/ 152 | # Uncomment if necessary however generally it will be regenerated when needed 153 | #!**/packages/repositories.config 154 | # NuGet v3's project.json files produces more ignoreable files 155 | *.nuget.props 156 | *.nuget.targets 157 | 158 | # Microsoft Azure Build Output 159 | csx/ 160 | *.build.csdef 161 | 162 | # Microsoft Azure Emulator 163 | ecf/ 164 | rcf/ 165 | 166 | # Windows Store app package directories and files 167 | AppPackages/ 168 | BundleArtifacts/ 169 | Package.StoreAssociation.xml 170 | _pkginfo.txt 171 | 172 | # Visual Studio cache files 173 | # files ending in .cache can be ignored 174 | *.[Cc]ache 175 | # but keep track of directories ending in .cache 176 | !*.[Cc]ache/ 177 | 178 | # Others 179 | ClientBin/ 180 | ~$* 181 | *~ 182 | *.dbmdl 183 | *.dbproj.schemaview 184 | *.pfx 185 | *.publishsettings 186 | node_modules/ 187 | orleans.codegen.cs 188 | 189 | # Since there are multiple workflows, uncomment next line to ignore bower_components 190 | # (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) 191 | #bower_components/ 192 | 193 | # RIA/Silverlight projects 194 | Generated_Code/ 195 | 196 | # Backup & report files from converting an old project file 197 | # to a newer Visual Studio version. Backup files are not needed, 198 | # because we have git ;-) 199 | _UpgradeReport_Files/ 200 | Backup*/ 201 | UpgradeLog*.XML 202 | UpgradeLog*.htm 203 | 204 | # SQL Server files 205 | *.mdf 206 | *.ldf 207 | 208 | # Business Intelligence projects 209 | *.rdl.data 210 | *.bim.layout 211 | *.bim_*.settings 212 | 213 | # Microsoft Fakes 214 | FakesAssemblies/ 215 | 216 | # GhostDoc plugin setting file 217 | *.GhostDoc.xml 218 | 219 | # Node.js Tools for Visual Studio 220 | .ntvs_analysis.dat 221 | 222 | # Visual Studio 6 build log 223 | *.plg 224 | 225 | # Visual Studio 6 workspace options file 226 | *.opt 227 | 228 | # Visual Studio LightSwitch build output 229 | **/*.HTMLClient/GeneratedArtifacts 230 | **/*.DesktopClient/GeneratedArtifacts 231 | **/*.DesktopClient/ModelManifest.xml 232 | **/*.Server/GeneratedArtifacts 233 | **/*.Server/ModelManifest.xml 234 | _Pvt_Extensions 235 | 236 | # Paket dependency manager 237 | .paket/paket.exe 238 | 239 | # FAKE - F# Make 240 | .fake/ 241 | 242 | # JetBrains Rider 243 | .idea/ 244 | *.sln.iml 245 | ToastNotifications/output/ToastNotifications.dll 246 | ToastNotifications/nuget.exe 247 | -------------------------------------------------------------------------------- /Build/DevCrew.ToastNotifications_TemporaryKey.snk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rafallopatka/ToastNotifications/95ab84fe76fdf1380c52cacdb861ee0aa0280d29/Build/DevCrew.ToastNotifications_TemporaryKey.snk -------------------------------------------------------------------------------- /Build/generate-nuget.ps1: -------------------------------------------------------------------------------- 1 | param([string]$version="2.0.0.0") 2 | 3 | $env:Path += ";C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE" 4 | $projects = "ToastNotifications", "ToastNotifications.Messages" 5 | $solution = "../Src/ToastNotifications.sln" 6 | 7 | $versionRegexp = "(\d+\.\d+\.\d+\.\d+)" 8 | 9 | foreach ($project in $projects) { 10 | $assemblyInfoFile = "../Src/"+$project+"/Properties/AssemblyInfo.cs" 11 | (Get-Content $assemblyInfoFile) -replace $versionRegexp, $version | Set-Content $assemblyInfoFile 12 | } 13 | 14 | devenv $solution /rebuild Release 15 | 16 | foreach ($project in $projects) { 17 | $csprojFile = "../Src/"+$project+"/"+$project+".csproj" 18 | ./nuget.exe pack $csprojFile -Prop Configuration=Release 19 | } 20 | 21 | -------------------------------------------------------------------------------- /Build/nuget.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rafallopatka/ToastNotifications/95ab84fe76fdf1380c52cacdb861ee0aa0280d29/Build/nuget.exe -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Contributor Covenant Code of Conduct 2 | 3 | ## Our Pledge 4 | 5 | In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation. 6 | 7 | ## Our Standards 8 | 9 | Examples of behavior that contributes to creating a positive environment include: 10 | 11 | * Using welcoming and inclusive language 12 | * Being respectful of differing viewpoints and experiences 13 | * Gracefully accepting constructive criticism 14 | * Focusing on what is best for the community 15 | * Showing empathy towards other community members 16 | 17 | Examples of unacceptable behavior by participants include: 18 | 19 | * The use of sexualized language or imagery and unwelcome sexual attention or advances 20 | * Trolling, insulting/derogatory comments, and personal or political attacks 21 | * Public or private harassment 22 | * Publishing others' private information, such as a physical or electronic address, without explicit permission 23 | * Other conduct which could reasonably be considered inappropriate in a professional setting 24 | 25 | ## Our Responsibilities 26 | 27 | Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior. 28 | 29 | Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. 30 | 31 | ## Scope 32 | 33 | This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers. 34 | 35 | ## Enforcement 36 | 37 | Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at github@devcrew.pl. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately. 38 | 39 | Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership. 40 | 41 | ## Attribution 42 | 43 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version] 44 | 45 | [homepage]: http://contributor-covenant.org 46 | [version]: http://contributor-covenant.org/version/1/4/ 47 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Thank you for contributing 2 | 3 | Any help, suggestions, finding issues, pull requests are really appreciated. 4 | 5 | If you crate an enhancement or bug fix to the library, and you would like to share it with the community, please send a pull request 6 | I will test, merge and release nuget 7 | -------------------------------------------------------------------------------- /Docs/Migration.md: -------------------------------------------------------------------------------- 1 | ``` 2 | _______ _ _ _ _ _ __ _ _ _ ___ 3 | |__ __| | | | \ | | | | (_)/ _(_) | | (_) |__ \ 4 | | | ___ __ _ ___| |_| \| | ___ | |_ _| |_ _ ___ __ _| |_ _ ___ _ __ ___ __ __ ) | 5 | | |/ _ \ / _` / __| __| . ` |/ _ \| __| | _| |/ __/ _` | __| |/ _ \| '_ \/ __| \ \ / // / 6 | | | (_) | (_| \__ \ |_| |\ | (_) | |_| | | | | (_| (_| | |_| | (_) | | | \__ \ \ V // /_ 7 | |_|\___/ \__,_|___/\__|_| \_|\___/ \__|_|_| |_|\___\__,_|\__|_|\___/|_| |_|___/ \_/|____| 8 | 9 | ``` 10 | 11 | # ToastNotifications v2 12 | 13 | #### Migrating from v1 14 | 15 | ToastNotifications v2 is completely new implementation and it's not compatibile with version 1. 16 | Instead of creating NotificationsSource and NotificationTray now you have single service called Notifier. 17 | Notifier is core mechanism used to configure and display different type of messages. 18 | These messages are now plugins and they are sitting now in separate nugget "ToastNotification.Messages" 19 | You have to install it, if you want to use predefined messages like Error, Warning, Success, Information. 20 | You can also create now your own messages, or create different theme for built-in messages. 21 | 22 | ##### Migration instructions 23 | 1. Remove old version references and usings 24 | 2. Remove NotificationTray from xaml 25 | 3. Remove NotificationSource from viewModel 26 | 4. Now follow [install instructions for v2](https://github.com/raflop/ToastNotifications) 27 | -------------------------------------------------------------------------------- /Docs/ReleaseNotes.md: -------------------------------------------------------------------------------- 1 | ``` 2 | _______ _ _ _ _ _ __ _ _ _ ___ 3 | |__ __| | | | \ | | | | (_)/ _(_) | | (_) |__ \ 4 | | | ___ __ _ ___| |_| \| | ___ | |_ _| |_ _ ___ __ _| |_ _ ___ _ __ ___ __ __ ) | 5 | | |/ _ \ / _` / __| __| . ` |/ _ \| __| | _| |/ __/ _` | __| |/ _ \| '_ \/ __| \ \ / // / 6 | | | (_) | (_| \__ \ |_| |\ | (_) | |_| | | | | (_| (_| | |_| | (_) | | | \__ \ \ V // /_ 7 | |_|\___/ \__,_|___/\__|_| \_|\___/ \__|_|_| |_|\___\__,_|\__|_|\___/|_| |_|___/ \_/|____| 8 | 9 | ``` 10 | 11 | # ToastNotifications v2 12 | #### Toast notifications for WPF 13 | 14 | ## v 2.5.1 15 | ### Bug fixes 16 | ClearByMessage and ClearByTag do not work. #83 17 | Black dialog is appearing when i use the notifications #81 18 | ### Breaking changes 19 | Internal refactoring, removed duplicated or unused methods. 20 | Changed some internal functions to properties. 21 | 22 | ## v 2.5.0 23 | ### New features 24 | Completely new mechanism of clearing selected toast notifications via Notifier instance. 25 | ### Bug fixes 26 | ClearMessages(string) does not work #75 27 | ### Breaking changes 28 | Changed signature of Notifier.ClearMessages, it takes now as a parameter an instance of IClearStrategy instead of string. 29 | Library provides built in strategies: ClearAll, ClearByMessage, ClearByTag, ClearFirst, ClearLast 30 | 31 | ## v 2.4.0 32 | Rolled back due to lots of breaking changes, delayed and moved to v3 -------------------------------------------------------------------------------- /Docs/StronglyNamedAssemblies.md: -------------------------------------------------------------------------------- 1 | ``` 2 | _______ _ _ _ _ _ __ _ _ _ ___ 3 | |__ __| | | | \ | | | | (_)/ _(_) | | (_) |__ \ 4 | | | ___ __ _ ___| |_| \| | ___ | |_ _| |_ _ ___ __ _| |_ _ ___ _ __ ___ __ __ ) | 5 | | |/ _ \ / _` / __| __| . ` |/ _ \| __| | _| |/ __/ _` | __| |/ _ \| '_ \/ __| \ \ / // / 6 | | | (_) | (_| \__ \ |_| |\ | (_) | |_| | | | | (_| (_| | |_| | (_) | | | \__ \ \ V // /_ 7 | |_|\___/ \__,_|___/\__|_| \_|\___/ \__|_|_| |_|\___\__,_|\__|_|\___/|_| |_|___/ \_/|____| 8 | 9 | ``` 10 | 11 | # ToastNotifications v2 12 | #### Toast notifications for WPF 13 | 14 | ### Strongly named assemblies 15 | 16 | ToastNotifications v2 assemblies are strongly named using pfx file which is not included in repo. 17 | Snk file stored in repository is used only in development and continues build, and it is not used to produce official nuget. 18 | 19 | Development (via SNK): 20 | ```sha1 21 | Public key (hash algorithm: sha1): 22 | 002400000480000094000000060200000024000052534131000400000100010003fa196e46deb8 23 | 0be6daa22a58b9810c8fe593d239f3cd24a4765b1830538c3d7f98b5386d03e8e2c28def79c571 24 | 062c36e65119f656949c1003ffdc2373b05858560e3f94790ad5ab832ac372b76fddb84ca36530 25 | 6a9dbebe68cbaa2dc45950a722297fa9aacac3970e9695e1022f5735a2c9a37987f847a86dde47 26 | 8d7474dd 27 | 28 | Public key token is c8166e8e02d32210 29 | ``` 30 | Release (via PFX): 31 | ```sha1 32 | Public key (hash algorithm: sha1): 33 | 002400000480000094000000060200000024000052534131000400000100010041e364d228daad 34 | 36e196e7107c6f462568cafe9b0e625e8afbda5db7725e1cdcca788304083b1a92846b372e002c 35 | 06c6f74d9466d93f1fceb6a6b207625a515b3790a9d541edc40b3e2d987ea25cff0e5bb9208046 36 | efc04b7e726d8b56b0d4974071e3db0c1f139888e582c72da6659fbfcf1801fdcdca2449013ae5 37 | d0426dce 38 | 39 | Public key token is e89d9d7314a7c797 40 | ``` 41 | -------------------------------------------------------------------------------- /ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | ### Library version 2 | 3 | ### Expected behaviour 4 | 5 | ### Actual behaviour 6 | 7 | ### Steps to reproduce behaviour 8 | 9 | ### Code to reproduce behaviour 10 | 11 | ### Questions 12 | -------------------------------------------------------------------------------- /Media/demo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rafallopatka/ToastNotifications/95ab84fe76fdf1380c52cacdb861ee0aa0280d29/Media/demo.gif -------------------------------------------------------------------------------- /Media/project-icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rafallopatka/ToastNotifications/95ab84fe76fdf1380c52cacdb861ee0aa0280d29/Media/project-icon.ico -------------------------------------------------------------------------------- /Media/project-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rafallopatka/ToastNotifications/95ab84fe76fdf1380c52cacdb861ee0aa0280d29/Media/project-icon.png -------------------------------------------------------------------------------- /Src/Examples/BasicUsageExample/App.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /Src/Examples/BasicUsageExample/App.xaml: -------------------------------------------------------------------------------- 1 |  6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Src/Examples/BasicUsageExample/App.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | 3 | namespace BasicUsageExample 4 | { 5 | /// 6 | /// Interaction logic for App.xaml 7 | /// 8 | public partial class App : Application 9 | { 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Src/Examples/BasicUsageExample/BasicUsageExample.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | Debug 6 | AnyCPU 7 | {D63A8852-2028-4E0E-8FF1-F95D0066843F} 8 | WinExe 9 | Properties 10 | BasicUsageExample 11 | BasicUsageExample 12 | v4.0 13 | 512 14 | {60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 15 | 4 16 | true 17 | 18 | 19 | 20 | AnyCPU 21 | true 22 | full 23 | false 24 | bin\Debug\ 25 | DEBUG;TRACE 26 | prompt 27 | 4 28 | 29 | 30 | AnyCPU 31 | pdbonly 32 | true 33 | bin\Release\ 34 | TRACE 35 | prompt 36 | 4 37 | 38 | 39 | toast-notifications-icon.ico 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 4.0 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | MSBuild:Compile 57 | Designer 58 | 59 | 60 | App.xaml 61 | Code 62 | 63 | 64 | 65 | 66 | 67 | MainWindow.xaml 68 | 69 | 70 | Code 71 | 72 | 73 | True 74 | True 75 | Resources.resx 76 | 77 | 78 | True 79 | Settings.settings 80 | True 81 | 82 | 83 | ResXFileCodeGenerator 84 | Resources.Designer.cs 85 | 86 | 87 | SettingsSingleFileGenerator 88 | Settings.Designer.cs 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | MSBuild:Compile 98 | Designer 99 | 100 | 101 | 102 | 103 | {4de2f314-b19f-423e-92d8-7d3a7d9acea2} 104 | ToastNotifications.Messages 105 | 106 | 107 | {4a8879fc-9a6e-4904-910b-5c13fa5ed5be} 108 | ToastNotifications 109 | 110 | 111 | 112 | 113 | 114 | 115 | 122 | -------------------------------------------------------------------------------- /Src/Examples/BasicUsageExample/MainWindow.xaml: -------------------------------------------------------------------------------- 1 |  5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 34 |