Skip to content

Handoff: redesign Dynamic Island « capsule flottante » — reprise de session #2

Description

@titoo-dev

Contexte

Session de redesign complet du Dynamic Island (branche feat/dynamic-island) vers un langage « capsule flottante » : île détachée du bord (gap 6px), rayons pleine capsule, plus de notch, hiérarchie disque-accent/boutons fantômes, vrai clipping arrondi des images.

Fait et poussé sur ce fork (feat/dynamic-island)

  • bb66d96fCapsule flottante : suppression du notch mode (NotchVisual/CameraLens supprimés, toggle Settings retiré), pilule flottante à 6px du bord, corps GPU Rectangle (plus de Canvas CPU), radius = hauteur/2 au repos / 28 en étendu.
  • 30648fc8Fix cache wallpaper : le cache de miniatures n'avait JAMAIS fonctionné (url === string toujours faux en Qt6 + un process test -f et un mkdir spawnés par vignette). Corrigé dans Widgets/CachingImage.qml (état explicite _usingCache/_cacheSaved, retry à l'entrée dans le viewport) + WallpaperPanel (reuseItems, buffer 1 rangée, placeholder fade-in). Ouverture à chaud : 0 warning, 0 process.
  • 925a10b6Redesign média : pochette circulaire remplissant l'anneau de progression du chip (ClippingRectangle, l'ancien clip bbox laissait les coins carrés peindre PAR-DESSUS l'anneau) ; vue média rééquilibrée (art 50px centré, marquee à fondus doux via masque dégradé, eyebrow supprimé, play en disque accent, barre de progression cantonnée à la colonne texte, timestamps en swap avec la ligne artiste au survol du scrubber).
  • a444f918Couverture 100% : hub + 19 panels + panes + bannières alignés (boutons ronds, rangées capsules, conteneurs calmes + disque d'icône accent quand actif, hairlines, barres fines 4px). Nouveau panels/CapsuleSlider.qml partagé (slider « fat » iOS : icône dans le fill, lissage sur la VALEUR et non la géométrie — sinon fake sweep 0→valeur contre le spring d'expansion ; rectangles antialiasés natifs, pas de ClippingRectangle qui floutait le bord).

En attente (non commité dans l'arbre de travail)

  • DynamicIsland.qml : élévation supprimée → outlines colorés. Plus aucune ombre/glow : hairline neutre 0.22 (0.30 étendu), liseré accent 1.5px @0.65 en média/chip, liseré error en capture privacy (prioritaire). Ombre du satellite retirée, album-art bloom retiré, import QtQuick.Effects purgé (plus aucun FBO d'effet permanent). Vérifié live, journal propre. → à committer (feat(island): coloured outlines instead of elevation) puis push.

Reprise — prochaines étapes suggérées

  1. Committer/pousser le changement outlines ci-dessus.
  2. Vérifier visuellement le thème clair (tout a été validé en dark).
  3. ISLAND_AUDIT.md reste la référence des findings ouverts (a11y Accessible.*, Échap universel, i18n calendrier, etc.) — le redesign a réglé une partie de la dette visuelle/perf mais pas le clavier/a11y.
  4. Idées discutées non réalisées : bloom album-art re-proposable en option, resserrage éventuel des hauteurs au repos.

Environnement

  • Shell live : dms.service (Quickshell 0.3.0, Hyprland, 2 écrans) — hot-reload à la sauvegarde ; vérif : journalctl --user -u dms.service + dms ipc call island open <view>.
  • Remotes : origin = AvengeMedia (lecture seule), fork = titoo-dev (push OK, branche trackée).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions