Open Bug 1754162 Opened 4 years ago Updated 6 days ago

[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)

Thunderbird 91
x86_64
Linux
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.

OS: Unspecified → Linux
Hardware: Unspecified → x86_64
Summary: [Task Descriptor] Spell Checker present, which can neither be set up correctly, nor switched off → [Task Description] Spell Checker present, which can neither be set up correctly, nor switched off

A spellchecker is active, on a language which is not the language of the description.

Compare bug 69687

(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.

Depends on: 402111

Still an issue in 115.7.0

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.

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.

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.

(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 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.

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?

No longer depends on: 402111
Duplicate of this bug: 1739164

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

Status: UNCONFIRMED → NEW
Ever confirmed: true
Keywords: regression
Regressed by: 1726400
Summary: [Task Description] Spell Checker present, which can neither be set up correctly, nor switched off → [Task Description] Spell Checker present, which can neither be set up correctly, nor switched off. Missing context menu to set language and select suggestion.
Duplicate of this bug: 1982863
You need to log in before you can comment on or make changes to this bug.