Bug 136694 - split-pane spell-checking failing
Summary: split-pane spell-checking failing
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
4.2.0.4 release
Hardware: All All
: medium normal
Assignee: Michael Meeks
URL:
Whiteboard: target:7.1.0
Keywords: bibisected, regression
Depends on:
Blocks: Spell-Checking
  Show dependency treegraph
 
Reported: 2020-09-12 14:06 UTC by Michael Meeks
Modified: 2020-10-29 17:40 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments
not flagged incorrect. (27.78 KB, image/png)
2020-09-12 14:06 UTC, Michael Meeks
Details
Sample ODS (7.53 KB, application/vnd.oasis.opendocument.spreadsheet)
2020-10-22 17:58 UTC, Aron Budea
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Meeks 2020-09-12 14:06:58 UTC
Created attachment 165416 [details]
not flagged incorrect.

Some rather odd things going on with calc & spell-checking. Underlined red-squiggles in one pane but not another.

'Knurd' is is a word Terry Pratchet invented, but the dictionary is unaware of as of now =)
Comment 1 Usha 2020-10-11 03:26:39 UTC
I was able to reproduce this issue in the below version

Steps to reproduce:
1. Open calc , type knurd or any misspelled word 
2. Misspelled words will be highlighted in red
3. Click view from menu bar and select split window 
4. the spell check only works in second window and not the first
5. if the split window option is removed the spell check works fine after the windows are merged.


Version: 7.1.0.0.alpha0+ (x64)
Build ID: 75030b3a2d4336c494fbe799fb809a37ed7e582f
CPU threads: 4; OS: Windows 10.0 Build 19041; UI render: Skia/Raster; VCL: win
Locale: en-US (en_US); UI: en-US
Calc: threaded
Comment 2 Aron Budea 2020-10-22 17:58:39 UTC
Created attachment 166642 [details]
Sample ODS

This is actually a regression, it works as expected until 4.1.0.4, then it changes in 4.2 (in Linux).
The only problem is that there's some inconsistency, in the bibisect repos the start of the current state is identifiable as a small range (see below), but before that no redlines are shown, even in the 4.1 bibisect repo, which should still be fine based on the results with the release version (I have added English dictionaries to the bibisect repo while testing).

The identified range in bibisect-42max (the builds crash in between):
https://cgit.freedesktop.org/libreoffice/core/log/?qt=range&q=29d1303e234d5d7ee2f312d28592869f020eb2f2..b8002169336b6b7597d32755e41fa3dc2688539e
Comment 3 Aron Budea 2020-10-22 18:24:57 UTC
With bibisect-43all, spell-checking stops working altogether in the following range:
https://cgit.freedesktop.org/libreoffice/core/log/?qt=range&q=a1ac2538e9b287444500618ab4d2f0f06c25cf34..19f4ebd8a54da0ae03b9cc8481613e5cd20ee1e7

And the current behavior starts at the following commit, which is strange, because in bibisect-42max the identified range is ~2 months later):
https://cgit.freedesktop.org/libreoffice/core/commit/?id=90830788b1f8fd61ea86135712868aeda395edd0
author		Noel Grandin <noel@peralex.com>	2013-09-16 14:31:09 +0200
committer	Noel Grandin <noel@peralex.com>	2013-09-17 09:06:12 +0200

convert the SvxAutoCorrect::FindIn* methods from String to OUString
Comment 4 Michael Meeks 2020-10-22 18:46:31 UTC
Seems more fundamental - I found the cause & have a fix.
Comment 5 Commit Notification 2020-10-28 12:08:59 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/65f42a4540d495a11d255af63c7ee15397b57bfa

tdf#136694 - share spelling context across all ScGridWindows.

It will be available in 7.1.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.