Closed Bug 527173 Opened 10 years ago Closed 8 years ago

Spellchecker settings are in the Mail section but the SP is used by all components

Categories

(SeaMonkey :: Preferences, enhancement)

enhancement
Not set

Tracking

(Not tracked)

RESOLVED FIXED
seamonkey2.9

People

(Reporter: Matti, Assigned: ewong)

References

Details

Attachments

(1 file, 4 obsolete files)

1) use en-us build
2) download german dictionary
3) notice that the spellchecker is still using the english spelling while typing in a form on a website or while using CZ
4) try to find the setting for the Spellchecker in the preferences under Appereance, Browser, Advanced -. you can not find it
You will find it under the Mail section in the preferences
Browser - Languages - Spelling has a drop down to select in which input boxes the browser should check. 

I see two solutions:
a) A hint in the Browser - Languages - Spelling dialog pointing to the Mail & Newsgroups - Composition section or
b) Move all language related settings (User Interface, preferred Web Content, Spelling) to a new preference dialog under Appereance.
Severity: normal → enhancement
OS: Windows Vista → All
Hardware: x86 → All
Version: SeaMonkey 2.0 Branch → Trunk
For SM, yes it would make sense to put the various global spell check related items together.
There is:
* the dictionary from mailnews->composition
* the "when to" from browser->languages
* possibly other releated prefs that could be moved/exposed.
* perhaps a button/link for downloading more dictionaries?
(In reply to Ian Neal from comment #2)
> * perhaps a button/link for downloading more dictionaries?
There already is one on the language drop-down.
A button to edit the personal dictionary would be useful; as far as I recall, the only other access to it is via the spellchecking dialog.
Assignee: nobody → ewong
Status: NEW → ASSIGNED
Initial draft of the Spell Check pref panel.
Attachment #583730 - Flags: review?(iann_bugzilla)
> +  // Load the language string bundle.
> +  var languageBundle = document.getElementById("languageBundle");
> +  var regionBundle = null;
> +  // If we have a language string bundle, load the region string bundle.
> +  if (languageBundle)
> +    regionBundle = document.getElementById("regionBundle");

languageBundle and regionBundle are still in pref-composing_messages.xul you forgot to move them to pref-spelling.xul
Attachment #583730 - Attachment is obsolete: true
Attachment #583981 - Flags: review?(iann_bugzilla)
Attachment #583730 - Flags: review?(iann_bugzilla)
Blocks: 714588
Comment on attachment 583981 [details] [diff] [review]
Moved the spell checking features to Appearance->Spell Check. (v2)

Perhaps the pane should be called Spelling rather than Spell Check?

>+++ b/suite/common/pref/pref-spelling.xul
>+      <hbox align="center" pack="start">
>+        <label value="&languagePopup.label;"
>+               accesskey="&languagePopup.accessKey;"
>+               control="languageMenuList"/>
>+        <menulist id="languageMenuList"
>+                  preference="spellchecker.dictionary">
>+          <menupopup onpopupshowing="InitLanguageMenu();">
>+            <!-- dynamic content populated by JS -->
>+            <menuseparator/>
>+            <menuitem value="more-cmd" label="&moreDictionaries.label;"/>
>+          </menupopup>
>+        </menulist>
>+        <spring flex="1"/>
>+      </hbox>
This should come at the start as it is across the whole of the suite, whereas the layout one is for browser only and then there is the mail and news part. Perhaps orgabise into three group boxes, general, browser and mail & news?

You also need to look at what you need to hide/disable when there is no spellchecker available.

r- for the moment
Attachment #583981 - Flags: review?(iann_bugzilla) → review-
Attachment #583981 - Attachment is obsolete: true
Attachment #586759 - Flags: review?(iann_bugzilla)
Moved spellCheckDefault to the General groupbox.
Attachment #586759 - Attachment is obsolete: true
Attachment #586790 - Flags: review?(iann_bugzilla)
Attachment #586759 - Flags: review?(iann_bugzilla)
> +  var i;
> +
> +  for (i = 0; i < count; i++) {

We can now simplifiy this to:
for (let i = 0; i < count;i++) {

> +  var defaultItem = null;
> +
> +  for (i = 0; i < count; i++) {
Again here: for (let i = 0; ...) {

> +    var item = languageMenuList.insertItemAt(i, dictList[i][0], dictList[i][1]);
let item
Comment on attachment 586790 [details] [diff] [review]
Moved the spell checking features to Appearance->Spelling. (v6)

>+++ b/suite/common/pref/pref-spelling.js
>@@ -0,0 +1,155 @@
>+/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
>+/* ***** BEGIN LICENSE BLOCK *****
>+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
>+ *
>+ * The contents of this file are subject to the Mozilla Public License Version
>+ * 1.1 (the "License"); you may not use this file except in compliance with
>+ * the License. You may obtain a copy of the License at
>+ * http://www.mozilla.org/MPL/
>+ *
>+ * Software distributed under the License is distributed on an "AS IS" basis,
>+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
>+ * for the specific language governing rights and limitations under the
>+ * License.
snip

There is a new boilerplate at http://www.mozilla.org/MPL/headers/ please use that.

>+  var i;
>+
>+  for (i = 0; i < count; i++) {
As Philip said can remove var i and switch to use let within for.

>+  for (i = 0; i < count; i++) {
let within the for again.

>+    var item = languageMenuList.insertItemAt(i, dictList[i][0], dictList[i][1]);
let item

>+<!-- ***** BEGIN LICENSE BLOCK *****
>+   - Version: MPL 1.1/GPL 2.0/LGPL 2.1
>+   -
>+   - The contents of this file are subject to the Mozilla Public License Version
>+   - 1.1 (the "License"); you may not use this file except in compliance with
>+   - the License. You may obtain a copy of the License at
>+   - http://www.mozilla.org/MPL/
>+   -
>+   - Software distributed under the License is distributed on an "AS IS" basis,
>+   - WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
>+   - for the specific language governing rights and limitations under the
>+   - License.
snip

There is a new boilerplate at http://www.mozilla.org/MPL/headers/ please use that.

>+    <groupbox id="generalSpelling" align="start">
>+      <caption label="&generalSpelling.label;"/>
>+      <hbox class="indent" align="center" pack="start">
Do not need to indent.

>+      <separator class="thin"/>
>+      <hbox align="center" class="indent">
Do not need to indent.

>+    <groupbox id="mailSpelling" align="start">
>+      <caption label="&spellingHeader.label;"/>
>+      <vbox align="start" class="indent">
Do not need to indent.

>+++ b/suite/locales/en-US/chrome/common/pref/pref-spelling.dtd

>+<!-- ***** BEGIN LICENSE BLOCK *****
>+ Version: MPL 1.1/GPL 2.0/LGPL 2.1
>+
>+ The contents of this file are subject to the Mozilla Public License Version
>+ 1.1 (the "License"); you may not use this file except in compliance with
>+ the License. You may obtain a copy of the License at
>+ http://www.mozilla.org/MPL/
>+
>+ Software distributed under the License is distributed on an "AS IS" basis,
>+ WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
>+ for the specific language governing rights and limitations under the
>+ License.
snip

There is a new boilerplate at http://www.mozilla.org/MPL/headers/ please use that.

>+<!ENTITY prefSpelling.title                   "Spelling">
>+<!ENTITY generalSpelling.label                "General">
>+<!ENTITY checkSpellingWhenTyping.label        "When typing, check my spelling:">
>+<!ENTITY checkSpellingWhenTyping.accesskey    "W">
>+<!ENTITY dontCheckSpelling.label              "Never">
>+<!ENTITY multilineCheckSpelling.label         "In multiline boxes">
>+<!ENTITY alwaysCheckSpelling.label            "All boxes">
>+<!ENTITY spellingHeader.label                 "Spell Check for Mail &amp; Newsgroups">
This entity could have a better id, also do not need to repeat "Spell Check" so just have as "Mail &amp; Newsgroups"

>+<!ENTITY spellCheck.label                     "Check spelling before sending">
>+<!ENTITY spellCheck.accesskey                 "C">
These entities could have a better ids.

>+<!ENTITY spellCheckInline.label               "Check spelling as you type">
>+<!ENTITY spellCheckInline.accesskey           "e">
>+<!ENTITY languagePopup.label                  "Language:">
>+<!ENTITY languagePopup.accessKey              "g">
>+<!ENTITY moreDictionaries.label               "Download more dictionaries&#x2026;">
>+<!ENTITY noSpellCheckAvailable.label          "No dictionaries available.">

r- for the moment
Attachment #586790 - Flags: review?(iann_bugzilla) → review-
Comment on attachment 588856 [details] [diff] [review]
Moved the spell checking features to Appearance->Spelling. (v7) [Checkin: Comment 15]

>+++ b/suite/locales/en-US/chrome/common/pref/pref-spelling.dtd

>+<!ENTITY languagePopup.label                  "Language:">
>+<!ENTITY languagePopup.accessKey              "g">
Use "L" here as it is a better letter and now available.
Attachment #588856 - Flags: review?(iann_bugzilla) → review+
Comment on attachment 588856 [details] [diff] [review]
Moved the spell checking features to Appearance->Spelling. (v7) [Checkin: Comment 15]

http://hg.mozilla.org/comm-central/rev/d7619adc645f

Checked in for you (with Ian's nit addressed) since I wanted to get the corresponding Help bug off my back. ;-)
Attachment #588856 - Attachment description: Moved the spell checking features to Appearance->Spelling. (v7) → Moved the spell checking features to Appearance->Spelling. (v7) [Checkin: Comment 15]
Status: ASSIGNED → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → seamonkey2.9
Depends on: 727929
You need to log in before you can comment on or make changes to this bug.