46998e6f05b2

fix: inline edit mode no longer hijacked by silver-platter type-to-search handler (v3.6.155)

time
2026-06-04 15:22 UTC · 4 months ago
machine
koh2
agent
claude-sonnet-4-6
session
fix inline edit email navigation bug
parent
288ded81074e
4 files manifest.firefox.json+1 −1manifest.json+1 −1package.json+1 −1src/content/inject.ts+3 −2
manifest.firefox.json+1 −1
@@ -2,7 +2,7 @@22   "_comment_audio_capture": "Firefox does not honor the Chrome 'audioCapture' optional_permission — getUserMedia in WebExtensions is gated solely by the runtime permission prompt. Microphone access for chirp pairing works from the popup under the existing '<all_urls>' host permission; no manifest entry is required or accepted here.",33   "manifest_version": 3,44   "name": "Peach Password Manager",5-  "version": "3.6.154",5+  "version": "3.6.155",66   "description": "Zero-knowledge password manager",77   "browser_specific_settings": {88     "gecko": {

view file

manifest.json+1 −1
@@ -1,7 +1,7 @@11 {22   "manifest_version": 3,33   "name": "Peach Password Manager",4-  "version": "3.6.154",4+  "version": "3.6.155",55   "description": "Zero-knowledge password manager",66   "action": {77     "default_popup": "src/popup/index.html",

view file

package.json+1 −1
@@ -1,6 +1,6 @@11 {22   "name": "peach",3-  "version": "3.6.154",3+  "version": "3.6.155",44   "description": "Zero-knowledge password manager",55   "type": "module",66   "scripts": {

view file

src/content/inject.ts+3 −2
@@ -1371,7 +1371,7 @@13711371 13721372   let query = "";13731373   let focusedIndex = -1;1374-  let currentMode: "list" | "create" | "success" | "silver-platter" | "identity-helper" = "list";1374+  let currentMode: "list" | "create" | "success" | "silver-platter" | "identity-helper" | "edit" = "list";13751375   let searchInput: HTMLInputElement | null = null;13761376   let identityMode: IdentityFilterMode = "both";13771377   // Tracks the silver-platter entry the user pivoted away from, so the@@ -2587,6 +2587,7 @@25872587    * with the new fields. Cancel returns without writing.25882588    */25892589   async function renderInlineEdit(summary: SelectorEntry) {2590+    currentMode = "edit";25902591     container.innerHTML = "";25912592     const wrap = document.createElement("div");25922593     wrap.className = "create-form-wrap";@@ -2841,7 +2842,7 @@28412842       if (e.key === "Escape") { e.preventDefault(); dismiss(true); }28422843       return;28432844     }2844-    if (currentMode === "create" || currentMode === "success" || currentMode === "silver-platter" || currentMode === "identity-helper") {2845+    if (currentMode === "create" || currentMode === "success" || currentMode === "silver-platter" || currentMode === "identity-helper" || currentMode === "edit") {28452846       if (e.key === "Escape") { e.preventDefault(); dismiss(true); }28462847       return;28472848     }

view file