dan0v / xdelta3-cross-gui

A cross-platform GUI for creating xDelta3 patches, available for Windows, Linux, and Mac
Apache License 2.0
101 stars 11 forks source link

[MacOS] App icon not shown on executable #6

Closed dan0v closed 4 years ago

dan0v commented 4 years ago

@LeeBinder

Linux and MacOS don't show the app icon set in dotnet on the actual executable.

dan0v commented 4 years ago

Windows correctly sets the executable icon, as well as taskbar icons for open windows.

Linux does not set the executable icon correctly, but does show the correct icon for currently open windows.

How does MacOS behave? I don't have a Mac device to test unfortunately...

LeeBinder commented 4 years ago

with xdelta3-cross-gui_1.0.1_macOS_x64-with-icon.zip from my comment:

Screen Shot 2020-08-19 at 23 28 11

The icon can easily be set via paste in the file info window in macOS (copied via clipboard from icon.png opened in the Preview app):

Screen Shot 2020-08-19 at 23 29 30

dan0v commented 4 years ago

I appreciate you doing it by hand, but it's not really a solution to the underlying issue 😕 . The best would be some post-build process or script that could automatically set the icon correctly for Linux and Mac. If you / anybody finds a way to do something like that, please submit a PR.

dan0v commented 4 years ago

https://avaloniaui.net/docs/packing/macOS

macOS support is doable, I haven't found useful info for Linux though, as creating a .Desktop file won't work - only absolute file paths can be used to define icon locations.

dan0v commented 4 years ago

Resolved by 5c0b9ff6fa8074ddb39db9734d3930b79c2e8cd4 by bundling application to a macOS .app file. Icon now correctly displays, and it's also neater to have only 1 file to launch, as native macOS apps should. The macOS download under Releases has been updated to the new bundled filetype.

LeeBinder commented 4 years ago

Well done/ quickly solved & improved, @dan0v ! I am confirming xDelta3 Cross GUI.app displaying with the new icon, even in the dock.

LeeBinder commented 4 years ago

..just seeing that it's still showing up as 1.0:

Screen Shot 2020-08-20 at 22 56 23

That is easily adapted in xDelta3 Cross GUI.app/Contents/Info.plist:

Screen Shot 2020-08-20 at 23 04 43

save, touch -> Screen Shot 2020-08-20 at 23 07 55

dan0v commented 4 years ago

Yep I'm working on better build scripts for all three platforms, which automatically set version number in the plist when building, I just haven't pushed it yet. Thanks for pointing it out though!