Mejorar diseño de barra de título PWA
All checks were successful
build-and-deploy / build-and-deploy (push) Successful in 55s

- Barra completamente transparente con patrón sutil de cuadrícula
- Título en chip cuadrado con bordes mínimamente redondeados
- Glassmorphism en el chip para contraste y legibilidad
- Patrón discreto (3% opacidad día, 2% noche)
- Configurar pointer-events para bloquear interacción debajo
This commit is contained in:
2025-10-16 23:26:51 -06:00
parent 563e920dad
commit c0a9ebe8d0

View File

@@ -44,9 +44,24 @@ onMounted(() => {
left: 0; left: 0;
right: 0; right: 0;
z-index: 9999; z-index: 9999;
background: rgba(255, 255, 255, 0.8); /* Completamente transparente con patrón sutil */
backdrop-filter: blur(20px) saturate(180%); background: transparent;
border-bottom: 1px solid rgba(0, 0, 0, 0.1); /* Patrón de puntos muy sutil para indicar área arrastrable */
background-image:
repeating-linear-gradient(
90deg,
transparent,
transparent 8px,
rgba(128, 128, 128, 0.03) 8px,
rgba(128, 128, 128, 0.03) 9px
),
repeating-linear-gradient(
0deg,
transparent,
transparent 8px,
rgba(128, 128, 128, 0.03) 8px,
rgba(128, 128, 128, 0.03) 9px
);
/* Esta propiedad permite arrastrar la ventana */ /* Esta propiedad permite arrastrar la ventana */
-webkit-app-region: drag; -webkit-app-region: drag;
app-region: drag; app-region: drag;
@@ -55,6 +70,8 @@ onMounted(() => {
padding: 0 1rem; padding: 0 1rem;
user-select: none; user-select: none;
transition: all 0.3s ease; transition: all 0.3s ease;
/* Bloquear interacción con elementos debajo */
pointer-events: auto;
} }
.titlebar-content { .titlebar-content {
@@ -65,20 +82,32 @@ onMounted(() => {
} }
.app-title { .app-title {
font-size: 0.875rem; font-size: 0.75rem;
font-weight: 600; font-weight: 600;
color: var(--color-gray-700); color: var(--color-gray-800);
white-space: nowrap; white-space: nowrap;
overflow: hidden; padding: 0.25rem 0.75rem;
text-overflow: ellipsis; /* Chip cuadrado con bordes mínimamente redondeados */
background: rgba(255, 255, 255, 0.85);
backdrop-filter: blur(10px) saturate(150%);
border-radius: 0.25rem;
box-shadow:
0 1px 3px 0 rgba(0, 0, 0, 0.1),
inset 0 1px 1px 0 rgba(255, 255, 255, 0.5);
border: 1px solid rgba(0, 0, 0, 0.08);
/* Permitir click en el chip */
-webkit-app-region: no-drag;
app-region: no-drag;
pointer-events: auto;
} }
/* Permitir que los botones dentro de la barra sean clickeables */ /* Permitir que los elementos interactivos dentro de la barra sean clickeables */
.window-titlebar button, .window-titlebar button,
.window-titlebar a, .window-titlebar a,
.window-titlebar input { .window-titlebar input {
-webkit-app-region: no-drag; -webkit-app-region: no-drag;
app-region: no-drag; app-region: no-drag;
pointer-events: auto;
} }
/* Modo oscuro */ /* Modo oscuro */
@@ -86,12 +115,31 @@ onMounted(() => {
<style> <style>
.dark .window-titlebar { .dark .window-titlebar {
background: rgba(0, 0, 0, 0.8) !important; /* Patrón más sutil en modo oscuro */
border-bottom-color: rgba(255, 255, 255, 0.1) !important; background-image:
repeating-linear-gradient(
90deg,
transparent,
transparent 8px,
rgba(255, 255, 255, 0.02) 8px,
rgba(255, 255, 255, 0.02) 9px
),
repeating-linear-gradient(
0deg,
transparent,
transparent 8px,
rgba(255, 255, 255, 0.02) 8px,
rgba(255, 255, 255, 0.02) 9px
);
} }
.dark .app-title { .dark .app-title {
color: var(--color-gray-200) !important; color: var(--color-gray-100) !important;
background: rgba(0, 0, 0, 0.7) !important;
border-color: rgba(255, 255, 255, 0.1) !important;
box-shadow:
0 1px 3px 0 rgba(0, 0, 0, 0.3),
inset 0 1px 1px 0 rgba(255, 255, 255, 0.05) !important;
} }
/* Ajustar el padding del contenido principal cuando la barra está visible */ /* Ajustar el padding del contenido principal cuando la barra está visible */