@bobfrankston/rmfmail 1.2.185 → 1.2.187
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.
- package/client/app.bundle.js +49 -0
- package/client/app.bundle.js.map +2 -2
- package/client/app.js +17 -2
- package/client/app.js.map +1 -1
- package/client/app.ts +16 -2
- package/client/components/message-viewer.js +42 -0
- package/client/components/message-viewer.js.map +1 -1
- package/client/components/message-viewer.ts +38 -0
- package/client/package.json +1 -1
- package/client/styles/layout.css +20 -5
- package/package.json +3 -3
- /package/packages/mailx-imap/{node_modules.npmglobalize-stash-71308 → node_modules.npmglobalize-stash-35072}/.package-lock.json +0 -0
package/client/app.js
CHANGED
|
@@ -2994,6 +2994,19 @@ window.addEventListener("message", (e) => {
|
|
|
2994
2994
|
else
|
|
2995
2995
|
window.open(url, "_blank", "noopener,noreferrer");
|
|
2996
2996
|
}
|
|
2997
|
+
if (e.data?.type === "imgLoadFail") {
|
|
2998
|
+
// Remote images failed to load inside the preview iframe even though
|
|
2999
|
+
// remote content was allowed — silent before; now in the daemon log
|
|
3000
|
+
// with the first failing URL (Bob 2026-07-28: Nextdoor digest showed
|
|
3001
|
+
// every image broken while curl fetched them fine).
|
|
3002
|
+
try {
|
|
3003
|
+
logClientEvent("[viewer] remote images failed to load", {
|
|
3004
|
+
failed: e.data.count, total: e.data.total, first: e.data.first,
|
|
3005
|
+
});
|
|
3006
|
+
}
|
|
3007
|
+
catch { /* diagnostic only */ }
|
|
3008
|
+
return;
|
|
3009
|
+
}
|
|
2997
3010
|
if (e.data?.type === "previewToggleFullscreen") {
|
|
2998
3011
|
toggleFullscreenPreview();
|
|
2999
3012
|
return;
|
|
@@ -4136,8 +4149,10 @@ document.getElementById("message-viewer")?.addEventListener("dblclick", (e) => {
|
|
|
4136
4149
|
// address or subject is a universal text-select gesture; hijacking it for
|
|
4137
4150
|
// fullscreen collapsed the whole UI to a near-empty viewer and looked
|
|
4138
4151
|
// broken (Bob 2026-06-05: "double-clicked a from address by mistake and
|
|
4139
|
-
// got this screen").
|
|
4140
|
-
//
|
|
4152
|
+
// got this screen"). The iframe-level dblclick toggle was ALSO removed
|
|
4153
|
+
// (it hijacked word-selection), so this chrome handler is now the only
|
|
4154
|
+
// entry into fullscreen-preview. toggleFullscreenPreview() itself guards
|
|
4155
|
+
// against entering with no message loaded.
|
|
4141
4156
|
if (target?.closest(".mv-header"))
|
|
4142
4157
|
return;
|
|
4143
4158
|
toggleFullscreenPreview();
|