From 597d99a8deafb2275d19cf2c083070edf2cc52c3 Mon Sep 17 00:00:00 2001 From: william Date: Sun, 20 Sep 2026 10:37:29 +0200 Subject: [PATCH] Corrige le bandeau d'outils invisible et force l'editeur en pleine largeur MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bug reel (retour utilisateur direct, capture d'ecran a l'appui) : .docEditor3 utilisait position:fixed; inset:0 pour occuper tout l'ecran, mais son ancetre main.content a overflow:hidden (voir body.objectEditBody dans static/style.css) — qui ROGNE VISUELLEMENT tout descendant position:fixed a sa propre boite, laquelle commence sous la barre de navigation du site, pas au vrai sommet du viewport. Le bandeau d'outils (56px) tombait entierement dans la zone rognee, invisible, pendant que le reste de l'editeur semblait juste decale vers le haut a sa place. Corrige en respectant le pattern deja etabli par les autres editeurs (body.objectEditBody + main.content en flex:1 1 auto) plutot qu'un overlay fixed — .docEditor3 est desormais un simple enfant flex qui remplit main.content. Meme correction pour le tiroir mobile des barres laterales (position:absolute relatif a .docBodyWrap plutot que position:fixed relatif au viewport). Ajoute aussi une regle pour que l'editeur occupe toute la largeur de la fenetre bord a bord (demande explicite) : .content/.content-wide imposent normalement 760px/1600px avec padding fixe. SKIP=djlint : meme backlog H021 pre-existant que les commits precedents (document_edit.html verifie clean individuellement). ruff/mypy --strict/vulture/bandit/import-linter/eslint/stylelint tous verts ; 24 tests du support de formation verifies apres coup (changement CSS/Jinja pur, aucune logique serveur touchee) ; verifie en live que le serveur sert bien le CSS corrige. Co-Authored-By: Claude Sonnet 5 --- static/document/document-editor.css | 39 +++++++++++++++++++++++---- templates/document/document_edit.html | 2 +- 2 files changed, 35 insertions(+), 6 deletions(-) diff --git a/static/document/document-editor.css b/static/document/document-editor.css index 669cb279..349fa9d3 100644 --- a/static/document/document-editor.css +++ b/static/document/document-editor.css @@ -6,6 +6,21 @@ static/document/js/document-editor.js), avec ses propres tokens --doc-* ci-dessous plutôt que les --forge-* globaux. */ +/* Demande explicite : l'éditeur occupe TOUTE la largeur de la fenêtre, + bord à bord — .content limite normalement à 760px (voir static/style.css) + et .content-wide à 1600px, tous deux avec un padding fixe. Neutralisé + ici pour cette page précise seulement (ce fichier n'est chargé QUE par + templates/document/document_edit.html) : même sélecteur que la règle du + site (`body.objectEditBody > main.content`, spécificité identique), + mais chargé après static/style.css dans (voir son + {% block extra_head %}) donc prioritaire à spécificité égale. */ +body.objectEditBody > main.content { + max-width: none; + width: 100%; + padding: 0; + margin: 0; +} + .docEditor3 { --doc-bg: var(--forge-bg); --doc-bg-2: var(--forge-bg-secondary); @@ -17,9 +32,17 @@ --doc-accent-2: var(--accent-2); --doc-glow: 0 0 0 1px rgb(255 95 46 / 25%), 0 8px 24px -6px rgb(255 95 46 / 25%); - position: fixed; - inset: 0; - z-index: 20; + /* Remplit main.content (voir body.objectEditBody dans static/style.css : + `main.content` y est déjà `flex:1 1 auto; min-height:0; overflow:hidden; + display:flex; flex-direction:column;`) — jamais `position:fixed` : cet + ancêtre a `overflow:hidden`, qui ROGNE VISUELLEMENT tout descendant + `position:fixed` à sa propre boîte (laquelle commence sous la barre de + navigation du site, pas au vrai sommet du viewport) — bug réel trouvé + le 20/09/2026 : le bandeau d'outils (56px) tombait alors entièrement + dans la zone rognée, invisible, alors que le reste de l'éditeur + semblait décalé vers le haut à sa place. */ + flex: 1 1 auto; + min-height: 0; display: flex; flex-direction: column; background: var(--doc-bg); @@ -753,8 +776,14 @@ img.docImage { } .docSidebar { - position: fixed; - inset: 56px 0 58px; + /* position:absolute relative à .docBodyWrap (position:relative, voir + plus haut) plutôt que position:fixed relative au viewport : ce + dernier subirait le même rognage par overflow:hidden que .docEditor3 + (voir son commentaire) — inutile de toute façon ici, .docBodyWrap + exclut déjà .docTopbar/.docBottomNav (ses frères, jamais ses + parents), inset:0 suffit sans aucun calcul de hauteur de bandeau. */ + position: absolute; + inset: 0; width: 100%; z-index: 30; transition: transform 0.25s ease; diff --git a/templates/document/document_edit.html b/templates/document/document_edit.html index bffec528..ba5b1058 100644 --- a/templates/document/document_edit.html +++ b/templates/document/document_edit.html @@ -1,7 +1,7 @@ {% extends "base.html" %} {% block title %}Forge Engine — {{ support.name }}{% endblock %} {% block body_class %}objectEditBody{% endblock %} -{% block content_class %}content-wide{% endblock %} +{% block content_class %}{% endblock %} {% block extra_head %}