Closed Bug 318030 Opened 19 years ago Closed 17 years ago

Thunderbird should not depend on existence of myspell dictionaries

Categories

(Thunderbird :: Message Compose Window, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: ismail, Assigned: mscott)

Details

Attachments

(1 file, 1 obsolete file)

User-Agent:       Mozilla/5.0 (compatible; Konqueror/3.5; Linux) KHTML/3.5.0 (like Gecko)
Build Identifier: Thunderbird 1.5rc1

If you build a localised version of Thunderbird say with --enable-ui-locale=tr , Thunderbird on purpose doesn't package extensions/spellcheck/locale/myspell/en-US/en-US* files. All cool and expected so far. But when you run Thunderbird you can't open composer window because its looking for myspell dic files and gives error "Can't create message window" and throws the exception:

EX: = [Exception... "Component returned failure code: 0x80520006 (NS_ERROR_FILE_TARGET_DOES_NOT_EXIST) [mozISpellCheckingEngine.getDictionaryList]"  nsresult: "0x80520006 (NS_ERROR_FILE_TARGET_DOES_NOT_EXIST)"  location: "JS frame :: chrome://messenger/content/messengercompose/MsgComposeCommands.js :: initLanguageMenu :: line 2128"  data: no]

The solution would be making Thunderbird to be able to work without myspell or package en-US dictionary files for non-us locales too so those can work too.

Also if you have no spell dictionaries config dialog for spellchecking language looks very bad as it has no entries.

Reproducible: Always

Steps to Reproduce:
1. Enable localised build with ( not en-US )
2. Create an account to send mail
3. Try to compose a message

Actual Results:  
Composer is not opened and error given.

Expected Results:  
Composer window opens.
Fix Severity & version.
Severity: major → normal
Version: unspecified → 1.5
confirmed on TB 1.5 final (windows)

I made a new build today after some weeks ago (I've also deleted my thunderbird directory with install myspell dictionaries) and suffered on the same problem until I found out why.

p.s.
OS should be ALL and IMHO severity should be major
uses try-catch and returns false, if no dictionaries are available
removes spell checker ui (like if no spell checker available)
Attachment #208985 - Flags: review?(mscott)
Comment on attachment 208985 [details] [diff] [review]
patch; diff'ed against MOZILLA_1_8_BRANCH

you'll need to get an editor person (like glazman) to sign off on the editor.js change. 

I'd rather see

if (!IsSpellCheckerInstalled || !isSpellCheckerDicAvailable(())
Attachment #208985 - Flags: review?(mscott) → review+
forgot to return false if IsSpellCheckerInstalled() returns false
carrying over r=+

(In reply to comment #4)
> (From update of attachment 208985 [details] [diff] [review] [edit])
> you'll need to get an editor person (like glazman) to sign off on the editor.js
> change. 
> 
How? By requesting s-review or should it be a seperate patch for editor.js?
> I'd rather see
> 
> if (!IsSpellCheckerInstalled || !isSpellCheckerDicAvailable(())
> 
Does not make much sense to me, because isSpellCheckerDicAvailable() requires IsSpellCheckerInstalled() to return true.
Attachment #208985 - Attachment is obsolete: true
Attachment #211156 - Flags: superreview?(daniel)
Attachment #211156 - Flags: review+
There is a new function nsIEditorSpellCheck.canSpellCheck which checks if you have any dictionaries. I'm not sure if this is what you need.
Comment on attachment 211156 [details] [diff] [review]
updated patch; returns false if IsSpellCheckerInstalled returns false

/me is no sr
Attachment #211156 - Flags: superreview?(daniel) → superreview-
QA Contact: message-compose
Glazman in comment #7
> (From update of attachment 211156 [details] [diff] [review])
> /me is no sr

minused because ...?
what solution(s) might get sr approval?  
a message that says "need to install dictionary"?
OS: Linux → All
Hardware: PC → All
Ronny, all - do you see this in TB v2?  
fixed by bug 355064, per bug 366255 comment 22?
(In reply to comment #9)
> Ronny, all - do you see this in TB v2?  
> fixed by bug 355064, per bug 366255 comment 22?
> 

No. I deleted all dictionaries and I was still able to compose a message. The only thing that's left is that the spellcheck button is not disabled in such a case.

But it still happens in TB 1.5, when the myspell folder is completely missing.
1.5 hit end-of-life on October 18th, so if it only happens there... it doesn't happen :)
Status: UNCONFIRMED → RESOLVED
Closed: 17 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: