tb-correctidentity
tb-correctidentity copied to clipboard
identity list in menus incomplete
I have been trying to figure out why the list of identities in the various menus is truncated. I can sometimes fix it briefly by uninstalling the add-on, quitting and then re-installing. I do some have identities created by Owl for Exchange server access, which perhaps is related. Whatever data I can provide that might help narrow down the problem, please let me know....
Hi Mark,
I am missing a clear problem description from you but I can start guessing: I think you are referring to the add-on settings page? Where are 2 drop down lists which should both contain all "identities"? And by "truncated" you mean that there are some identities completely missing in the list? Currently this list is filled from an internal structure "accountsAndIdentities". This structure is filled at startup of the add-on from the known accounts&identities of Thunderbird and also from the stored settings . (I think then it is checked for no longer existing identities and those are removed). To check this the internal debugger of Thunderbird can be used. A useful breakpoint could be set in options.js in function fillSelectorList. Or to check what happen on startup: background-script.js function initSettings I leave out here further details, so please ask if you like to go this way.
Are those missing identities "created by Owl for Exchange server access" not part of the Thunderbird configuration? Maybe they are missing in the Thunderbird configuration when it starts up and added later dynamically (by Owl for Exchange)? Are are they even of a different "nature" (Exist outside the list of Thunderbird-maintained identities)?
So yes, when I say truncated, I mean the identity list is incomplete (compared to, say, the From address selection menu during composition).
The account list and identities for Owl accounts are present, but they are different than a manually-generated account. My guess is this could in fact be a sequencing issue if CorrectIdentity caches the base account/identity list at startup and then Owl generates additional identities afterward, as you say. The times I see it working may reflect nondeterminism in the startup sequence.
I will see if I can get that debugger data.
Thanks, Mark
When preparing v2.1.x I looked into this issue. My assumption was, that this issue is related to the fact that the current add-on version is not good in handling newly appearing identities and accounts in the same session (Best is to restart Thunderbird before configuring those new accounts/identities in the add-on). The current configurations are currently indexed by "accountId" and "identityId" (which are "id"+number, e.g. "id15"). From the view of the add-on those IDs are regarded as "stable". On startup of the add-on, the stored configuration is synchronized with the available IDs. No longer existing entries are removed. Not-yet-configured IDs are added with default configuration. Problems we need to get around when supporting dynamically created accounts/identities:
- Allow configuration to persist for accounts/identities which are not present at add-on startup. (maybe modify synchronization mechanism and allow manual deletion of no longer present IDs in GUI)
- Listen to account/identity creation/delete/updates
- I assume that the IDs created by Thunderbird are not guaranteed to be the same on each account-adding. So we would need a different "stable" key (email addresses, hostnames) to find the correct configuration entry. (Here I had no good idea yet how to modify the code without changing the whole configuration concept...)
... so the issue was not fixed in v2.1.1. Need to investigate deeper.