Windows: Update the overlay icon graphics #3105
authorJocelyn Turcotte <jturcotte@woboq.com>
Tue, 12 Jan 2016 09:38:17 +0000 (10:38 +0100)
committerJocelyn Turcotte <jturcotte@woboq.com>
Tue, 12 Jan 2016 10:46:05 +0000 (11:46 +0100)
commitbb5c370575e9d163d5b6a29eb4226f0bc7aa63fe
tree51905b1315d91d2fd471eb6621ee3d32500a403b
parent74b0d2d9f1e88ee6125d9f06331c6f8b6caf87b0
Windows: Update the overlay icon graphics #3105

The bug seems to be in Windows when it upscales an smaller icon for
HiDPI displays. It works fine if we provide a 256x256 size in the
ico files.

Use the new square icons also used on OS X that removes the share badge
and instead has a share icon only for the OK state. This means that we
can also remove 3 icons and release 3 slots in the registry for
overlay icons (only the first few are actually loaded by explorer).

This also adds a script that uses ImageMagick to convert our SVG icons
to Windows ico files. Since ImageMagick seems to have issue doing
proper antialiasing with pixels on the edge of icons, this also
slightly scale the icons to leave 2px on each edge, out of its
logical 128px width.
23 files changed:
binary
shell_integration/icons/nopadding/SVG/attention.svg
shell_integration/icons/nopadding/SVG/error.svg
shell_integration/icons/nopadding/SVG/generate_windows_ico.sh [new file with mode: 0755]
shell_integration/icons/nopadding/SVG/ok.svg
shell_integration/icons/nopadding/SVG/shared.svg
shell_integration/icons/nopadding/SVG/sync.svg
shell_integration/windows/OCOverlays/DllMain.cpp
shell_integration/windows/OCOverlays/OCOverlay.cpp
shell_integration/windows/OCOverlays/OCOverlay.rc
shell_integration/windows/OCOverlays/OCOverlayFactory.h
shell_integration/windows/OCOverlays/OCOverlays.vcxproj
shell_integration/windows/OCOverlays/OverlayConstants.h
shell_integration/windows/OCOverlays/ico/Error.ico
shell_integration/windows/OCOverlays/ico/Error_Shared.ico [deleted file]
shell_integration/windows/OCOverlays/ico/OK.ico
shell_integration/windows/OCOverlays/ico/OK_Shared.ico
shell_integration/windows/OCOverlays/ico/Sync.ico
shell_integration/windows/OCOverlays/ico/Sync_Shared.ico [deleted file]
shell_integration/windows/OCOverlays/ico/Warning.ico
shell_integration/windows/OCOverlays/ico/Warning_Shared.ico [deleted file]
shell_integration/windows/OCUtil/RemotePathChecker.cpp
shell_integration/windows/OCUtil/RemotePathChecker.h