UI extension#18
Open
stefmorp wants to merge 8 commits into
Open
Conversation
Adds a new action button that deletes both displayed contacts, wired through the window init and UI state handling, with new i18n label strings. Made-with: Cursor
Align ADR with RFC 2426 and Thunderbird-style ;;Street;City;... vCards, keep legacy ;;;... parsing, emit Address2 via Extended field, and document parse/generate behavior. Made-with: Cursor
Apply all editable field values from the DOM (scoped lookup under AttributesTableRows) and always persist when any fields are present, fixing Keep both / left card skips. Add comments explaining display vs raw getProperty and trade-offs. Made-with: Cursor
vCardUtils: describe formatAdrValue (escape each ADR component, join with unescaped delimiters) and why the full composite must not pass through escapeVCardValue, which broke Thunderbird's address editor. duplicateEntriesWindow: clarify updateAbCard — getCardFieldValues is the source of truth so Apply and Keep both always persist when the comparison table has editable rows, avoiding skipped API writes when raw card vs form comparison falsely matched. Made-with: Cursor
… comparison table DOM-only copy for editable fields when the left cell is empty; Apply and Keep both still handle saving. Includes i18n, window wiring, and architecture notes. Made-with: Cursor
Save the kept column from the comparison table and delete the other contact, ignoring the keep radio. Wired in window.html, window-init, UI state, and i18n. Made-with: Cursor
Introduces a Make different action that saves both contacts after setting a synthetic _AimScreenName built from a configurable prefix (nodupAimPrefix), the full resolved display name, and the last eight characters of the card id so same-prefix ids stay distinct. The vCard layer maps _AimScreenName to X-AIM for round-trip persistence through contacts.update. Also wires the new button in the duplicate window UI and locales, trims verbose address book loading logs, and updates test VCF fixtures. Made-with: Cursor
Bump the add-on version to 2.2.4 in manifest.json and align install.rdf so legacy packaging metadata matches the WebExtension release line. Duplicate-finder toolbar (window.html): reorder action buttons to Skip, Make different, Keep both, Remove one, Remove left, Remove both, Remove right, Merge left (Start unchanged at the front). This matches the flow many users follow when splitting pairs before keeping or deleting. Locales (all shipped languages): drop the trailing " >" from duplicate-action button labels so the bar is more compact; English already uses "Remove one" for the applynextbutton string key while the code id stays applynextbutton. duplicateEntriesWindowUI.js: mirror the same button order in showReadyState, showDuplicatePairState, disableDuplicateActionButtons, and showFinishedState so visibility and enable/disable calls stay consistent with the DOM and easier to maintain. vCardUtils.js: document at file level and at parse/emit sites that X-AIM is mapped to _AimScreenName for AIM screen names, including use by Make different and the duplicate search loop when AIM differs. ARCHITECTURE_AND_HISTORY.md: fix stale Contacts module exports (remove non-existent getCardProperty/setCardProperty); document nodupAimPrefix, X-AIM, AIM skip in search, Make different and fixed-column remove actions, merge-left persistence via Remove one or Keep both, two-save behavior and saveCard logging; replace the temporary "Current development" note with a proper Version 2.2.4 change-history section. Test data: no new edits in this commit; fixture updates for near-duplicate / AIM scenarios were already included in the earlier Make different commit on this branch. The built XPI (duplicateContactsManager-2.2.4.xpi) remains gitignored by *.xpi; rebuild with build-xpi.ps1 after version changes. Made-with: Cursor
Owner
|
Hello @stefmorp thank you for your update of April 19th and for your PR with a gentle reminder yesterday. I just tried out the changes with the new buttons. Most of them look pretty good.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
hello @DDvO the extension with additional functions/buttons is ready, I have used it for a while and so far have had no issue. Feel free to test it yourself, of course, and to approve/merge/publish it if you like it! Ciao!