v2.0.13 — edge-to-edge fullscreen overlays, rounded-cards badge variant

- Overlays: drop the 24/40/54px inset frame on tasks, calendar,
  gallery, search, detail, edit modal, bookmarks, email, gitea and
  oumta-dashboard so they fill the viewport like the support
  overlay does. Removed the shared border-radius + overflow:hidden
  rule on their inner containers (only settings + dialog still use
  it) so the card's top colour bar isn't clipped.
- Done badge: the corner-triangle variant gets chopped by rounded
  card borders. applyDesign now toggles body.rounded-cards whenever
  --ui-radius-card > 0, and the CSS swaps the triangle for a 18px
  circle pill with the check centred. Triangle stays for square
  cards.
- Support plugin: "Close ticket" button is a regular labelled
  button now (was a 30×30 icon ghost that clipped the text). Empty
  hero state ("select a ticket") matches the board's empty style —
  centred in the column with a pixel-font blink-cursor label.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
thandClaude Opus 4.7 committed 2026-04-19 12:34:50 +02:00
1 parent 7bce6a3a36
commit 8cbec8d601
11 files changed
+66 -30

No files matched your search

+11 -6
View File
@@ -1516,6 +1516,11 @@ if (str_starts_with($route, '/api/')) {
if (d.animSpeed === 'off') document.body.classList.add('anim-off');
if (d.animSpeed === 'fast') document.body.classList.add('anim-fast');
if (d.animSpeed === 'slow') document.body.classList.add('anim-slow');
// Rounded-card badge variant: the default "done" corner triangle
// gets clipped by a rounded border, so when the user opts into
// rounded cards we swap it for a circle pill in the BR corner
// (see .rounded-cards .card-done-badge in style.css).
document.body.classList.toggle('rounded-cards', (Number(d.radiusCard) || 0) > 0);
};
window.loadDesign = function() {
let saved = {};
@@ -2288,7 +2293,7 @@ if (str_starts_with($route, '/api/')) {
<!-- Search -->
<div class="overlay fixed inset-0 z-[70]" style="background:var(--t-overlay)" id="search">
<div class="bg-t-surface border border-t-border rounded-sm shadow-2xl flex flex-col absolute" style="inset:40px;">
<div class="bg-t-surface flex flex-col absolute" style="inset:0;">
<div class="flex flex-col border-b border-t-border">
<div class="flex items-center gap-3 px-4 py-3">
<i class="ph ph-magnifying-glass text-t-accent text-base"></i>
@@ -2341,7 +2346,7 @@ if (str_starts_with($route, '/api/')) {
<!-- Tasks -->
<div class="overlay fixed inset-0 z-[72]" style="background:var(--t-overlay)" id="tasks">
<div class="bg-t-surface border border-t-border rounded-sm shadow-2xl flex flex-col absolute" style="inset:54px;">
<div class="bg-t-surface flex flex-col absolute" style="inset:0;">
<div class="flex items-center gap-3 px-4 py-3 border-b border-t-border">
<i class="ph ph-check-square-offset text-t-accent2 text-base"></i>
<h2 class="font-pixel text-xs text-t-accent2">global_tasks</h2>
@@ -2366,7 +2371,7 @@ if (str_starts_with($route, '/api/')) {
<!-- Detail -->
<div class="overlay fixed inset-0 z-[75]" style="background:var(--t-overlay)" id="detail">
<div class="bg-t-surface border border-t-border flex absolute" style="inset:40px;">
<div class="bg-t-surface flex absolute" style="inset:0;">
<!-- Group sidebar (hidden for single cards) -->
<div id="detail-sidebar" class="hidden w-56 shrink-0 border-r border-t-border flex flex-col">
<div class="px-3 py-3 border-b border-t-border flex items-center gap-2">
@@ -2434,7 +2439,7 @@ if (str_starts_with($route, '/api/')) {
<!-- Calendar -->
<div class="overlay fixed inset-0 z-[73]" style="background:var(--t-overlay)" id="calendar">
<div class="bg-t-surface border border-t-border flex flex-col absolute" style="inset:40px;">
<div class="bg-t-surface flex flex-col absolute" style="inset:0;">
<div class="flex items-center gap-2 px-5 py-3 border-b border-t-border shrink-0 relative">
<i class="ph ph-calendar-dots text-t-accent text-base"></i>
<button id="cal-today" class="font-pixel text-[10px] px-2 py-0.5 border border-t-border text-t-muted hover:border-t-accent hover:text-t-accent transition-colors">Today</button>
@@ -2457,7 +2462,7 @@ if (str_starts_with($route, '/api/')) {
<!-- Assets (was Gallery) -->
<div class="overlay fixed inset-0 z-[72]" style="background:var(--t-overlay)" id="gallery">
<div class="bg-t-surface border border-t-border rounded-sm shadow-2xl flex flex-col absolute" style="inset:40px;">
<div class="bg-t-surface flex flex-col absolute" style="inset:0;">
<div class="flex items-center gap-3 px-4 py-3 border-b border-t-border shrink-0">
<i class="ph ph-folder-open text-t-accent text-base"></i>
<h2 class="font-pixel text-xs text-t-accent">assets</h2>
@@ -2530,7 +2535,7 @@ if (str_starts_with($route, '/api/')) {
<!-- Editor -->
<div class="overlay fixed inset-0 z-[60]" style="background:var(--t-overlay)" id="modal">
<div class="bg-t-surface border border-t-border flex flex-col absolute" style="inset:40px;">
<div class="bg-t-surface flex flex-col absolute" style="inset:0;">
<div class="card-bar w-full shrink-0" id="editor-color"></div>
<div class="flex items-center justify-between px-4 py-2.5 border-b border-t-border shrink-0">
<div class="flex items-center gap-3"><i class="ph ph-file-plus text-t-accent text-sm"></i><h2 id="modal-title" class="font-pixel text-xs text-t-accent">new_card</h2></div>