886121cd569c

fix handleEditorFocusOut race when switching fields via addOtherIdentity (v2.40.9)

time
2026-05-13 17:32 UTC · 5 months ago
machine
koh2
parent
8420addde960
4 files manifest.firefox.json+1 −1manifest.json+1 −1package.json+1 −1src/popup/views/Entry.tsx+5 −0
manifest.firefox.json+1 −1
@@ -1,7 +1,7 @@11 {22   "manifest_version": 3,33   "name": "Peach",4-  "version": "2.40.8",4+  "version": "2.40.9",55   "description": "Zero-knowledge password manager",66   "browser_specific_settings": {77     "gecko": {

view file

manifest.json+1 −1
@@ -1,7 +1,7 @@11 {22   "manifest_version": 3,33   "name": "Peach",4-  "version": "2.40.8",4+  "version": "2.40.9",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": "2.40.8",3+  "version": "2.40.9",44   "description": "Zero-knowledge password manager",55   "type": "module",66   "scripts": {

view file

src/popup/views/Entry.tsx+5 −0
@@ -366,6 +366,11 @@366366     const nextTarget = event.relatedTarget;367367     if (nextTarget instanceof Node && event.currentTarget.contains(nextTarget)) return;368368 369+    // addOtherIdentity / startEdit may have already switched editingField before370+    // focusout fires (SolidJS removes the old editor node synchronously, which371+    // triggers blur with relatedTarget=null). Don't cancel the new edit.372+    if (editingField() !== field) return;373+369374     const entry = props.entry;370375     if (!entry) return;371376 

view file