Closed
Bug 480393
Opened 16 years ago
Closed 8 years ago
Localized versions of Thunderbird choose wrong trash folder on IMAP server. (Trash selection UI is inconsistent with localized folder display name & namespace)
Categories
(MailNews Core :: Networking: IMAP, defect)
MailNews Core
Networking: IMAP
Tracking
(Not tracked)
RESOLVED
FIXED
Thunderbird 59.0
People
(Reporter: u339468, Unassigned)
References
(Blocks 1 open bug)
Details
(Keywords: intl)
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6 (.NET CLR 3.5.30729)
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6 (.NET CLR 3.5.30729)
If I choose the option "Move message to folder on delete" and then choose the "INBOX/Trash" folder, then Thunderbird chooses the "INBOX/Posteingang/Trash" as the folder.
This is wrong, it chooses the wrong folder. It should choose "INBOX/Trash" instead.
Reproducible: Always
Steps to Reproduce:
Choose "Posteingang/Trash" as trash folder for IMAP server.
Actual Results:
Thunderbird creates "INBOX/Posteingang/Trash" server and shows it as "Posteingang/Posteingang/Papierkorb".
Expected Results:
Thunderbird chooses "INBOX/Trash" as trash folder and shows it as "Posteingang/Papierkorb".
Updated•16 years ago
|
Component: General → de / German
Product: Thunderbird → Mozilla Localizations
QA Contact: general → german.de
Comment 1•16 years ago
|
||
Zorkzero,
you explicitly mention the German version here in the bug report. Does this not happen with the English version of Thunderbird?
Also please tell us, which version of Thunderbird you are using and which extensions (if any) you are actively using in Thunderbird.
Component: de / German → Networking: IMAP
Product: Mozilla Localizations → MailNews Core
QA Contact: german.de → networking.imap
This may be a mixup between localized and non-localized versions of "Inbox", that folder name has always a special meaning.
My Thunderbird version:
Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.1b3pre) Gecko/20090223 Thunderbird/3.0b2
No extensions except german dictionary.
Comment 4•16 years ago
|
||
(In reply to comment #0)
> If I choose the option "Move message to folder on delete" and then choose the "INBOX/Trash" folder,
> then Thunderbird chooses the "INBOX/Posteingang/Trash" as the folder.
Your mail-addr is azorkzero@hotmail.com. Hotmail's IMAP server?
If IMAP server uses localized folder name, and if localized Tb is used, and same localized name is used by both IMAP server & Tb is used, user can easily be confused, and mismatch between Tb's setting and IMAP server's expectaion can easily occur. Since "Posteingang" is "localized name of INBOX", it won't affect standard/root-level "INBOX", as written in Bug 467860 Comment #25. But it can affect non-root-level folder name at IMAP server.
See Bug 467860 for our confusions in Gmail IMAP with Language=Deutsch and German version of Tb case.
And, if user sets "IMAP server directory:", phenomenon described in Bug 479555 can occur. It'll produces further user's confusion.
(1) Check your IMAP setting in prefs.js. Next is set?
> user_pref("mail.server.serverN.trash_folder_name", "Posteingang/Trash");
(2) Check your Server Settings/Advanced, "IMAP server directory:" setting.
INBOX is set?
(3) Check IMAP flow with en-US build first, in order to avoid confusion by
localized name used by Thunderbird.
- Download latest-trunk win32/ZIP/en-US build, and unzip it.
> http://ftp.mozilla.org/pub/mozilla.org/thunderbird/nightly/latest-trunk/
- Get IMAP log and check flow. See Bug 402793 Comment #1 for getting log.
> See http://www.faqs.org/rfcs/rfc3501.html for IMAP command/response.
What is returned for namespace/folder-name etc. by server?
(4) NAMESPACE in capability response is successfully processed by Tb?
Because Bug 470650 exists in Tb trunk, NAMESPACE provided by server won't
be used by Tb, if CAPABILITY response is included in gretting
but NAMESPACE is not included in greeting (NAMESPACE is included in
response to CAPABILITY command only).
Comment 5•16 years ago
|
||
Tb 3 Beta/Tb trunk displays internal path name of folder in folder property. Check internal path name of all INBOX, Posteingang, Trash, and Papierkorb related IMAP folders.
This bug has nothing to do with Hotmail. It happens with two IMAP servers.
Folder "Posteingang" is actually "imap://user@server/INBOX". I replaced actual user name and server name in this message.
Folder "Trash" is "imap://user@server/INBOX/Trash". If I now choose the option to move deleted mail to a folder and choose Trash as the target folder, then Thunderbird chooses "imap://user@server/INBOX/Posteingang/Trash" instead of "imap://user@server/INBOX/Trash".
Thunderbird shows "imap://user@server/INBOX/Posteingang/Trash" as "Posteingang/Posteingang/Papierkorb". But I already wrote that.
(1) user_pref("mail.server.server3.trash_folder_name", "Posteingang/Trash");
user_pref("mail.server.server4.trash_folder_name", "Posteingang/Papierkorb");
(2) No, "IMAP server directory:" is not set.
(3) Maybe later.
(4) Maybe later. Personal name space for one server is "INBOX/" and for another "INBOX."
Comment 7•16 years ago
|
||
(In reply to comment #6)
> Folder "Trash" is "imap://user@server/INBOX/Trash".
> If I now choose the option to move deleted mail to a folder and choose Trash as the target folder,
> then Thunderbird chooses "imap://user@server/INBOX/Posteingang/Trash" instead of "imap://user@server/INBOX/Trash".
> user_pref("mail.server.server4.trash_folder_name", "Posteingang/Papierkorb");
This is probably cause of problem. Over localization of Tb?
What happens when follwoing is set manually?
> (A) user_pref("mail.server.server4.trash_folder_name", "INBOX/Trash");
> (B) user_pref("mail.server.server4.trash_folder_name", "Trash");
It doesn't work correctly with (A), because it chooses "INBOX/INBOX/Trash" as the trash folder.
It works correctly with (B).
Comment 9•16 years ago
|
||
(In reply to comment #8)
> It doesn't work correctly with (A), because it chooses "INBOX/INBOX/Trash" as the trash folder.
> It works correctly with (B).
When server uses namespace, string in mail.server.serverN.trash_folder_name seems to be "folder path at server without namespace string".
It indicates that user has to choose root-level Trash(or root-level Papierkorb on German Tb), if server uses namespace="INBOX" and INBOX.Trash corresponds to root-level Trash of Thunderbird.
What is set in mail.server.serverN.trash_folder_name by Tb(en-US Tb version, German Tb version), if you choose root-level Trash(or root-level Papierkorb) at Trash folder selection panel?
What folders are displayed in Trash folder selection list when IMAP server uses namespace=INBOX" ? (en-US Tb version, German Tb version)
Reporter | ||
Comment 10•16 years ago
|
||
(In reply to comment #9)
> What is set in mail.server.serverN.trash_folder_name by Tb(en-US Tb version,
> German Tb version), if you choose root-level Trash(or root-level Papierkorb) at
> Trash folder selection panel?
If I choose root-level "Papierkorb":
user_pref("mail.server.server3.trash_folder_name", "Posteingang/Papierkorb");
> What folders are displayed in Trash folder selection list when IMAP server uses
> namespace=INBOX" ? (en-US Tb version, German Tb version)
On German Tb when
user_pref("mail.server.server3.trash_folder_name", "Trash");
"Posteingang -> Entwürfe
Gesendet
Junk
Papierkorb"
Comment 11•16 years ago
|
||
Namespace related issue is reproduced by latest-trunk.
Localized name related issue is reproduced by Tb3 Beta2(de & ja).
(Problem-1) Mismatch between Trash selection UI and namespace usage by Tb.
> Gmail IMAP(imap.gmail.com), English(US), namespace="", path delimiter="/"
> Folder of NS, NS/Trash, NS/NS, NS/NS/Trash exist.
> user_pref("mail.server.server2.namespace.personal", "\"NS/\"");
> user_pref("mail.server.server2.override_namespaces", false);
(1) Start Tb latest-trunk(en-US)
Choose "NS/Trash" as trash folder of "Move to trash" model.
=> mail.server.serverN.trash_folder_name = NS/Trash
(2) Restart Tb => Tb used NS/NS/Trash (trash can icon is set).
(If NS/NS/Trash doesn't exist, it'll be created by Tb.)
(Problem-2) Trash selection UI puts localized name in
mail.server.serverN.trash_folder_name
> Gmail IMAP(imap.gmail.com), English(US), namespace="", path delimiter="/"
(1) Initial : mail.server.serverN.trash_folder_name = Trash
(2) Start Tb3 Beta2 (de, ja)
Folder name = Trash, Display name = Papierkorb (de), ごみ箱 (ja)
has "trash can icon".
(3) Choose "Papierkorb" or "ごみ箱" at trash folder selction UI.
=> (de) mail.server.serverN.trash_folder_name = Papierkorb
(ja) mail.server.serverN.trash_folder_name = ごみ箱
(4) Restart Tb3 Beta2 (de, ja)
Folder which has "trash can icon" :
(de) Folder name = Papierkorb, Display name = Papierkorb
(ja) Folder name = ごみ箱 (%26MFQwf3ux-), Display name = ごみ箱
Folder name = Trash, Display name = Trash has usual folder icon.
(because "Trash" is not used as trash for Tb, "trash can icon" is not used,
(and localized name is not used at folder pane display.)
(5) Choose "Folder name = Trash, Display name = Trash" at trash selection UI
=> mail.server.serverN.trash_folder_name = Trash
Confirming.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Version: unspecified → Trunk
Updated•16 years ago
|
Summary: German version of Thunderbird chooses wrong trash folder on IMAP server. → German version of Thunderbird chooses wrong trash folder on IMAP server. (Trash selection UI is inconsistent with localized folder display name & namespace)
Comment 12•16 years ago
|
||
CC-ing to Magnus Melin(owner of Bug 427311) and David Bienvenu(reviewer of patch for Bug 427311).
Comment 13•16 years ago
|
||
To Magnus and David:
We'd better to open separate bugs for Problem-1 / Problem-2 of Comment #11?
Comment 14•16 years ago
|
||
WADA, probably needs investigation to see if they have the same cause or not.
Comment 15•16 years ago
|
||
Hm, this is strange.
Using en-US: If I set the trash folder to the Inbox, the trash folder pref will become "INBOX" - as expected.
Using sv-SE: it will become "Inkorgen"
folder.name is always supposed to be the unlocalized name, right?
OS: Windows XP → All
Hardware: x86 → All
Comment 16•16 years ago
|
||
Independent bug 491424 for "Problem-1 in Comment #11" has been opened for next case.
> (1) namespace is used
> Personal namespace: "INBOX." (passed from server)
> (2) user selected folder for "trash folder for Tb" via trash folder selecttion UI
> mail.server.server2.trash_folder_name: INBOX/Deleted Items
> ==> Tb requests "INBOX.INBOX.Deleted Items"
Magnus Melin, "Problem-1 in Comment #11" is better to be analyzed in simpler bug 491424, because that bug doesn't contain issue/funny phenomenon relates to "localized name".
Comment 20•15 years ago
|
||
Happens to me as well using german tb 3.0.3
I discovered this bug when I noticed another UI misbehaviour. I set tb up with a freshly created mailbox.
tb created a trash folder correctly shown as "Posteingang->Papierkorb" (inbox->trash) but in the account settings where I can select the trash folder it just said "Trash" (untranslated). When I clicked on the selector and chose the correct "Posteingang->Papierkorb" the bug happens as described above.
Comment 21•15 years ago
|
||
Oops I just discovered that the initial layout is created by my mailserver not tb.
Something's seriously wrong here with tb :(
Comment 22•15 years ago
|
||
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → DUPLICATE
Comment 23•15 years ago
|
||
I was too quick, sorry, REOPENing, this looks like a bug in the localization of Thunderbird, if it happens as reported.
Comment 6:
> Thunderbird chooses "imap://user@server/INBOX/Posteingang/Trash" instead of
> "imap://user@server/INBOX/Trash".
Status: RESOLVED → REOPENED
Resolution: DUPLICATE → ---
Updated•15 years ago
|
Flags: wanted-thunderbird3? → wanted-thunderbird+
Comment 25•15 years ago
|
||
I believe the basic problem is that the trash folder name is not implemented using a URI, like all the other special folders, but by storing the pretty name of the folder in a pref, and trying to discover the actual trash from that pref. One nice thing about URI's is that we know how to find the folder from the URI, and they don't change based on localization. That's also why the trash folder picker is often screwed up as well.
Unfortunately, that's all water under the bridge, I guess, and we need to figure out how to make it work. Changing it to a uri would be an upgrade pain...
Comment 26•15 years ago
|
||
Actually, half the code thinks the trash folder pref is a uri, and the other half does not. I'm not sure if that's better or worse, but it makes me think this code is so broken for users whose folder names don't match their uri's that I might as well just change all the code to work with uri's.
Comment 27•15 years ago
|
||
Could this please be fixed? IMHO it's a major bug because if the user changes the trash folder it'll corrupt(!) your mailbox layout.
Comment 28•15 years ago
|
||
(In reply to comment #25)
> Changing it to a uri would be an upgrade pain...
Removal of "Trash folder selection UI" is a simplest solution. If UI is removed, what string is set in mail.server.serverX.trash_folder_name is up to user like Tb 2, thus problem due to Tb's fault can't happen :-)
Comment 29•14 years ago
|
||
I had the same problem on a French version of Thunderbird.
1. I tried to set the Trash to “Courier entrant/Trash” (French for INBOX/Trash);
2. A folder called “Courier entrant/Courier entrant/Trash” was created by Thunderbird and ignored as a Trash;
3. I had to manually change the trash_folder in prefs.js to Trash instead of INBOX/Trash to have the expected behaviour.
Comment 32•13 years ago
|
||
This is not specific to German locale.
It's also still happening in Tb11 beta
Summary: German version of Thunderbird chooses wrong trash folder on IMAP server. (Trash selection UI is inconsistent with localized folder display name & namespace) → Localized versions of Thunderbird choose wrong trash folder on IMAP server. (Trash selection UI is inconsistent with localized folder display name & namespace)
Comment 33•13 years ago
|
||
I'm running TB 12.0.1 in English (Windows Vista Home Premium, the bastard OS) and started having this problem with the last update (30 April). Everything I delete goes into the [Google Mail]/Trash folder instead of the IMAP trash folder. Server Settings are correct. The work-around of unsubscribing to the [Google Mail]/Trash folder does not alter the trash destination folder.
Comment 34•13 years ago
|
||
(In reply to Mournes from comment #33)
> [Google Mail]/Trash
Even if this bug occurs, problem due to this bug is currently avoided by "always use Trash folder returned to XLIST" in Gmail IMAP case.
See Bug 533140 for Gmail IMAP case, and see bugs listed in dependency tree for meta Bug 402793 if you use Gmail IMAP.
![]() |
||
Comment 35•13 years ago
|
||
WADA, bugzilla seems to be arbitrarily removing bug dependencies recently, thus I'm reinstating those under the assumption that it has hit here as well.
Comment 36•13 years ago
|
||
Just FYI: got it sorted. Followed instructions at <a>http://kb.mozillazine.org/IMAP_Trash_folder</a>: added line to Prefs; set personal namespace to "mail" (don't know if this helped or not, because it reverted to "" afterwards); closed TB then deleted TRASH., TRASH.msf, and panacea.dat files; restarted TB and then unsubscribed to [Google Mail]/Trash, After all that, the "Trash" icon changed from a folder to a bin (previously, the [Google Mail]/Trash folder always ended up with the bin icon, either from the start or switching shortly after) and my deleted messages went to the proper Trash. Woo hoo!
Comment 37•13 years ago
|
||
For all the French users, there is now a support article dedicated to this problem, which explain how to set up most famous French ISP. Please visit: https://support.mozillamessaging.com/fr/kb/configurer-les-dossiers-speciaux-dun-compte-imap
Hope it can help.
Also, the situation may be improved with bug 222223 being fixed in TB14.
Comment 38•13 years ago
|
||
(In reply to Jean-Baptiste Hétier from comment #29)
> 3. I had to manually change the trash_folder in prefs.js to Trash instead of
> INBOX/Trash to have the expected behaviour.
Can confirm your description and fix. Running TB 14.0.1.
Comment 40•13 years ago
|
||
"Reason why localized name is set" is perhaps;
msgFolder.prettiestName(or msgFolder.prettyName or msgFolder.name) is used,
instead of string in msgFolder.URI.
Because localized name is placed in msgFolder.prettiestName, string set in mail.server.serverN.trash_folder_name(msgFolder.icomingServer.trashFolderName) should be set from msgFolder.URI in case of localized folder name.
JavaScript sample.
> var ServerPath = msgFolder.incomingServer.serverURI + "/" ; // for split
> var MboxName = msgFolder.URI.split(ServerPath)[1] ; // ABC/DEF format
> if( msgFolder.incomingServer.trashFolderName || ""==msgFolder.incomingServer.trashFolderName )
> { msgFolder.incomingServer.trashFolderName=MboxName; }
> => mail.server.serverN.trash_folder_name is automatically changed.
> => trash name at Server Settings is automatically changed.
> const nsMsgFolderFlags = Components.interfaces.nsMsgFolderFlags;
> msgFolder.setFlag(nsMsgFolderFlags["Trash"]) ;
Note:
msgFolder.incomingServer.trashFolderName is somehow undefined frequently. If change of msgFolder.incomingServer.trashFolderName is atemped when msgFolder.incomingServer.trashFolderName is undefined, exception occurs. See bug 831664, please.
Small problem by above script when non-ascii Mbox name is used.
Folder at folder pane == TrashX/&&&日本語&&&
msgFolde.prettiestName == &&&日本語&&&
MboxName in above script == TrashX/&-&-&-&ZeVnLIqe-&-&-&-
When string from msgFolder.URI is used for setting msgFolder.incomingServer.trashFolderName, &&&日本語&&& is normally shown at Server Settings, but TrashX/&-&-&-&ZeVnLIqe-&-&-&- is set in mail.server.serverN.trash_folder_name in prefs.js instead of current/readable TrashX/&&&日本語&&&.
This may produce unwanted bug open by general user such as "Garbage was generated by Tb in my prefs.js!!!" ;-)
Comment 41•13 years ago
|
||
I attached test extension to bug 533140.
> https://bugzilla.mozilla.org/attachment.cgi?id=704299
This extension does following.
(A) change incomingServer.trashFolderName to currently selected folder.
=> mail.server.serverN.trash_folder_name is automatically changed by Tb.
(A-1) Use actual mbox name in msgFolder.URI when request change of incomingServer.trashFolderName, instead of msgFolder.prettiestName where localized special folder name is stored by localized Tb.
(A-2) Remove namespace from string set in mail.server.serverN.trash_folder_name (and incomingServer.trashFolderName), because logic which processs mail.server.serverN.trash_folder_name seems to request "Mbox name without namespace" in mail.server.serverN.trash_folder_name.
(perhaps uses getUriWithNamespacePrefixIfNecessary() on string set in mail.server.serverN.trash_folder_name)
(B) Request msgFolder.setflag(Trash) for currently selected folder.
Request msgFolder.clearflag(Trash) for all other folder of the account.
Is the test extension effective in your environment?
Note:
Because of bug 831664, incomingServer.trahFolderName may be undefined, and if change of incomingServer.trahFolderName is requested when undefined, Exception occurs. To bypass bug 831664, do next, please.
(0) Install test extension(named WinBackMyTrash), Show Menu Bar, customize ToolBar, add two buttons to Menu Bar(right side of Help), open Error Console.
(1) Select Inbox at folder pane, click button-1, and check Error Console.
(2) If trahFolderName is undefined, click button-2 with Inbox selected.
=> long text is written to Error Console(known workaround of that bug).
(3) Click butto-1 again with Inbox selected.
(4) Go bottom of Error Console.
If trahFolderName is normaly shown,
select a folderyou want to use as trash(call ABC/DEF), and click button-1.
If trahFolderName is still undefined, Goto step (2).
Comment 42•13 years ago
|
||
Depends on: 836631
Comment 43•12 years ago
|
||
I'm adding to this disscussion, in the Spanish version, the Trash folder also gets automatically translated and the non-translated folder (the default one) can not be selected.
If you change the default "Trash" option for the "Trash" folder inside of the e-mail (shown in your language, in my case it says "Bandeja de entrada > Papelera"), it creates a new folder within the Inbox with the name ".Bandeja de Entrada.Papelera" which is ".INBOX.Trash" in spanish.
It shouldn't translate the actual folder, it should only show it translated and use the one in English.
Comment 44•12 years ago
|
||
There is no need of additional "me too" nor additional example in different localization.
FYI.
Needless to say, IMAP delete model of "Just mark it as deleted"(with View/Undeleted if required), is an effective work around, because Tb doesn't move mails to trash upon "mail delete" according to design of protocol named IMAP when "Just mark it as deleted" and "Remov immediately".
Comment 45•12 years ago
|
||
> IMAP delete model of "Just mark it as deleted"(with View/Undeleted if required), is an effective work around
No. If you use other clients to access your IMAP server, then you want all of them deleting messages the same way. Other clients might otherwise automatically delete messages that are marked as deleted from your imap server. Not a good option, at least not for me.
I manually corrected the pref and this solved my issue. So here are the instructions for the ordinary user:
Right-click your trash-folder, choose "properties" and lookup the address of the folder. It will be something like "imap://.../INBOX/Trash". Just remember the last part after INBOX.
Now click Extras/Settings/Advanced/Edit Configuration/Yes. Search for "mail.server.server1.trash_folder_name". Replace 1 by the number of your IMAP account. Double-click it to edit it. Set the value to "Trash" or whatever you remember your trash-folder is called. Restart Thunderbird and delete all the bogus folders. And don't use the UI to select the trash-folder again until this is fixed ;-)
See Also: → https://launchpad.net/bugs/1251182
Comment 48•10 years ago
|
||
Removing myslef on all the bugs I'm cced on. Please NI me if you need something on MailNews Core bugs from me.
Comment 49•8 years ago
|
||
I believe that this bug also affect orange's imap server (french leader ISP):
Trash folder on the server is called "TRASH"
Thunderbird doesn't recognize it and create a new "Trash" folder
For a normal user (my father), the problem is impossible to understand and solve, and there are a lots of users complaining on forums about difficulties to make Thunderbird and orange working together.
Comment 50•8 years ago
|
||
Fixed by bug 1430168.
Status: REOPENED → RESOLVED
Closed: 15 years ago → 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → Thunderbird 59.0
You need to log in
before you can comment on or make changes to this bug.
Description
•