1 Commits

Author SHA1 Message Date
Eliana Bracciaforte 62245befc7 Give the browser icons the favicon treatment the mark deserved
The favicon.svg was a raw export of the artwork's own bounds — 234
wide by 252 tall — so every square slot a browser put it in letterboxed
it slightly. The portal's icons were padded to a square in
app-customer-portal (4e0f70d there); this is the same treatment for the
project's own edition, in the project gradient. One shape for the
project, one gradient per edition: the colour is what tells an admin's
ProjectSend tab and the Cloud portal apart.

The rasters — the .ico's 16/32/48 and the 180px touch icon — are
regenerated from that square source, so the touch icon carries the same
margin the portal's has instead of running edge to edge.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-09-07 13:41:12 -03:00
3 changed files with 16 additions and 5 deletions
Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 15 KiB

+16 -5
View File
@@ -1,11 +1,22 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 234.26482 252.25172">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="-9 0 252.3 252.3">
<!--
The ProjectSend mark: the swoosh in the project gradient (violet to
blue). One shape for the project, one gradient per edition — the
hosted portal draws the same vector in the Cloud gradient, so the
colour is what tells the tabs apart. Same path as
resources/js/components/app-logo-icon.tsx; change both together.
Padded to a square rather than the artwork's own bounds, so the mark
fills whatever square slot a browser puts an icon in — a tab, a
bookmark bar, a pinned shortcut — instead of being letterboxed.
-->
<defs>
<linearGradient id="ps-icon-gradient" gradientUnits="userSpaceOnUse" x1="31.5263" y1="211.0108" x2="197.4637" y2="50.766899">
<stop offset="0.1675" stop-color="#5219B3"/>
<stop offset="0.8128" stop-color="#3072BF"/>
<linearGradient id="ps-icon-gradient" gradientUnits="userSpaceOnUse" x1="31.5" y1="211" x2="197.5" y2="50.8">
<stop offset="0.17" stop-color="#5219B3"/>
<stop offset="0.81" stop-color="#3072BF"/>
</linearGradient>
</defs>
<g transform="translate(-2.5,-2.1253469)">
<g transform="translate(-2.5,-2.13)">
<path fill="url(#ps-icon-gradient)" d="m 233.21,158.034 c -2.53,0 -4.992,0 -7.522,0 -38.087,-1.299 -74.943,-8.889 -110.774,-21.676 C 87.015,126.375 60.621,113.451 37.441,94.647 29.783,88.493 22.876,81.587 16.585,73.997 15.286,72.356 15.149,71.604 17.2,70.51 58.092,48.285 98.983,26.062 139.873,3.839 c 6.633,-3.556 12.787,-1.504 16.684,5.47 19.283,35.352 38.497,70.772 57.78,106.124 7.043,12.992 14.154,25.984 21.197,38.976 1.916,3.556 1.916,3.556 -2.324,3.625 z M 3.799,130.545 c 21.061,38.702 42.121,77.337 63.182,115.971 4.513,8.274 10.325,9.915 18.667,5.402 48.002,-26.121 95.936,-52.241 143.869,-78.362 0.957,-0.479 2.051,-0.752 2.735,-1.846 C 153.002,171.573 75.939,160.495 2.5,127.947 c 0.547,1.026 0.889,1.846 1.299,2.598 z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB