diff --git a/css/fvtt-hamalron.css b/css/fvtt-hamalron.css index 3d7522a..c025c5c 100644 --- a/css/fvtt-hamalron.css +++ b/css/fvtt-hamalron.css @@ -3151,6 +3151,31 @@ i.fvtt-hamalron { text-transform: uppercase; letter-spacing: 2px; } +/* Chat sidebar tools (Tarot, Actions, Épreuve) */ +.hamalron-chat-tools { + flex: 0 0 auto; + display: flex; + gap: 4px; + padding: 4px 8px; + border-bottom: 1px solid #444; + flex-wrap: wrap; +} +.hamalron-chat-btn { + display: flex; + align-items: center; + gap: 4px; + padding: 3px 8px; + background: #2a2a4a; + color: #e0e0e0; + border: 1px solid #555; + border-radius: 4px; + cursor: pointer; + font-size: 11px; + white-space: nowrap; +} +.hamalron-chat-btn:hover { + background: #3a3a6a; +} .application.dialog.fvtt-hamalron { color: var(--color-dark-1); background-color: var(--color-light-1); diff --git a/fvtt-hamalron.mjs b/fvtt-hamalron.mjs index 72b7089..1b79f94 100644 --- a/fvtt-hamalron.mjs +++ b/fvtt-hamalron.mjs @@ -210,22 +210,19 @@ Hooks.on("getSceneControlButtons", (controls) => { // Add system buttons to the chat sidebar function addChatTools() { - const controls = document.querySelector("#chat-controls") - if (!controls || controls.querySelector(".hamalron-chat-tools")) return + const chatEl = document.querySelector("#chat") + if (!chatEl || chatEl.querySelector(".hamalron-chat-tools")) return const tools = document.createElement("div") tools.className = "hamalron-chat-tools" - tools.style.cssText = "display:flex;gap:4px;padding:4px 8px;border-bottom:1px solid #444;margin-bottom:2px;flex-wrap:wrap" const addBtn = (icon, label, title, onClick) => { const btn = document.createElement("button") btn.type = "button" - btn.style.cssText = "display:flex;align-items:center;gap:4px;padding:3px 8px;background:#2a2a4a;color:#e0e0e0;border:1px solid #555;border-radius:4px;cursor:pointer;font-size:11px;white-space:nowrap" + btn.className = "hamalron-chat-btn" btn.innerHTML = ` ${label}` btn.title = title btn.addEventListener("click", onClick) - btn.addEventListener("mouseenter", () => { btn.style.background = "#3a3a6a" }) - btn.addEventListener("mouseleave", () => { btn.style.background = "#2a2a4a" }) tools.appendChild(btn) } @@ -244,7 +241,13 @@ function addChatTools() { await HamalronTirageTarot.promptEpreuve(actor) }) - controls.parentNode.insertBefore(tools, controls) + // Insérer en haut de #chat (avant le sidebar-tab-core) + const firstChild = chatEl.firstElementChild + if (firstChild) { + chatEl.insertBefore(tools, firstChild) + } else { + chatEl.appendChild(tools) + } } Hooks.on("renderChatLog", () => setTimeout(addChatTools, 0)) diff --git a/packs-system/hamalron-items/CURRENT b/packs-system/hamalron-items/CURRENT index f7753e2..5b54010 100644 --- a/packs-system/hamalron-items/CURRENT +++ b/packs-system/hamalron-items/CURRENT @@ -1 +1 @@ -MANIFEST-000006 +MANIFEST-000011 diff --git a/packs-system/hamalron-items/MANIFEST-000006 b/packs-system/hamalron-items/MANIFEST-000006 deleted file mode 100644 index c01d8e6..0000000 Binary files a/packs-system/hamalron-items/MANIFEST-000006 and /dev/null differ diff --git a/packs-system/hamalron-items/MANIFEST-000011 b/packs-system/hamalron-items/MANIFEST-000011 new file mode 100644 index 0000000..53628bb Binary files /dev/null and b/packs-system/hamalron-items/MANIFEST-000011 differ diff --git a/styles/chat.less b/styles/chat.less index 4c37db6..b291a25 100644 --- a/styles/chat.less +++ b/styles/chat.less @@ -959,3 +959,31 @@ letter-spacing: 2px; } } + +/* Chat sidebar tools (Tarot, Actions, Épreuve) */ +.hamalron-chat-tools { + flex: 0 0 auto; + display: flex; + gap: 4px; + padding: 4px 8px; + border-bottom: 1px solid #444; + flex-wrap: wrap; +} + +.hamalron-chat-btn { + display: flex; + align-items: center; + gap: 4px; + padding: 3px 8px; + background: #2a2a4a; + color: #e0e0e0; + border: 1px solid #555; + border-radius: 4px; + cursor: pointer; + font-size: 11px; + white-space: nowrap; + + &:hover { + background: #3a3a6a; + } +}