[Task Description] Spell Checker present, which can neither be set up correctly, nor switched off. Missing context menu to set language and select suggestion.
Categories
(Calendar :: Dialogs, defect)
Tracking
(Not tracked)
People
(Reporter: mozilla, Unassigned)
References
(Regression)
Details
(Keywords: regression)
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0
Steps to reproduce:
Just opened a task, and edited its description
Actual results:
A spellchecker is active, on a language which is not the language of the description. Which means that half the words are underlined red, not because they are misspelled, but rather because it assumed they are written in a different language
Expected results:
-
There should be a possibility to tell the spellchecker which language is being entered. For instance, in Firefox, the same is solved nicely by providing a right-mouse-button menu which has a "Languages" submenu, where you can pick a language from
-
There should be a possibility to switch off the spellchecker altogether (might be needed if the task description contains items which are not in natural language, such as SQL or shell command lines). Again, in Firefox, this is solved nicely with the "Check Spelling" checkbox in the right-mouse-button menu available in textareas.
| Reporter | ||
Updated•4 years ago
|
| Reporter | ||
Updated•4 years ago
|
Comment 1•4 years ago
|
||
A spellchecker is active, on a language which is not the language of the description.
Compare bug 69687
| Reporter | ||
Comment 2•4 years ago
|
||
(In reply to Ben Bucksch (:BenB) from comment #1)
A spellchecker is active, on a language which is not the language of the description.
Compare bug 69687
I'm not sure what I'm supposed to get out of this. Bug 69687 is 22 years old and thus predates the task description train wreck which only happened around December 2021. Only common thing is that it is about spell language choice, but in different areas of the software. In the original spots (mail messages, web pages) it has been solved long ago, as mentioned in my summary.
Still an issue in 91.13.0 btw.
| Reporter | ||
Comment 3•2 years ago
|
||
Still an issue in 115.7.0
| Reporter | ||
Comment 4•2 years ago
|
||
Just noticed: you can switch off the spell-checker altogether using the mail.spellchecker.inline config editor setting.
Downside: this also switches it off for composing mail messages, where you'd actually want it (because configurable).
However, if you go into chrome/calendar/content/calendar-item-iframe.js in /usr/share/thunderbird/omni.ja, you can change the name of that variable to calendar.spellcheck.inline, and presto, independent control of mail and calendar spellchecker.
| Reporter | ||
Comment 5•1 year ago
|
||
Bug still present in 140.3.0esr
(In reply to Alain Knaff from comment #4)
However, if you go into chrome/calendar/content/calendar-item-iframe.js in /usr/share/thunderbird/omni.ja, you can change the name of that variable to calendar.spellcheck.inline, and presto, independent control of mail and calendar spellchecker.
Thanks for the tip. For improved configurability, calendar.spellcheck.inline should be implemented upstream.
Notice that the concerned file might be in other places like /usr/lib64/thunderbird/omni.ja (Gentoo), it is a ZIP archive.
Comment 7•5 months ago
|
||
Not sure if this bug is present in TB as I use Betterbird 140.11.0esr-bb23 64bit in Windows 10 22H2. But I tried the workaround:
- unpacked C:\Program Files\Betterbird\omni.ja into work folder @unpk
- edited @unpk_chrome\calendar\content\calendar-item-iframe.js_ line 641:
try { const checker = editor.getInlineSpellChecker(true);
// 14.06.26/AH spellchecker ignores Thunderbird language preferences
// Workaround from https://bugzilla.mozilla.org/show_bug.cgi?id=1754162
// However, if you go into chrome/calendar/content/calendar-item-iframe.js in /usr/share/thunderbird/omni.ja,
// you can change the name of that variable to calendar.spellcheck.inline, and presto,
// independent control of mail and calendar spellchecker.
// checker.enableRealTimeSpell = Services.prefs.getBoolPref("mail.spellcheck.inline", true);
checker.enableRealTimeSpell = Services.prefs.getBoolPref("calendar.spellcheck.inline", true);
} catch (ex) {
// No dictionaries.
}
- zipped (7zip) to omni.ja and copied this back to _C:\Program Files\Betterbird_
- defined calendar.spellcheck.inline in Settings -> General -> Config Editor
This works for new calendar entries but not for editing existing ones.
Maybe related to my settings:
- General - Language:
english (US)
German as second entry - Composition - Spelling
Check spelling before sending -> activated
Enable spellcheck as you type
Language:
English (United States) = not selected/inactive
German (Germany) = selected/active
These settings work writing a mail but not for calendar entries
What I would expect:
- Calendar/Lightning should behave in the same way as Betterbird (and I assume TB too):
use the language setting from Composition - Spelling - Language - Calendar entries should have the same "ABC spelling" button to select the language as new mails.
Comment 8•5 months ago
|
||
(In reply to bugzillanov from comment #7)
Not sure if this bug is sill present in TB as I use Betterbird 140.11.0esr-bb23 64bit in Windows 10 22H2. But I tried the workaround:
- unpacked C:\Program Files\Betterbird\omni.ja into work folder @unpk
- edited @unpk_chrome\calendar\content\calendar-item-iframe.js_ line 641:
try { const checker = editor.getInlineSpellChecker(true); // 14.06.26/AH spellchecker ignores Thunderbird language preferences // Workaround from https://bugzilla.mozilla.org/show_bug.cgi?id=1754162 // However, if you go into chrome/calendar/content/calendar-item-iframe.js in /usr/share/thunderbird/omni.ja, // you can change the name of that variable to calendar.spellcheck.inline, and presto, // independent control of mail and calendar spellchecker. // checker.enableRealTimeSpell = Services.prefs.getBoolPref("mail.spellcheck.inline", true); checker.enableRealTimeSpell = Services.prefs.getBoolPref("calendar.spellcheck.inline", true); } catch (ex) { // No dictionaries. }
- zipped (7zip) to omni.ja and copied this back to _C:\Program Files\Betterbird_
- defined calendar.spellcheck.inline in Settings -> General -> Config Editor
This works for new calendar entries but not for editing existing ones.Maybe related to my settings:
- General - Language:
english (US)
German as second entry- Composition - Spelling
Check spelling before sending -> activated
Enable spellcheck as you type
Language:
English (United States) = not selected/inactive
German (Germany) = selected/active
These settings work writing a mail but not for calendar entriesWhat I would expect:
- Calendar/Lightning should behave in the same way as Betterbird (and I assume TB too):
use the language setting from Composition - Spelling - Language- Calendar entries should have the same "ABC spelling" button to select the language as new mails.
Comment 9•5 months ago
|
||
Had to correct:
calendar.spellcheck.inline in calendar-item-iframe.js in omni.ja seems not to work anymore.
Calendar spell checking works for new events.
Calendar spell check doesn't work for editing existing events.
Maybe someone can proof if this is Betterberd specific or in TB 140.11.0 ESR too?
Comment 11•5 months ago
|
||
Looks like the implementation in bug 1726400 wasn't complete.
The code that sets the checking based on pref mail.spellcheck.inline is still present:
https://searchfox.org/comm-central/rev/72b8ba0761b3881d926be53f77fbf75d5a9316d5/calendar/base/content/item-editing/calendar-item-iframe.js#640
Updated•5 months ago
|
Comment 13•1 month ago
|
||
I'd like to work on this bug. Could someone assign it to me?
Still present in Thunderbird 156.0.1. A user who writes calendar events in Greek, Italian, and English reported it to me. Spell check underlines words in the event description, but there's no way to pick a correction or change the language. Compose works fine for the same user.
Cause: calendar-item-iframe.js turns on the inline spell checker for item-description. But the editor's context menu, editorContext in calendar-item-iframe.xhtml, has only Undo, Cut, Copy, Paste, Delete, and Select All. It has no spelling suggestions, no Add to Dictionary, no Ignore Word, and no Languages submenu.
Proposed fix: add those items to editorContext, and fill them with the shared InlineSpellChecker helper when the menu opens, following the pattern the compose window uses. I'll also check the report in comment 9 that spell check doesn't run when editing an existing event.
Comment 14•1 month ago
|
||
(In reply to Kayhan from comment #13)
I'd like to work on this bug. Could someone assign it to me?
As Betterbird (derived by patching Thunderbird) contains a fix for this issue, it may be better to align you solution with the existing Betterbird fix (or simply backport their fix to Thunderbird?).
Link to fix for 140ESR version: https://github.com/Betterbird/thunderbird-patches/blob/main/140/bugs/1754162-calendar-desc-spellcheck.patch
Link to fix for 153ESR version: https://github.com/Betterbird/thunderbird-patches/blob/main/153/bugs/1754162-calendar-desc-spellcheck.patch
Description
•