Compare commits
3 Commits
309f42bad1
...
65f60d2c35
Author | SHA1 | Date | |
---|---|---|---|
65f60d2c35 | |||
c828c0b90b | |||
a9391325c2 |
22
App.config
@ -74,10 +74,28 @@
|
||||
<value>13</value>
|
||||
</setting>
|
||||
<setting name="MainWindowTop" serializeAs="String">
|
||||
<value>100</value>
|
||||
<value>10</value>
|
||||
</setting>
|
||||
<setting name="MainWindowLeft" serializeAs="String">
|
||||
<value>100</value>
|
||||
<value>10</value>
|
||||
</setting>
|
||||
<setting name="RadiosWindowTop" serializeAs="String">
|
||||
<value>10</value>
|
||||
</setting>
|
||||
<setting name="RadiosWindowLeft" serializeAs="String">
|
||||
<value>1000</value>
|
||||
</setting>
|
||||
<setting name="ShuffleWindowTop" serializeAs="String">
|
||||
<value>10</value>
|
||||
</setting>
|
||||
<setting name="ShuffleWindowLeft" serializeAs="String">
|
||||
<value>330</value>
|
||||
</setting>
|
||||
<setting name="SettingsWindowTop" serializeAs="String">
|
||||
<value>330</value>
|
||||
</setting>
|
||||
<setting name="SettingsWindowLeft" serializeAs="String">
|
||||
<value>600</value>
|
||||
</setting>
|
||||
</unison.Properties.Settings>
|
||||
</userSettings>
|
||||
|
17
CHANGELOG.md
@ -1,5 +1,22 @@
|
||||
# Changelog
|
||||
|
||||
## v1.5
|
||||
|
||||
*Released: 09/06/2025*
|
||||
|
||||
* Windows 11 compatibility
|
||||
* Shuffle button: add "clear queue" and "play queue" buttons
|
||||
* Hide windows when clicking corresponding buttons, if they were visible
|
||||
* Fix: add security to QueryStats response to avoid crashes
|
||||
* Fix: regression in Systray text display
|
||||
* Fix: clipboard copy crash
|
||||
* Update .NET (6.0 to 8.0)
|
||||
* Update Snapcast (0.26.0.1 to 0.31)
|
||||
* Update MpcNET (1.4.0 to 1.6.6)
|
||||
* Update RadioBrowser (0.6.1 to 0.7)
|
||||
* Update AutoUpdater.NET (1.7.6 to 1.9.2)
|
||||
* Update NotifyIcon.Wpf (1.1.0 to 2.0.1)
|
||||
|
||||
## v1.4
|
||||
|
||||
*Released: 09/12/2022*
|
||||
|
@ -1,5 +1,5 @@
|
||||
#define Name "unison"
|
||||
#define Version "1.4"
|
||||
#define Version "1.5"
|
||||
#define Snapcast "snapcast_0.31"
|
||||
#define Publisher "Th<54>o Marchal"
|
||||
#define URL "https://github.com/ZetaKebab/unison"
|
||||
|
@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<item>
|
||||
<version>1.3.1.0</version>
|
||||
<url>https://github.com/ZetaKebab/unison/releases/download/v1.3.1/unison-v1.3.1.zip</url>
|
||||
<version>1.5.0.0</version>
|
||||
<url>https://github.com/ZetaKebab/unison/releases/download/v1.5/unison-v1.5.zip</url>
|
||||
<changelog>https://raw.githubusercontent.com/ZetaKebab/unison/main/CHANGELOG.md</changelog>
|
||||
<mandatory>false</mandatory>
|
||||
</item>
|
@ -8,7 +8,7 @@ https://go.microsoft.com/fwlink/?LinkID=208121.
|
||||
<Platform>Any CPU</Platform>
|
||||
<PublishDir>publish\</PublishDir>
|
||||
<PublishProtocol>FileSystem</PublishProtocol>
|
||||
<TargetFramework>net6.0-windows</TargetFramework>
|
||||
<TargetFramework>net8.0-windows</TargetFramework>
|
||||
<SelfContained>false</SelfContained>
|
||||
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
|
||||
<PublishSingleFile>true</PublishSingleFile>
|
||||
|
20
README.md
@ -7,7 +7,8 @@
|
||||
* lightweight window that can be toggled with shortcuts
|
||||
* music control through rebindable shortcuts
|
||||
* [Snapcast](https://github.com/badaix/snapcast) integration
|
||||
* Radio stations
|
||||
* radio stations
|
||||
* basic shuffle system
|
||||
|
||||
## Features
|
||||
|
||||
@ -33,11 +34,20 @@ Through [Radio-Browser](https://www.radio-browser.info), a community database, y
|
||||
|
||||

|
||||
|
||||
## Planned features
|
||||
### Shuffle system
|
||||
|
||||
* A complete shuffle system based on set criteria, aka a smart playlist.
|
||||
* Playlist, queue and library management. I use other software to do it, but I will implement them at some point.
|
||||
A shuffle system is available, allowing you to only use unison as a (very basic) music manager. You can use filters to have a tailored shuffle experience.
|
||||
|
||||

|
||||
|
||||
## Translations
|
||||
|
||||
unison is translated in English, French and Spanish. You can contribute if you want!
|
||||
unison is translated in English, French and Spanish. You can contribute if you want!
|
||||
|
||||
## The future
|
||||
|
||||
This project started as a simple daemon to control my music with shortcuts, and a Snapcast player. With time, I added a few useful features, while learning C# and WPF. I wanted to make a complete implementation of MPD features (library, playlist, queue management, etc). However, this will probably not happen. Indeed, I have been waiting a few years for Microsoft to settle on a modern implementation of its user interface framework. But it is still not there, and I do not want to spend time for a technology that might die too quickly. There's no coherence in Windows' interfaces, and it is not really motivating. I also want to be able to play Snapcast from iOS, so I think I will most likely invest (natively) my time in this platform for the foreseeable future.
|
||||
|
||||
If I were to continue, the first thing to do would be to make a single window interface, by making a real MVVP implementation, and not one depending on windows like I did here, by iterating on a single program that has become a bit too big to not separate logic from visual.
|
||||
|
||||
I still plan on maintaining this app in a working state, as its working great as is. But I do not intend, for the time being at least, to make dramatic changes as I would have liked to.
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 29 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 14 KiB |
BIN
Screenshots/screen5.png
Normal file
After Width: | Height: | Size: 8.5 KiB |
@ -350,7 +350,7 @@ namespace unison
|
||||
string CopyText = SongTitle.Text + " - " + SongArtist.Text + "\n";
|
||||
CopyText += SongAlbum.Text + "\n";
|
||||
CopyText += SongTitle.ToolTip;
|
||||
Clipboard.SetText(CopyText);
|
||||
Clipboard.SetDataObject(CopyText);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -7,7 +7,7 @@
|
||||
<ApplicationIcon>Resources\icon-full.ico</ApplicationIcon>
|
||||
<Win32Resource></Win32Resource>
|
||||
<StartupObject>unison.App</StartupObject>
|
||||
<Version>1.4-dev</Version>
|
||||
<Version>1.5</Version>
|
||||
<Company />
|
||||
<Authors>Théo Marchal</Authors>
|
||||
<PackageLicenseFile>LICENSE</PackageLicenseFile>
|
||||
@ -15,6 +15,7 @@
|
||||
<RepositoryUrl>https://github.com/ZetaKebab/unison</RepositoryUrl>
|
||||
<Copyright>Théo Marchal</Copyright>
|
||||
<PackageIconUrl />
|
||||
<IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|