Bug 359682 - spellcheck dialog does not appear in Kate/Kwrite on Fedora 23/24
Summary: spellcheck dialog does not appear in Kate/Kwrite on Fedora 23/24
Status: RESOLVED FIXED
Alias: None
Product: kate
Classification: Applications
Component: kwrite (show other bugs)
Version: unspecified
Platform: Fedora RPMs Linux
: NOR normal
Target Milestone: ---
Assignee: KWrite Developers
URL:
Keywords:
: 363375 375621 (view as bug list)
Depends on:
Blocks:
 
Reported: 2016-02-22 20:06 UTC by josh
Modified: 2017-10-24 05:56 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
screenshot that illustrates the issue (10.48 KB, image/png)
2017-01-24 16:39 UTC, Erik Quaeghebeur
Details

Note You need to log in before you can comment on or make changes to this bug.
Description josh 2016-02-22 20:06:16 UTC
Kate Version: 15.12.1
KDE Frameworks 5.18.0
Qt 5.5.1 (built against 5.5.1)
Platforms: tested on Fedora 23 and Fedora 24
Dictionary: American English

Currently, the following spellcheck functions which require interactive dialogs do not work in either Kate or Kwrite:

* check spelling
* check spelling (from cursor)
* change dictionary

What seems to be happening is that the interactive dialog to check spelling is not displaying, or is displaying unusably.  Supporting this theory, "automatic spell checking" with red underlining appears to work correctly.

This issue seems to be related to, but distinct from, this bug: https://bugs.kde.org/show_bug.cgi?id=343313


Reproducible: Always

Steps to Reproduce:
1. Open a document in Kate
2. Select Tools --> Spelling --> Spelling


Actual Results:  
3. No spellcheck dialog will appear, or

3. A dialog will appear which says "spellcheck complete [OK]"

Expected Results:  
3. A dialog should appear allowing interactive spellcheck.

"Change dictionary", differently from spellcheck, will cause a change: the change dictionary dropdown will appear *on the status bar* instead of in a dialog.  This makes it impossible to actually select a dictionary ... or to dismiss the drop-down.

Error output if I run Kate in terminal seems to be mixed.  I see all three of these results:

* Sometimes there is no error output
* Sometimes I see this error, multiple times:
0x558f6b3422d0 void QWindowPrivate::setTopLevelScreen(QScreen*, bool) ( QScreen(0x558f6aab3460) ): Attempt to set a screen on a child window.

* Sometimes I see this error, once:
QStackedWidget::setCurrentWidget: widget 0x55d2dd4d7d50 not contained in stack

I have not figured out the pattern of what action produces what error.

Bug discovered by me on my laptop; verified by rdeiter in IRC who tested on Fedora23.
Comment 1 Burkhard Lück 2016-04-25 11:48:23 UTC
confirmed with frameworks 5.21 and kate 16.07.70 compiled from sources
Comment 2 Jérôme Borme 2017-01-02 19:12:43 UTC
Right now on my setup, spell check works ONCE.

1. Tools/Spelling/Spelling. A window opens at the bottom of kwrite.
2. Perform the spell check until it finishes, or press the close widget. The window closes.
3. Call the Spelling window again.

Result: Spellcheck window does not manage to grow from the Status bar. Instead, some text and UI elements are present on the Status bar, weirdly displayed and unusable. This text stays there, botches the status bar and requires another kwrite instance to go away.

Tested on gentoo with kwrite 16.04, 16.08, 16.12 and Qt 5.6.2, 5.7.1.
Comment 3 Erik Quaeghebeur 2017-01-24 16:33:55 UTC
Confirmed on Gentoo with KF 5.29 and kate 16.08.3.

I consistently get, as a message from kate:

QStackedWidget::setCurrentWidget: widget 0x2dd4c20 not contained in stack

where obviously the 0x2dd4c20 (pointer?) differs each time.

This is a horrible bug, it makes the whole spell-checking system unusable. It's importance should be increased...
Comment 4 Erik Quaeghebeur 2017-01-24 16:39:08 UTC
Created attachment 103618 [details]
screenshot that illustrates the issue
Comment 5 Burkhard Lück 2017-01-25 07:08:32 UTC
Ubuntu 16.04.1 LTS
Kate Version 16.04.3
KDE Frameworks 5.28.0
Qt 5.6.1
Spellchecke works now
Comment 6 Erik Quaeghebeur 2017-01-25 07:17:14 UTC
(In reply to Burkhard Lueck from comment #5)
>
> Kate Version 16.04.3
> KDE Frameworks 5.28.0
> Qt 5.6.1
> Spellchecke works now

Hmm with KF 5.29.0/kate 16.08.3/Qt 5.6.2 here, it doesn't work. Either there's something else at play or a regression was introduced in 5.28.0→5.29.0 or 16.04.3→16.08.3. Strange.
Comment 7 Burkhard Lück 2017-01-25 07:38:06 UTC
Recent master Version 17.03.70, KDE Frameworks 5.31.0, Qt 5.6.1 (built against 5.6.1), build from sources works as well
Comment 8 Burkhard Lück 2017-01-28 09:36:38 UTC
*** Bug 375621 has been marked as a duplicate of this bug. ***
Comment 9 Christoph Roick 2017-10-05 19:55:49 UTC
Git commit 9a77f365de57b26aa04c8db6d587bdba93db8433 by Christoph Roick.
Committed on 05/10/2017 at 19:55.
Pushed by croick into branch 'master'.

Fix missing spell check bar

Summary:
- the spell check bar removes itself from the bottom view bar,
  now is added again when required

Test Plan:
- write a text with spelling errors
- run the spell check, ignore errors
- run the spell check again, with the bar widget correctly
  showing up now

Reviewers: #ktexteditor, dhaumann

Reviewed By: #ktexteditor, dhaumann

Subscribers: dhaumann, #frameworks

Tags: #kate, #frameworks

Differential Revision: https://phabricator.kde.org/D8148

M  +2    -2    src/spellcheck/spellcheckdialog.cpp

https://commits.kde.org/ktexteditor/9a77f365de57b26aa04c8db6d587bdba93db8433
Comment 10 Wolfgang Bauer 2017-10-24 05:56:18 UTC
*** Bug 363375 has been marked as a duplicate of this bug. ***