Last Comment Bug 527173 - Spellchecker settings are in the Mail section but the SP is used by all components
: Spellchecker settings are in the Mail section but the SP is used by all compo...
Status: RESOLVED FIXED
:
Product: SeaMonkey
Classification: Client Software
Component: Preferences (show other bugs)
: Trunk
: All All
: -- enhancement (vote)
: seamonkey2.9
Assigned To: Edmund Wong (:ewong)
:
Mentors:
Depends on: 727929
Blocks: 714588
  Show dependency treegraph
 
Reported: 2009-11-06 18:25 PST by Matthias Versen [:Matti]
Modified: 2012-02-16 11:23 PST (History)
4 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---


Attachments
Moved the spell checking features to Appearance->Spell Check. (v1) (25.25 KB, patch)
2011-12-21 23:30 PST, Edmund Wong (:ewong)
no flags Details | Diff | Splinter Review
Moved the spell checking features to Appearance->Spell Check. (v2) (25.47 KB, patch)
2011-12-22 18:06 PST, Edmund Wong (:ewong)
iann_bugzilla: review-
Details | Diff | Splinter Review
Moved the spell checking features to Appearance->Spelling. (v3) (32.00 KB, patch)
2012-01-07 22:48 PST, Edmund Wong (:ewong)
no flags Details | Diff | Splinter Review
Moved the spell checking features to Appearance->Spelling. (v6) (32.00 KB, patch)
2012-01-08 04:24 PST, Edmund Wong (:ewong)
iann_bugzilla: review-
Details | Diff | Splinter Review
Moved the spell checking features to Appearance->Spelling. (v7) [Checkin: Comment 15] (27.34 KB, patch)
2012-01-16 06:03 PST, Edmund Wong (:ewong)
iann_bugzilla: review+
Details | Diff | Splinter Review

Description Matthias Versen [:Matti] 2009-11-06 18:25:32 PST
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
Comment 1 :Hb 2009-11-07 10:00:49 PST
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.
Comment 2 Ian Neal 2011-06-07 06:01:43 PDT
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?
Comment 3 neil@parkwaycc.co.uk 2011-12-20 03:50:01 PST
(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.
Comment 4 neil@parkwaycc.co.uk 2011-12-20 11:37:54 PST
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.
Comment 5 Edmund Wong (:ewong) 2011-12-21 23:30:25 PST
Created attachment 583730 [details] [diff] [review]
Moved the spell checking features to Appearance->Spell Check. (v1)

Initial draft of the Spell Check pref panel.
Comment 6 Philip Chee 2011-12-22 11:12:32 PST
> +  // 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
Comment 7 Edmund Wong (:ewong) 2011-12-22 18:06:13 PST
Created attachment 583981 [details] [diff] [review]
Moved the spell checking features to Appearance->Spell Check. (v2)
Comment 8 Ian Neal 2012-01-02 15:13:42 PST
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
Comment 9 Edmund Wong (:ewong) 2012-01-07 22:48:58 PST
Created attachment 586759 [details] [diff] [review]
Moved the spell checking features to Appearance->Spelling. (v3)
Comment 10 Edmund Wong (:ewong) 2012-01-08 04:24:06 PST
Created attachment 586790 [details] [diff] [review]
Moved the spell checking features to Appearance->Spelling. (v6)

Moved spellCheckDefault to the General groupbox.
Comment 11 Philip Chee 2012-01-08 10:27:03 PST
> +  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 12 Ian Neal 2012-01-08 14:07:40 PST
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
Comment 13 Edmund Wong (:ewong) 2012-01-16 06:03:36 PST
Created attachment 588856 [details] [diff] [review]
Moved the spell checking features to Appearance->Spelling. (v7) [Checkin: Comment 15]
Comment 14 Ian Neal 2012-01-16 14:31:23 PST
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.
Comment 15 Jens Hatlak (:InvisibleSmiley) 2012-01-17 10:39:05 PST
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. ;-)

Note You need to log in before you can comment on or make changes to this bug.