dlprows / FocusVolumeControl

Stream Deck+ plugin for controlling the focused application's volume
MIT License
5 stars 1 forks source link

TModLoader Icon not Showing #7

Closed jackmon1 closed 1 year ago

jackmon1 commented 1 year ago

Icon does show up correctly in volume mixer but not for the plugin. I am on the latest pre-release version 1.2.0 terraria image

Volume mixer: image

dlprows commented 1 year ago

Does it work for terraria but not tmodloader, or does it not work for either?

jackmon1 commented 1 year ago

Works for terraria, but not tmodloader

dlprows commented 1 year ago

after looking into things, tModLoader has a similar problem to what Minecraft (Java edition) has. Which is that the executable that is running doesn't actually have an app icon.

In the case of tModLoader, the executable is dotnet.exe which doesn't have an app icon associated to it. In the case of Minecraft, its javaw.exe which has an app icon associated to it, but its a generic java icon, not the app icon of the actual game that you're playing.

Its like this because dotnet.exe and javaw.exe are runtimes that host the actual applications inside of them. So the "best" solution would be for tModLoader to change the way they distribute.

However, I already had a solution because I was working on Minecraft. It's just not a "perfect" solution.

I tied into the window messaging mechanism that windows uses to get app icons for alt+tab, start bar, and volume mixer. The downside to using this mechanism instead of what I use elsewhere is that the icons won't look quite as good. The largest icon you can get from this api is a 32x32 icon, which is what windows uses in the volume mixer and start bar. The stream deck on the other hand has area for a 48x48 icon.

I drew the icon as well as i could in the 48x48 space while trying to minimize it being blurry from upscaling, or being oddly small compared to everything else on the stream deck.

Its going to take me a fair bit of testing before I send an update to elgato because of how many changes I've made recently. If you're interested in updating before then, i have updated the 1.2.0 pre-release with the changes https://github.com/dlprows/FocusVolumeControl/releases/tag/v1.2.0

jackmon1 commented 1 year ago

Everything seems to be working great now! Honestly the icons are not the biggest deal. I am assuming the 32x32 icons are only for applications that cannot get the icons correctly so it falls back to the window messaging, as other icons outside of these look fine to me. But every other application I have tested in my steam library seems to work.

Quickly has become my favorite plugin, so thanks for all the work you have put into this!