Compare commits

...

2 Commits

Author SHA1 Message Date
Dorian
0f2e6f6aaf chore(android): update companion apk download 2026-06-19 21:28:29 +01:00
Dorian
5afe9e4aec fix(android): whole badge in background layer, ring inset to survive mask
Put dark fill + inset metallic ring (0.88) + grid (0.58) all in the background
(renders to the mask edge, no safe-zone crop); transparent foreground. Matches
a locally-rendered, circle-masked preview so the ring is visible and uncut.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 21:28:26 +01:00
3 changed files with 28 additions and 23 deletions

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Dark fill + the metallic ring at the circle's edge. The ring is in the <!-- Whole badge lives here (background renders to the mask edge with no
BACKGROUND because the background renders out to the visible mask edge, safe-zone cropping, unlike the foreground): dark fill + metallic ring pulled
whereas the foreground is cropped to the inner safe zone (which kept inward to ~0.88 so the mask can't clip it + grid at ~0.58. Matches the
clipping the ring). Scale ~0.95 puts it right at the dark circle's rim. --> locally-rendered preview. Foreground is transparent. -->
<vector xmlns:android="http://schemas.android.com/apk/res/android" <vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt" xmlns:aapt="http://schemas.android.com/aapt"
android:width="108dp" android:width="108dp"
@ -14,14 +14,15 @@
android:fillColor="#0A0A0A" android:fillColor="#0A0A0A"
android:pathData="M0,0h752v752H0z" /> android:pathData="M0,0h752v752H0z" />
<!-- Metallic ring -->
<group <group
android:pivotX="376" android:pivotX="376"
android:pivotY="376" android:pivotY="376"
android:scaleX="0.95" android:scaleX="0.88"
android:scaleY="0.95"> android:scaleY="0.88">
<path <path
android:fillColor="#00000000" android:fillColor="#00000000"
android:strokeWidth="26" android:strokeWidth="25"
android:pathData="M11.441,375.669a364.227,364.227 0 1,0 728.454,0a364.227,364.227 0 1,0 -728.454,0z"> android:pathData="M11.441,375.669a364.227,364.227 0 1,0 728.454,0a364.227,364.227 0 1,0 -728.454,0z">
<aapt:attr name="android:strokeColor"> <aapt:attr name="android:strokeColor">
<gradient <gradient
@ -30,10 +31,21 @@
android:startY="751.338" android:startY="751.338"
android:endX="0" android:endX="0"
android:endY="0"> android:endY="0">
<item android:offset="0" android:color="#FF666666" /> <item android:offset="0" android:color="#FF8A8A8A" />
<item android:offset="1" android:color="#FFC0C0C0" /> <item android:offset="1" android:color="#FFEDEDED" />
</gradient> </gradient>
</aapt:attr> </aapt:attr>
</path> </path>
</group> </group>
<!-- White Archipelago grid -->
<group
android:pivotX="376"
android:pivotY="376"
android:scaleX="0.58"
android:scaleY="0.58">
<path
android:fillColor="#FFFFFF"
android:pathData="M253.805,278.37V222.28H309.853V278.37H253.805ZM315.797,278.37V222.28H372.694V278.37H315.797ZM378.639,278.37V222.28H435.536V278.37H378.639ZM441.481,278.37V222.28H497.529V278.37H441.481ZM441.481,341.259V284.319H497.529V341.259H441.481ZM503.473,341.259V284.319H560.37V341.259H503.473ZM190.963,404.148V347.208H247.86V404.148H190.963ZM253.805,404.148V347.208H309.853V404.148H253.805ZM315.797,404.148V347.208H372.694V404.148H315.797ZM378.639,404.148V347.208H435.536V404.148H378.639ZM441.481,404.148V347.208H497.529V404.148H441.481ZM503.473,404.148V347.208H560.37V404.148H503.473ZM190.963,466.187V410.097H247.86V466.187H190.963ZM253.805,466.187V410.097H309.853V466.187H253.805ZM441.481,466.187V410.097H497.529V466.187H441.481ZM503.473,466.187V410.097H560.37V466.187H503.473ZM253.805,529.076V472.136H309.853V529.076H253.805ZM315.797,529.076V472.136H372.694V529.076H315.797ZM378.639,529.076V472.136H435.536V529.076H378.639ZM441.481,529.076V472.136H497.529V529.076H441.481Z" />
</group>
</vector> </vector>

View File

@ -1,19 +1,12 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- White Archipelago grid only, scaled down (~0.55) so it sits small inside the <!-- Transparent — the whole badge (ring + grid) is in the background layer so it
circle with breathing room. The ring lives in the background layer. --> renders to the mask edge without safe-zone cropping. -->
<vector xmlns:android="http://schemas.android.com/apk/res/android" <vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="108dp" android:width="108dp"
android:height="108dp" android:height="108dp"
android:viewportWidth="752" android:viewportWidth="108"
android:viewportHeight="752"> android:viewportHeight="108">
<path
<group android:fillColor="#00000000"
android:pivotX="376" android:pathData="M0,0h108v108H0z" />
android:pivotY="376"
android:scaleX="0.55"
android:scaleY="0.55">
<path
android:fillColor="#FFFFFF"
android:pathData="M253.805,278.37V222.28H309.853V278.37H253.805ZM315.797,278.37V222.28H372.694V278.37H315.797ZM378.639,278.37V222.28H435.536V278.37H378.639ZM441.481,278.37V222.28H497.529V278.37H441.481ZM441.481,341.259V284.319H497.529V341.259H441.481ZM503.473,341.259V284.319H560.37V341.259H503.473ZM190.963,404.148V347.208H247.86V404.148H190.963ZM253.805,404.148V347.208H309.853V404.148H253.805ZM315.797,404.148V347.208H372.694V404.148H315.797ZM378.639,404.148V347.208H435.536V404.148H378.639ZM441.481,404.148V347.208H497.529V404.148H441.481ZM503.473,404.148V347.208H560.37V404.148H503.473ZM190.963,466.187V410.097H247.86V466.187H190.963ZM253.805,466.187V410.097H309.853V466.187H253.805ZM441.481,466.187V410.097H497.529V466.187H441.481ZM503.473,466.187V410.097H560.37V466.187H503.473ZM253.805,529.076V472.136H309.853V529.076H253.805ZM315.797,529.076V472.136H372.694V529.076H315.797ZM378.639,529.076V472.136H435.536V529.076H378.639ZM441.481,529.076V472.136H497.529V529.076H441.481Z" />
</group>
</vector> </vector>