@bobfrankston/rmfmail 1.2.186 → 1.2.188

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1440,9 +1440,26 @@ function showPreviewBodyMenu(absX, absY, selectedText, sourceWindow, linkUrl, li
1440
1440
  function toggleFullscreenPreview() {
1441
1441
  const body = document.body;
1442
1442
  const on = !body.classList.contains("fullscreen-preview");
1443
+ if (on && !currentMessage)
1444
+ return;
1443
1445
  body.classList.toggle("fullscreen-preview", on);
1446
+ try {
1447
+ window.mailxapi?.logClientEvent?.(`[fullscreen] preview ${on ? "ON" : "OFF"}`);
1448
+ } catch {
1449
+ }
1444
1450
  let exit = document.getElementById("mv-exit-fullscreen");
1445
1451
  if (on) {
1452
+ if (!document.getElementById("mv-fullscreen-hint")) {
1453
+ const hint = document.createElement("div");
1454
+ hint.id = "mv-fullscreen-hint";
1455
+ hint.textContent = "Fullscreen reading \u2014 press Esc or double-click to exit";
1456
+ hint.style.cssText = "position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:6000;background:rgba(0,0,0,0.7);color:#fff;padding:8px 16px;border-radius:16px;font-size:13px;pointer-events:none;opacity:1;transition:opacity 0.5s;";
1457
+ document.body.appendChild(hint);
1458
+ setTimeout(() => {
1459
+ hint.style.opacity = "0";
1460
+ }, 2500);
1461
+ setTimeout(() => hint.remove(), 3100);
1462
+ }
1446
1463
  if (!exit) {
1447
1464
  exit = document.createElement("button");
1448
1465
  exit.id = "mv-exit-fullscreen";
@@ -1464,6 +1481,7 @@ function toggleFullscreenPreview() {
1464
1481
  }
1465
1482
  } else {
1466
1483
  exit?.remove();
1484
+ document.getElementById("mv-fullscreen-hint")?.remove();
1467
1485
  }
1468
1486
  }
1469
1487
  function initViewer() {