Bug 120821

Summary: Pausing spelling, editing a document then resuming causes the spell checker to correct the wrong text.
Product: [Applications] kate Reporter: Alex W <bugs>
Component: generalAssignee: KWrite Developers <kwrite-bugs-null>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:

Description Alex W 2006-01-26 17:10:01 UTC
Version:           unknown (using KDE 3.5.0, Gentoo)
Compiler:          gcc version 3.4.5 (Gentoo 3.4.5, ssp-3.4.5-1.0, pie-8.7.9)
OS:                Linux (i686) release 2.6.14-gentoo-r5

How to Reproduce:
Create / open a document with spelling errors with kate or using a katepart (e.g. in Quanta)

Start the spell check. Type in the document window to correct or alter the highlighted text that is currently being flagged as misspelled.

Continue the spell check. Corrections are now applied to the wrong part of the text.

Expected Behaviour:
Spellcheck always corrects the right part of the text.
Comment 1 Anders Lund 2006-01-27 20:47:08 UTC
SVN commit 502998 by alund:

Make the spelling dialog modal. Given the way the spell checking is implemented, we cant have people typing away in the document during the spell check.
BUG: 120821


 M  +2 -2      katespell.cpp  


--- branches/KDE/3.5/kdelibs/kate/part/katespell.cpp #502997:502998
@@ -105,8 +105,8 @@
   else if ( mt == "text/html" || mt == "text/xml" )
     type = KSpell::HTML;
 
-  m_kspell = new KSpell( 0, i18n("Spellcheck"),
-                         this, SLOT(ready(KSpell *)), 0, true, false, type );
+  m_kspell = new KSpell( m_view, i18n("Spellcheck"),
+                         this, SLOT(ready(KSpell *)), 0, true, true, type );
 
   connect( m_kspell, SIGNAL(death()),
            this, SLOT(spellCleanDone()) );