forked from Taiko2k/Tauon
-
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
CI, phazor and other misc improvements and bug fixes (Taiko2k#1361)
* Don't repeatedly call pctl.playing_object() and verify that track is not None * Avoid defining tidal and spot_ctl both outside the Tauon class and inside, avoids us having to check for them being None * Tidy up code/use pathlib * Small typing and pathlib fixes * phazor.c: Convert "bool" to actual bool with stdbool.h * phazor.c: Remove unused variable * phazor: Convert more ints to bool * phazor: Remove accidentally commited debug * Require C17 or later and prep a future check for C23 * Remove a bunch of linebreaks * remove old pyproject note * Mark a couple resource leaks to deal with later * Fix downloadS name and drop XDG music/downloads logs to debug * Migrate from zip to 7zip * Phazor notes * Stop hardcoding Python ver in spec files * Fix Windows 7z * Attempt to remove pointless nested directories in the final archive * Disable colored_traceback on Windows * Add source for TaskBarLib.idl * TBL.idl: Fix up file path * Fix capitalization * windows: Pack librespot.exe and TaskbarLib.tlb * SMTC: Add missing runtimeobject.lib dependency * Add TauonSMTC.dll to Windows CI * pack TauonSMTC.dll to lib dir * Add a logging TODO * Pack fonts on Windows * Add fonts download as comments to run.sh * Log fonts directory * Fix up double quotes and needless Path calls * Add python-magic to reqs, add typing to set_rating() and remove unused old_backend variable * Try forcing --platform=win_amd64 * Define DA_Formats more concisely * Uh, are we using the wrong python this entire time * Shut up pip warning * This ain't da wae * Use Python-magic from PR * Avoid pyinstaller bug * Fix a couple resource leaks * tagscan: Add support for context managers and use them in main * Skip Python magic on Windows entirely for now * Revert last change, this part does work * Linting/typing * Bump copyright to 2025 and add some logging for SMTC * Fix crash on exit * Move GallClass and ThumbTracks init to Tauon class and fix leak in AlbumArt * Fix ThumbTracks memory leak * Remove leak TODOs as they were fixed * Type up auto_name_pl * Convert [install|user|config]_directory to Path * Juggle directory logging order * Yeet redundant Path call * Fix locale, as it is now packaged inside of Install_directory * myspac.txt: Add cmake * Windows CI: Try to use the msys package list in the repo instead of duping it * Fix for pwsh * attempt No 3 at pwsh * Fix msyspac.txt file name * Add ninja to msyspac.txt * Add base-devel to msyspac.txt * Add mingw-w64-x86_64-gobject-introspection to msyspac.txt * Attempt to install p7zip in CI too * Try removing base-devel * Rename jobs to use 7Z * Add missing space in error log * Type up some thigns in Tauon class * fix up pyproject.toml comment so I can sleep at night * Mutagen ID3 does not support context managers, also log exception properly * I suppose context manager does not belong here at all * phazor: Use while(true) not while(1) * Try fixing Windows close race condition * Revert last commit * phazor: Use pathlib * Phazor: More explicit logging * Try fixing cache delete fail * Make cache check Windows only * Fix up GuitarChords a fair bit * Modularize Prefs * Linux: Pack libcanberra-gtk-module.so * Pack libcanberra-gtk3-module * Fix Rsvg deprecation * [svg|asset|scaled_asset]_directory to Path * De-global LoadImageAsset, WhiteModImageAsset and asset_loader() * Mark python-magic as optional * Fix minimode crashing when song isn't playing * Comment out python-magic installs * Fix radio resource leak * Fix radio playback * Fix mini mode harder * Undo unnecessary overfixing * Remove libwayland*.so files from Linux CI builds and try fixing nested directories again * Fix archive path for CI * Fix Windows CI nesting too * Comment out unused nonexistent Jellyfin thumbnail path * Small typing additions and an error todo * StarStore typing * Fix imageasset __init__ * Jellyfin: Fix getting albumart for singles * Fix crash trying to copy an empty playing_object() to clipboard * Note fixed jellyfin cover integration in changelog * Use user_directory from __main__ instead of duping it, and jump out of src in cloned installs * Remove the dir change changelog as old behavior was restored * Remove the necessity for asset_loader to be named and remove obvious params from the dirs * Remove the rest of named params from asset_loader() * I dont get how I missed these
- Loading branch information
Showing
28 changed files
with
1,989 additions
and
1,721 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,136 @@ | ||
// Used to create TaskbarLib.tlb through MIDL and Tlbimp.exe | ||
|
||
// Compile in cmd.exe: | ||
// set PATH=%PATH%;C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um | ||
// "C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64\midl.exe" /I "C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\um" /I "C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared" TaskbarLib.idl | ||
|
||
// Source: https://www.neowin.net/forum/topic/716968-using-apis-in-a-objectaction-format/#comment-590434472 | ||
[ | ||
uuid(683BF642-E9CA-4124-BE43-67065B2FA653), | ||
version(1.0), | ||
] | ||
library TaskbarLib | ||
{ | ||
[ | ||
uuid(56FDF342-FD6D-11d0-958A-006097C9A090), | ||
object, | ||
] | ||
interface ITaskbarList : IUnknown | ||
{ | ||
HRESULT _stdcall HrInit(); | ||
HRESULT _stdcall AddTab([in] long hwnd); | ||
HRESULT _stdcall DeleteTab([in] long hwnd); | ||
HRESULT _stdcall ActivateTab([in] long hwnd); | ||
HRESULT _stdcall SetActivateAlt([in] long hwnd); | ||
}; | ||
|
||
[ | ||
uuid(602D4995-B13A-429b-A66E-1935E44F4317), | ||
object, | ||
] | ||
interface ITaskbarList2 : ITaskbarList | ||
{ | ||
HRESULT MarkFullscreenWindow( | ||
[in] long hwnd, | ||
[in] BOOL fFullscreen); | ||
} | ||
|
||
cpp_quote("#ifdef MIDL_PASS") | ||
typedef IUnknown* HIMAGELIST; | ||
typedef IUNknown* HICON; | ||
cpp_quote("#endif") | ||
|
||
cpp_quote("#include <pshpack8.h>") | ||
typedef struct tagTHUMBBUTTON | ||
{ | ||
DWORD dwMask; | ||
UINT iId; | ||
UINT iBitmap; | ||
HICON hIcon; | ||
WCHAR szTip[260]; | ||
DWORD dwFlags; | ||
} THUMBBUTTON, *LPTHUMBBUTTON; | ||
cpp_quote("#include <poppack.h>") | ||
|
||
[ | ||
uuid(ea1afb91-9e28-4b86-90e9-9e9f8a5eefaf), | ||
object, | ||
] | ||
interface ITaskbarList3 : ITaskbarList2 | ||
{ | ||
// Flags for Setting Taskbar Progress state | ||
typedef [v1_enum] enum TBPFLAG | ||
{ | ||
TBPF_NOPROGRESS = 0x00000000, | ||
TBPF_INDETERMINATE = 0x00000001, | ||
TBPF_NORMAL = 0x00000002, | ||
TBPF_ERROR = 0x00000004, | ||
TBPF_PAUSED = 0x00000008, | ||
} TBPFLAG; | ||
|
||
cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(TBPFLAG)") | ||
|
||
// Flags for SetTabActive | ||
typedef [v1_enum] enum TBATFLAG | ||
{ | ||
TBATF_USEMDITHUMBNAIL = 0x00000001, | ||
TBATF_USEMDILIVEPREVIEW = 0x00000002, | ||
} TBATFLAG; | ||
|
||
cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(TBATFLAG)") | ||
|
||
HRESULT SetProgressValue( | ||
[in] long hwnd, | ||
[in] ULONGLONG ullCompleted, | ||
[in] ULONGLONG ullTotal); | ||
|
||
HRESULT SetProgressState( | ||
[in] long hwnd, | ||
[in] TBPFLAG tbpFlags); | ||
|
||
HRESULT RegisterTab( | ||
[in] long hwndTab, | ||
[in] HWND hwndMDI); | ||
|
||
HRESULT UnregisterTab( | ||
[in] long hwndTab); | ||
|
||
HRESULT SetTabOrder( | ||
[in] long hwndTab, | ||
[in] long hwndInsertBefore); | ||
|
||
HRESULT SetTabActive( | ||
[in] long hwndTab, | ||
[in] long hwndMDI, | ||
[in] TBATFLAG tbatFlags); | ||
|
||
HRESULT ThumbBarAddButtons( | ||
[in] long hwnd, | ||
[in] UINT cButtons, | ||
[in, size_is(cButtons)] LPTHUMBBUTTON pButton); | ||
|
||
HRESULT ThumbBarUpdateButtons( | ||
[in] long hwnd, | ||
[in] UINT cButtons, | ||
[in, size_is(cButtons)] LPTHUMBBUTTON pButton); | ||
|
||
HRESULT ThumbBarSetImageList( | ||
[in] long hwnd, | ||
[in] HIMAGELIST himl); | ||
|
||
HRESULT SetOverlayIcon( | ||
[in] long hwnd, | ||
[in] HICON hIcon, | ||
[in, string] LPCWSTR pszDescription); | ||
|
||
HRESULT SetThumbnailTooltip( | ||
[in] long hwnd, | ||
[in, string] LPCWSTR pszTip); | ||
|
||
HRESULT SetThumbnailClip( | ||
[in] long hwnd, | ||
[in] RECT *prcClip); | ||
} | ||
|
||
[ uuid(56FDF344-FD6D-11d0-958A-006097C9A090) ] coclass TaskbarList { interface ITaskbarList3; } | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.