From f8a0ab63d15b4101e87e0400d0de8f9d465f6610 Mon Sep 17 00:00:00 2001 From: FAZuH Date: Fri, 11 Sep 2026 20:20:46 +0700 Subject: [PATCH] feat: regenerate all brand assets from the circular-H icon --- CHANGELOG.md | 1 + assets/hyprlay-128.png | Bin 2388 -> 4923 bytes assets/hyprlay-256.png | Bin 4668 -> 9859 bytes assets/hyprlay-48.png | Bin 1213 -> 1894 bytes assets/hyprlay-64.png | Bin 1317 -> 2395 bytes assets/hyprlay.ico | Bin 370070 -> 25524 bytes assets/hyprlay.svg | 23 ++----- assets/tray-connected.png | Bin 124 -> 1894 bytes assets/tray-disconnected.png | Bin 129 -> 1895 bytes scripts/gen_tray_icons.py | 124 ++++++++++++++++++----------------- src/platform/icon.rs | 3 +- 11 files changed, 71 insertions(+), 80 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2cec237..a0e9e34 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ ### Platforms +- Changed the app and tray icon to a circular design - Fixed source installs failing on a fresh dependency resolution ## 0.3.0 (2026-09-03) diff --git a/assets/hyprlay-128.png b/assets/hyprlay-128.png index e75fcb0ea8c3d4d9ea672e3fa3d8e05dc51bbdca..898f8ca4735ab0d38961d2916007eb0c51113867 100644 GIT binary patch literal 4923 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 RTS`U@z|Gmism>vU@i(wsG86y+ diff --git a/assets/hyprlay-256.png b/assets/hyprlay-256.png index 80b63503178cc9ecaa6973b920bc083c453d6f09..a4b2f2057b7bb86f9778d0a205ed28be36ef9baf 100644 GIT binary patch literal 9859 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 literal 4668 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 literal 1213 zcmeAS@N?(olHy`uVBq!ia0vp^1|TfJ0wmYYe(MjU6p}rHd>I(3)EF2VS{N990fib~ zFffz?6~0PfV6d9Oz#v{QXIG#NP=YDR+uenMVO6iP5s=4O;1O92q=Bk{_(QhSc_4$m z#M9T6{S_w@C#ybd>M32IkZOr*L`h0wNvc(HQ7VvPFfuSQ(>1WvH82V>u(UETwK6f# zHZZU4Q212c|9~K0#Ixf5*(W%P1eaq^Fp5I6P9+Q@R;kjBHbbmoe$&xc-C#`iIP0s#~i~2nKN^!(1 zYn{;T=U>dZ<`Ym;>7^wzDd={ZYO#`m!RuKouLdRV4B7W1U)blr+z!oDdv2Cem+PO4 zqa3`y#bzcH9AlmoA~$W5{O=`84FzPb)#Tn>9CY*}Z^->gT(`vxW!}ESH?F^l+Bu(PJxgrn301}E?IpY~@-Imm%_%v1L zHb@#pAF#Y_bMB|4k-X#eDgTeldgyF_S9@BK<%Lwn^)rQktruK#N;v!6@A=KtqP+#o zg$EZkuGpCIK+>+gD!n*r@8yEqt=npk>HZWkThr3HzA=eoC5x;!uX!2UJ(;G1`i=Sx z-ik|(A5j1BY2yw_iS{eG5&Q+KS^wn5n4Yi?(0q z%3`<9ec!mX<$H|)JBNJIM5zvrZnj0ofDZlm-}J#A=5tpa7AYUtB*rxT=be`};l6s& z5&KW5g&#N(_JD84;SV2FH16B@RUWP_;D7bnx9_Crfr!sHHcSb7Z5VfQ&GRRdg7oy4 zW()n*J@QRDPcJ`d_a(LIYxy>tWfk8)6n05!?PfEp>l*3II)9GFzJJ0b(tq&{Z{y^b zQ{?{1Zk4i5sXBPq@QHk>i*CByhpqbxx$ijdcgPYp5Zt<|GJz>*{lSC955CQ7w_X2B zeVW_aHLO3RzVG4RyPUyuRf*Tl{69NOJ$cF$XXlpGYlp^hzPaLkssHtoocnjyo{89! zu<~GGW`a#bmVm~$6(!!SpM$dAuVE?F_;y1_^qc3@C!f1)o1U7*d#1;%+!24OMx)Z+ u_4?;~sllHve_nm%dvi!_e%{Wr!CRkBNmgU}G7p%S89ZJ6T-G@yGywqnRTOyu diff --git a/assets/hyprlay-64.png b/assets/hyprlay-64.png index 6781deee9528857e4f6b8e0cf21f27a024521f2b..59423d28bfdbd34e66cbdb826ecd72566ff6aa16 100644 GIT binary patch literal 2395 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 N002ovPDHLkV1m_7dVv4{ literal 1317 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 diff --git a/assets/hyprlay.svg b/assets/hyprlay.svg index 80b6fbc..ccae025 100644 --- a/assets/hyprlay.svg +++ b/assets/hyprlay.svg @@ -1,19 +1,6 @@ - - - - - + + + + + diff --git a/assets/tray-connected.png b/assets/tray-connected.png index 0696efddc4055d201b4e86070b8aa8dd0531ecc7..3112ea2b915e1cccfc2e733289eaf7c3145b2d33 100644 GIT binary patch delta 1878 zcmV-c2dVgc<_?e~e+FVpM??Vs0RI60puMM)000LYNkl-#dN4ml`lO1q10%f3oB|Gw04Z_s+~YbLI*a zqOGm%fZOf2$Yk=x}^@51ZX|10qr5%hF({qU)hduM@PqD5&0DO zIq(7C+N5X>7!i>hwryXJ$K%hos>7BHh(@FBTI)-|SwI!mX{|}8(`2(*EXxAGFbv#o zH$I;ak#$|#f52_6_3z{H__sT1Kzn=pQNu9)0-PySIGIc`J3GtV+#CxF3uvv2cP2u0 zbv1s!pFki$AP`t<&^IFTt5_`dw9*DB(=>krd;xd?GMNn1)6>k%%#g`sHrwASJRT3V zwY7x9Vcc%FQ=A6A=f8?LKWm!y2OfWq?jcwaoQhY5+ zDZ=3}4Gj$_wK5{V$z(F0Jb3V6wv=p11M-vfF3<{)N~K675-cq(RYdW%_7 zsd0*a5RtR7SZrz|nGFrdD?bPv0hpYeWPE&l!|`1yM1;o1Mh+i7>=aFiNc%=c7{v;^ zy1L%ce_G!M-US#P9p%}xEw6O{Gs$FP4kk7{1TRj&E(|djw)J;*RNk= z7=|+^nj?|O;>5(nP+^-@bD*Q6qgh1$3Havbf981f=+Tak`ErN|$B!R(j99WP>;1vO z!6#0=TGRNifX}il5{bl~D-X+#GLc9)OSacAj6W6Due^bLcrXAkHa1pv==AjT6gnRO z5{U$fM53fzRaF&d&YW3SK0G|kix)38lxt{cAQFizD=l&=7K=Sx)xb2(Tc&C1Q>RX8 zf2EXW*$Zy?OQlkJEmy8wDJvI=MApe^t@Ziy=S#{NhM`ZNKCMmD)TU|PaP(FH?d|PH zSPsl8>R~I1Wm!y3t+;}o&d$zy$Qxi7#wUQ%S~D{I0!K#?`KYa}?SS%lJRg$ZNzKj8 z?WJy;!g&LL%jI%?pe)O3f#vmfVPRqKG}|PLi;FA%Nkoph$Omlcbb8y4>*UFkT)cR( zWSe||wq{ z50J~{cD&JIBof({0ZJ*nUM~P5GOD!J ziTnlC)zu}1-v+9xs#cO=TIZ((|DlcT3=564owrw*qGD13?F00UP;Pd%7apHtCGH&+w z_n&j>R*e^dSsOG}HR{2R-%R>kY9Qj23_W64M)k_CR^^?FfC zkxV9cQQh@4H8pYQ&>;Y{f7X`<1_o{y*00NrPE1UE8;L}I1RSfWsll==UcGv?JKC-x z6bjMU*yvo|j>qGluWeIoxzUzoeFpph%TJ(S_U{_uaG2)iX6N#I5$UDKkyFw0fyv3q zbYo-V4d54mKNt*R7)IfSddCnEnwpwc(ulygVHjO~eSQBf+P>7yf1=T7SZjR;cn_Ad z7Kub+$5y9(`}Wb&(!#-m2c4qtbGh8vp`oD-4=9Sh0f+JN@mHZx=qtl8-Upg}J|Ce_ z2oYg^e!gPaYr`-&a^wiDt*y>p7vQFdoEsPzDEj0bHoH!WX_~(Veh2sfve_(CQ&ZbM zX05BMqrSer&?&yre_CIT$K!vb6348CM5EDnwbp+Ie&&>Etx2U)%+Ah|N~Ks_T--1@ ztdydvstUi~PcRt7@At3uH8(BGx;QvE_^-|CwAD`yPHL@x3-nOrQ-h_YB{G@Js!t6( z9uHoxx0rLZfLltbt9^ZarQ?Z88Q{>_*;#K{R#~ zT8@gv3ejkEzt;MMh#a$R`XR^FT^Oo@lKfd%fQ8?%lgrkv!&q0Baxh!@r0V Q=>Px#07*qoM6N<$g8GEEzW@LL delta 94 zcmaFHS2IB+!r9ZsF{I+w+p7mT85}s69e?LXdG9#i*|C|G<=IpY&q-Sr)R^pLX8?f$ q=?~T*x*?Xqp9jQXxWG9<#gkVwXleOR$47s{K|-FcelF{r5}E)~P9KT@ diff --git a/assets/tray-disconnected.png b/assets/tray-disconnected.png index c0df9eceddee085b0601de1282e3bfb5e2822e4c..e331041e2fc86468d341ad184a30802138e43d6e 100644 GIT binary patch delta 1880 zcmV-e2dDUf0p|{oB!32COGiWi{{a60|De66lK=n*97#k$RA_=RW*{ z9|6Ne5f~>JF(jY~gQ`wuT7j?yYMORhHeF^abya0E(QK+}DpjLy(nY0KrCsC?Xr{Ad z5>2LM5sZOJGpQn_Xe1{j{E7)km9QZ|%(LISUEqfd7{h@1(SPsC@7#Od{hs&Ez4yHD zwNNBacYu;Tx@LffB68cd?OV}k^u>NT>??q9INYhV{usCdsN6QKHK|mJbUKY?SpXP@ zfy?E>>-8eCZGT7`xU04PeKZ>V>QDpd?Cd;m7{*_K%ejOTi3AG^3oI@!va+&*);j-S zB9xbx>5B%PtO~fOn>H6vQOQzET*TYnVp@*w(Wfp z-wLG^fk1$Uh6a?{$jC2E)BNE6{rd}rdJ^4zICG*o7!0mXPfw5L_SrNCy1KfWMdUw#cYkqlk;ji8A9~L31`(mXz1<07&9bbw zM@B}TI_+vp=f478%d&{YV#iJ%);G#nEaoiP9>XyHl-s`X2D0VBFu>&G+9puqenaX#p7}6>+5m3TxhL- z1N1^Rg*rPs&#_*Z6?KO#CM?U!eX#F$cX!uAHUPsgJ^+-~n)&(pW1_e_=I7^~d8sVR zx(e9TKVYpqGA(+9dSKwDcIZEbA_zRzwjO@9-w z*9%asY}>8?$Ye5yK5((%hy}o@eC7226_iqH8K9(OuaeI3Bc}#?RbtzALPT;^fqi3a zY>ct7v4VXnDk|vh?LE*qZnxX{nJ5vFabQDqI><`&{P}YR1_lcDIeq%{fdWuU;qiC? z5Rq}EwT@*kC@(KB=zJ1TR#vtlhJR_TpD4?+9s+3~SI#)GsIIPdex^m_p~|Yn{{|ct z;6x)QfCrICWLW`-$Ze-FXM&tKxZQ4iJ|6%g@;PM7Y1_7M0k()xTU&d440l0YU7eHv zmQw2PkPRTK&))?I1OmDGLePUvwpkJPFGc+``v5{=b6~iz-1X4;VT3cK5ou(W)M1+=>7Ki+6%d$SoZQqmwlarH)U@({l ze&F$VP)d{wf#@eh0WvRaJ#$Su8Cr z9Sz$p@caEVHa0q!ccanhhg@}DZ?;&1_uZKn}4@|p__%n;egiq zAHZ9%u3E%mu|r#(N=r*=X=$OdveGe)Wipv7qoboc9#G_c0}iI9rk4DE|7V6_ybUya zy~)=#P$={(;CFx*Ae~MV zkH-&u%vx7hw;|eQ@qb!t{o80X`bUa!%$kdEIQ*v8`p>|R9h=sgWHQOZ!UD-;lGWAK z9mQd#6lG;)_2Ik3nEelI5ONakQ9-pTI(kskLT-wfq|mvnEwMW&cP~L SQW%c_0000 vJ~IOd{E#lF1~WD@*cpNu4(bk*R7|%p&T5yk{@Iio2NLvj^>bP0l+XkKT09}m diff --git a/scripts/gen_tray_icons.py b/scripts/gen_tray_icons.py index c157cbd..f15422c 100644 --- a/scripts/gen_tray_icons.py +++ b/scripts/gen_tray_icons.py @@ -1,62 +1,64 @@ #!/usr/bin/env python3 -"""Generate the two tray icons (RGBA PNG, 48x48) with an "H" glyph. -Run once; the PNGs are committed under assets/. No third-party deps.""" -import zlib, struct, os - -W = H = 48 - -def draw_h(color): - """Return a W*H*4 RGBA bytearray with an "H" glyph on a transparent - background. `color` is (r, g, b, a).""" - r, g, b, a = color - bar = 8 # stroke thickness of each bar - margin = 10 # gap from the canvas edge to the vertical bars - # Vertical bars span the full letter height. - v_top, v_bot = margin, H - margin - # Horizontal center bar, vertically centered. - c_top = H // 2 - bar // 2 - c_bot = H // 2 + bar // 2 - left = margin - right = W - margin - bar - buf = bytearray(W * H * 4) - for y in range(H): - for x in range(W): - on = False - if v_top <= y < v_bot: - if left <= x < left + bar: - on = True - if right <= x < right + bar: - on = True - if c_top <= y < c_bot and left + bar <= x < right: - on = True - i = (y * W + x) * 4 - if on: - buf[i:i+4] = bytes((r, g, b, a)) - # else: leave transparent (alpha 0) - return buf - -def write_png(path, pixels): - raw = bytearray() - for y in range(H): - raw.append(0) # filter type 0 (none) - raw += pixels[y * W * 4:(y + 1) * W * 4] - comp = zlib.compress(bytes(raw), 9) - def chunk(typ, data): - body = typ + data - return (struct.pack(">I", len(data)) + body - + struct.pack(">I", zlib.crc32(body) & 0xffffffff)) - sig = b'\x89PNG\r\n\x1a\n' - ihdr = struct.pack(">IIBBBBB", W, H, 8, 6, 0, 0, 0) # 8-bit RGBA - with open(path, "wb") as f: - f.write(sig + chunk(b'IHDR', ihdr) - + chunk(b'IDAT', comp) + chunk(b'IEND', b'')) - -here = os.path.dirname(os.path.abspath(__file__)) -assets = os.path.join(os.path.dirname(here), "assets") -os.makedirs(assets, exist_ok=True) -write_png(os.path.join(assets, "tray-connected.png"), - draw_h((255, 255, 255, 255))) # white H -write_png(os.path.join(assets, "tray-disconnected.png"), - draw_h((160, 160, 160, 255))) # dim grey H -print("wrote", os.path.join(assets, "tray-connected.png"), - os.path.join(assets, "tray-disconnected.png")) +"""Regenerate every brand asset in assets/ from assets/hyprlay.svg. + +That SVG is the single source for all sizes; outputs are committed, so +run this after editing it and commit the result. +""" +import os +import shutil +import subprocess +import sys +import tempfile + +HERE = os.path.dirname(os.path.abspath(__file__)) +ASSETS = os.path.join(os.path.dirname(HERE), "assets") +SVG = os.path.join(ASSETS, "hyprlay.svg") + +H_FILL = 'fill="#ffffff"' +H_DIMMED = 'fill="#a0a0a0"' +TRAY_PX = 48 +APP_PX = (48, 64, 128, 256) +ICO_SIZES = [(px, px) for px in sorted(APP_PX + (32, 16), reverse=True)] + + +def raster(svg_text, px, out_path): + with tempfile.NamedTemporaryFile("w", suffix=".svg", delete=False) as f: + f.write(svg_text) + src = f.name + try: + subprocess.run( + ["rsvg-convert", "-w", str(px), "-h", str(px), "-o", out_path, src], + check=True, + ) + finally: + os.unlink(src) + + +def main(): + if not shutil.which("rsvg-convert"): + sys.exit("error: rsvg-convert not found (install librsvg)") + try: + from PIL import Image + except ImportError: + sys.exit("error: Pillow not found (needed for assets/hyprlay.ico)") + + with open(SVG) as f: + svg = f.read() + if svg.count(H_FILL) != 1: + sys.exit(f"error: expected exactly one {H_FILL} (the H glyph) in {SVG}") + + raster(svg, TRAY_PX, os.path.join(ASSETS, "tray-connected.png")) + raster(svg.replace(H_FILL, H_DIMMED, 1), TRAY_PX, + os.path.join(ASSETS, "tray-disconnected.png")) + for px in APP_PX: + raster(svg, px, os.path.join(ASSETS, f"hyprlay-{px}.png")) + + master = os.path.join(ASSETS, "hyprlay-256.png") + Image.open(master).save( + os.path.join(ASSETS, "hyprlay.ico"), format="ICO", sizes=ICO_SIZES + ) + print("wrote tray pair, hyprlay PNGs", APP_PX, "and hyprlay.ico from", SVG) + + +if __name__ == "__main__": + main() diff --git a/src/platform/icon.rs b/src/platform/icon.rs index 5379610..f9c449f 100644 --- a/src/platform/icon.rs +++ b/src/platform/icon.rs @@ -1,4 +1,5 @@ -//! Bundled app icon: the brand mark (black rounded square, bold white "H") +//! Bundled app icon: the brand mark (black disc with a dark-grey ring, +//! bold white "H") //! as a scalable SVG plus the PNG/ICO raster sizes, all committed under //! `assets/hyprlay.{svg,png,ico}`. This module exposes the iced window icon //! built from the embedded 256px PNG (used by the settings GUI and the