fix(notification): give reminders Calendula's own status-bar mark (#83)
The status bar draws a notification's small icon from its alpha channel alone, so the silhouette is all that distinguishes an app there — and ours was the stock Material "event" glyph, the same shape the system's date surfaces and every other calendar app use. Redrawn at 24dp from the launcher mark rather than scaled down from it: the numeral is dropped and the bloom's petals are filled instead of stroked, both of which turn to mush at this size. The bloom is sized and placed for legibility over fidelity, and the calendar body's opening is derived from where the bloom would collide with it. The shade needs no change — since Android 12 its header shows the launcher icon, which is already unmistakable.
This commit is contained in:
@@ -17,6 +17,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
a start gets the default too; one that names its own end — an `.ics` file, a
|
a start gets the default too; one that names its own end — an `.ics` file, a
|
||||||
duplicate — keeps that length. All-day events are unaffected ([#54]).
|
duplicate — keeps that length. All-day events are unaffected ([#54]).
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- A reminder in the status bar is now Calendula's own mark — the calendar with
|
||||||
|
the bloom — instead of the generic calendar glyph it shared with the system's
|
||||||
|
date surfaces and every other calendar app. The status bar draws that icon as
|
||||||
|
a plain silhouette, so its shape is the only thing that could tell them apart
|
||||||
|
([#83]).
|
||||||
|
|
||||||
## [2.17.1] — 2026-07-30
|
## [2.17.1] — 2026-07-30
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
@@ -1259,6 +1266,7 @@ automatically, with zero telemetry and no internet permission.
|
|||||||
[#79]: https://codeberg.org/jlmakiola/calendula/issues/79
|
[#79]: https://codeberg.org/jlmakiola/calendula/issues/79
|
||||||
[#81]: https://codeberg.org/jlmakiola/calendula/issues/81
|
[#81]: https://codeberg.org/jlmakiola/calendula/issues/81
|
||||||
[#82]: https://codeberg.org/jlmakiola/calendula/issues/82
|
[#82]: https://codeberg.org/jlmakiola/calendula/issues/82
|
||||||
|
[#83]: https://codeberg.org/jlmakiola/calendula/issues/83
|
||||||
[#87]: https://codeberg.org/jlmakiola/calendula/issues/87
|
[#87]: https://codeberg.org/jlmakiola/calendula/issues/87
|
||||||
[#89]: https://codeberg.org/jlmakiola/calendula/issues/89
|
[#89]: https://codeberg.org/jlmakiola/calendula/issues/89
|
||||||
[#103]: https://codeberg.org/jlmakiola/calendula/issues/103
|
[#103]: https://codeberg.org/jlmakiola/calendula/issues/103
|
||||||
|
|||||||
@@ -1,12 +1,54 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- Monochrome status-bar mark: Material "event" calendar glyph. -->
|
<!--
|
||||||
|
Status-bar mark for reminders (issue #83). Calendula's own mark, not the
|
||||||
|
stock Material "event" glyph it replaces: the status bar draws a small icon
|
||||||
|
from its alpha channel alone, so the silhouette is the only thing that can
|
||||||
|
tell Calendula apart from the system's date surfaces and every other
|
||||||
|
calendar app.
|
||||||
|
|
||||||
|
Redrawn for 24dp from design/icon/calendula_notification.svg rather than
|
||||||
|
scaled down from the launcher mark — the numeral "1" is dropped and the
|
||||||
|
bloom's petals are filled instead of stroked, both of which turn to mush at
|
||||||
|
this size. Stays opaque white on transparent; any colour here is discarded.
|
||||||
|
-->
|
||||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:width="24dp"
|
android:width="24dp"
|
||||||
android:height="24dp"
|
android:height="24dp"
|
||||||
android:viewportWidth="24"
|
android:viewportWidth="24"
|
||||||
android:viewportHeight="24"
|
android:viewportHeight="24">
|
||||||
android:tint="?attr/colorControlNormal">
|
<!-- Calendar body, left open at the bottom-right where the bloom sits -->
|
||||||
<path
|
<path
|
||||||
android:fillColor="@android:color/white"
|
android:strokeColor="#FFFFFFFF"
|
||||||
android:pathData="M19,3h-1V1h-2v2H8V1H6v2H5C3.89,3 3.01,3.9 3.01,5L3,19c0,1.1 0.89,2 2,2h14c1.1,0 2,-0.9 2,-2V5C21,3.9 20.1,3 19,3zM19,19H5V8h14V19zM7,10h5v5H7V10z" />
|
android:strokeWidth="1.9"
|
||||||
|
android:strokeLineCap="round"
|
||||||
|
android:strokeLineJoin="round"
|
||||||
|
android:pathData="M1.4,5.4H18.6M18.6,9.43V4.7C18.6,2.99 17.21,1.6 15.5,1.6H4.5C2.79,1.6 1.4,2.99 1.4,4.7V15.7C1.4,17.41 2.79,18.8 4.5,18.8H9.63" />
|
||||||
|
<!-- Calendula bloom: eight filled petals around a filled centre -->
|
||||||
|
<path
|
||||||
|
android:fillColor="#FFFFFFFF"
|
||||||
|
android:pathData="M17.6,16.35Q20.42,18.65 23.25,16.35Q20.42,14.05 17.6,16.35Z" />
|
||||||
|
<path
|
||||||
|
android:fillColor="#FFFFFFFF"
|
||||||
|
android:pathData="M17.26,17.16Q17.63,20.79 21.26,21.16Q20.89,17.53 17.26,17.16Z" />
|
||||||
|
<path
|
||||||
|
android:fillColor="#FFFFFFFF"
|
||||||
|
android:pathData="M16.45,17.5Q14.15,20.33 16.45,23.15Q18.75,20.33 16.45,17.5Z" />
|
||||||
|
<path
|
||||||
|
android:fillColor="#FFFFFFFF"
|
||||||
|
android:pathData="M15.64,17.16Q12.01,17.53 11.64,21.16Q15.27,20.79 15.64,17.16Z" />
|
||||||
|
<path
|
||||||
|
android:fillColor="#FFFFFFFF"
|
||||||
|
android:pathData="M15.3,16.35Q12.47,14.05 9.65,16.35Q12.47,18.65 15.3,16.35Z" />
|
||||||
|
<path
|
||||||
|
android:fillColor="#FFFFFFFF"
|
||||||
|
android:pathData="M15.64,15.54Q15.27,11.91 11.64,11.54Q12.01,15.17 15.64,15.54Z" />
|
||||||
|
<path
|
||||||
|
android:fillColor="#FFFFFFFF"
|
||||||
|
android:pathData="M16.45,15.2Q18.75,12.38 16.45,9.55Q14.15,12.38 16.45,15.2Z" />
|
||||||
|
<path
|
||||||
|
android:fillColor="#FFFFFFFF"
|
||||||
|
android:pathData="M17.26,15.54Q20.89,15.17 21.26,11.54Q17.63,11.91 17.26,15.54Z" />
|
||||||
|
<path
|
||||||
|
android:fillColor="#FFFFFFFF"
|
||||||
|
android:pathData="M16.45,13.85A2.5,2.5 0 1,1 16.45,18.85A2.5,2.5 0 1,1 16.45,13.85Z" />
|
||||||
</vector>
|
</vector>
|
||||||
|
|||||||
12
design/icon/calendula_notification.svg
Normal file
12
design/icon/calendula_notification.svg
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M1.4 5.4H18.6M18.6 9.43V4.7C18.6 2.99 17.21 1.6 15.5 1.6H4.5C2.79 1.6 1.4 2.99 1.4 4.7V15.7C1.4 17.41 2.79 18.8 4.5 18.8H9.63" stroke="black" stroke-width="1.9" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
<path d="M17.6 16.35Q20.42 18.65 23.25 16.35Q20.42 14.05 17.6 16.35Z" fill="black"/>
|
||||||
|
<path d="M17.26 17.16Q17.63 20.79 21.26 21.16Q20.89 17.53 17.26 17.16Z" fill="black"/>
|
||||||
|
<path d="M16.45 17.5Q14.15 20.33 16.45 23.15Q18.75 20.33 16.45 17.5Z" fill="black"/>
|
||||||
|
<path d="M15.64 17.16Q12.01 17.53 11.64 21.16Q15.27 20.79 15.64 17.16Z" fill="black"/>
|
||||||
|
<path d="M15.3 16.35Q12.47 14.05 9.65 16.35Q12.47 18.65 15.3 16.35Z" fill="black"/>
|
||||||
|
<path d="M15.64 15.54Q15.27 11.91 11.64 11.54Q12.01 15.17 15.64 15.54Z" fill="black"/>
|
||||||
|
<path d="M16.45 15.2Q18.75 12.38 16.45 9.55Q14.15 12.38 16.45 15.2Z" fill="black"/>
|
||||||
|
<path d="M17.26 15.54Q20.89 15.17 21.26 11.54Q17.63 11.91 17.26 15.54Z" fill="black"/>
|
||||||
|
<circle cx="16.45" cy="16.35" r="2.5" fill="black"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.0 KiB |
Reference in New Issue
Block a user