Replace the launcher icon with a crescent moon and add a themed layer

The new icon is a pearl crescent on deep indigo, with the rest of the
moon still faintly visible behind it: hidden, not removed.

- ic_launcher_background: radial indigo gradient, replacing the flat
  colour resource (values/colors.xml, now unused, is removed)
- ic_launcher_foreground: faint full disc plus a gradient crescent,
  scaled to sit inside the 66 dp safe zone
- ic_launcher_monochrome: new; solid crescent over the disc at 30%
  alpha, used for Android 13+ themed icons

Both adaptive icons (regular and round) reference all three layers.
All shapes are plain paths and gradients, no masks. Built with
assembleDebug and checked in the APK with aapt2; not yet seen on a
device.

Co-Authored-By: agent <agent@bdeshi.space>
This commit is contained in:
2026-11-05 15:13:32 +06:00
co-authored by agent
parent 62549d7741
commit a24ff6a804
6 changed files with 69 additions and 12 deletions
@@ -0,0 +1,20 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="108dp"
android:height="108dp"
android:viewportWidth="108"
android:viewportHeight="108">
<!-- Deep indigo, lighter toward the upper right, behind the crescent -->
<path android:pathData="M0,0h108v108h-108z">
<aapt:attr name="android:fillColor">
<gradient
android:type="radial"
android:centerX="64.8"
android:centerY="37.8"
android:gradientRadius="86.4">
<item android:offset="0" android:color="#FF2E3478" />
<item android:offset="1" android:color="#FF0C0E2A" />
</gradient>
</aapt:attr>
</path>
</vector>
@@ -1,13 +1,31 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="108dp"
android:height="108dp"
android:viewportWidth="108"
android:viewportHeight="108">
<!-- A moon-like disc, partially eclipsed by a diagonal veil (cut in the background color) -->
<path
android:fillColor="#F2EDE4"
android:pathData="M28,54 A26,26 0 1,1 80,54 A26,26 0 1,1 28,54 Z" />
<path
android:fillColor="#1B1B3A"
android:pathData="M12,68 L36,92 L96,32 L72,8 Z" />
<!-- A crescent moon with the rest of the disc still faintly visible: hidden, not removed -->
<group
android:pivotX="54"
android:pivotY="54"
android:scaleX="0.88"
android:scaleY="0.88">
<path
android:fillAlpha="0.16"
android:fillColor="#C9CCF2"
android:pathData="M32.5,56.5 A24,24 0 1,1 80.5,56.5 A24,24 0 1,1 32.5,56.5 Z" />
<path android:pathData="M35.31,67.77 A24,24 0 1,0 67.77,35.31 A23,23 0 0,1 35.31,67.77 Z">
<aapt:attr name="android:fillColor">
<gradient
android:type="linear"
android:startX="80.5"
android:startY="80.5"
android:endX="35.31"
android:endY="35.31">
<item android:offset="0" android:color="#FFB4B6E4" />
<item android:offset="1" android:color="#FFFFFFFF" />
</gradient>
</aapt:attr>
</path>
</group>
</vector>
@@ -0,0 +1,20 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="108dp"
android:height="108dp"
android:viewportWidth="108"
android:viewportHeight="108">
<!-- Themed-icon layer: only alpha counts; the launcher supplies the tint -->
<group
android:pivotX="54"
android:pivotY="54"
android:scaleX="0.88"
android:scaleY="0.88">
<path
android:fillAlpha="0.3"
android:fillColor="#FFFFFFFF"
android:pathData="M32.5,56.5 A24,24 0 1,1 80.5,56.5 A24,24 0 1,1 32.5,56.5 Z" />
<path
android:fillColor="#FFFFFFFF"
android:pathData="M35.31,67.77 A24,24 0 1,0 67.77,35.31 A23,23 0 0,1 35.31,67.77 Z" />
</group>
</vector>
@@ -1,4 +1,5 @@
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@color/ic_launcher_background" />
<background android:drawable="@drawable/ic_launcher_background" />
<foreground android:drawable="@drawable/ic_launcher_foreground" />
<monochrome android:drawable="@drawable/ic_launcher_monochrome" />
</adaptive-icon>
@@ -1,4 +1,5 @@
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@color/ic_launcher_background" />
<background android:drawable="@drawable/ic_launcher_background" />
<foreground android:drawable="@drawable/ic_launcher_foreground" />
<monochrome android:drawable="@drawable/ic_launcher_monochrome" />
</adaptive-icon>
-3
View File
@@ -1,3 +0,0 @@
<resources>
<color name="ic_launcher_background">#1B1B3A</color>
</resources>