Bug 142344 - Navigator jumps to table while navigating over headings
Summary: Navigator jumps to table while navigating over headings
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
7.1.0.0.alpha0+
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:7.3.0
Keywords: bibisected, regression
Depends on:
Blocks: Navigator
  Show dependency treegraph
 
Reported: 2021-05-18 08:32 UTC by Georgy Litvinov
Modified: 2021-10-12 09:18 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments
File to reproduce the bug (11.62 KB, application/vnd.oasis.opendocument.text)
2021-05-18 08:33 UTC, Georgy Litvinov
Details
Headings Content Navigation View in Navigator in Sidebar (103.32 KB, image/png)
2021-09-15 00:59 UTC, Jim Raykowski
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Georgy Litvinov 2021-05-18 08:32:36 UTC
Description:
While navigating over heading if chosen header is in table navigator jumps out of Headings to navigating over tables to the table that has the heading inside. 
This forces user to manually go back to Headings 


Steps to Reproduce:
1. Open prepared document with headings inside of tables
2. Open navigator, choose M heading in the Headings.


Actual Results:
The navigator jumps to tables and selects the table that contains the Heading. 

Expected Results:
Navigator doesn't jump to the tables.


Reproducible: Always


User Profile Reset: Yes



Additional Info:
Version: 7.2.0.0.alpha0+ / LibreOffice Community
Build ID: 8ae3ae4bf75fdd0aaa132c956d9da029baa3adc6
CPU threads: 8; OS: Linux 4.18; UI render: Skia/Vulkan; VCL: gtk3
Locale: en-GB (en_GB.utf8); UI: en-US
TinderBox: Linux-rpm_deb-x86_64@86-TDF, Branch:master, Time: 2021-04-23_17:13:02
Calc: threaded
Comment 1 Georgy Litvinov 2021-05-18 08:33:41 UTC
Created attachment 172115 [details]
File to reproduce the bug
Comment 2 Roman Kuznetsov 2021-05-22 09:07:39 UTC
confirm in

Version: 7.2.0.0.alpha0+ (x64) / LibreOffice Community
Build ID: dbd4110cc36011042c98549d997daa79e8065aba
CPU threads: 4; OS: Windows 6.1 Service Pack 1 Build 7601; UI render: Skia/Raster; VCL: win
Locale: ru-RU (ru_RU); UI: ru-RU
Calc: CL

but not in

7.0 => regression

I couldn't end bisect. I got many crashes after three or four steps

Jim, can you look at it, as Navigator guru?
Comment 3 Marina Latini (SUSE) 2021-05-25 14:57:49 UTC
bisect repo linux-64-7.1

 c57dc176b6993f2df415bc3375e13231632b16dd is the first bad commit
commit c57dc176b6993f2df415bc3375e13231632b16dd
Author: Jenkins Build User <tdf@pollux.tdf>
Date:   Wed Sep 30 23:09:20 2020 +0200

    source dda71436b8594fb0669b3ac06c02a3997a0674be
    
    source dda71436b8594fb0669b3ac06c02a3997a0674be

 instdir/program/libswlo.so | Bin 22303512 -> 22307720 bytes
 instdir/program/setuprc    |   2 +-
 instdir/program/versionrc  |   2 +-
 3 files changed, 2 insertions(+), 2 deletions(-)

------------------------------------

https://git.libreoffice.org/core/+/dda71436b8594fb0669b3ac06c02a3997a0674be

Jim Raykowski is already in CC.

------------------------------------
git  bisect log
# bad: [a0d29a846f1429ed8281d59f22bcfbdd13119279] source 91385bbc7cccfdf59f60a24eaf81894772134af0
# good: [36741205b2e1c9e51d58dff4d0b4ce9022013411] source 574c57090642347980d2395e1e183cc7b5c171ad
git bisect start 'origin/master' 'oldest'
# good: [a41af4542f3c9bd81eba53ed8d55c23543d82ef7] source 487df0c8f307500029b06c89985a1148ebc784b5
git bisect good a41af4542f3c9bd81eba53ed8d55c23543d82ef7
# bad: [fdbbff390d14ece1013e2ea8f511f9ace5f6da4b] source ebea072fa7d7081ba9d1e549f5aa629c749d8c0e
git bisect bad fdbbff390d14ece1013e2ea8f511f9ace5f6da4b
# good: [d4ed1e225af35b9c22b31defafcdb398211ef913] source 11fdde23f6dc2dce4bc7c4513e70780487150761
git bisect good d4ed1e225af35b9c22b31defafcdb398211ef913
# bad: [d8c38a3c08dc12ab4f45a80e3bfae97d2ea99e7e] source 06687acf67f7846bb521a9a242733e23f330c09c
git bisect bad d8c38a3c08dc12ab4f45a80e3bfae97d2ea99e7e
# bad: [86fe8670f2094af4bf64eca82a5e6616eb784bbe] source b68761f4a5cd22b48c3214c8be919cb4c84da241
git bisect bad 86fe8670f2094af4bf64eca82a5e6616eb784bbe
# good: [b614ce63710a6034290ab76ccc5fe7af4138d22e] source 2217c3fa74fb3c910566ef1de1e05da5c5a120ff
git bisect good b614ce63710a6034290ab76ccc5fe7af4138d22e
# bad: [fa9f916d7ff8c75cebaa08aac68e053749874ba1] source 268a49f473c1830be269a7db5f561e3681134bbd
git bisect bad fa9f916d7ff8c75cebaa08aac68e053749874ba1
# bad: [f223cd28c1d1ab1d8d5ab7d38d685c4380f1dcab] source 762aacc4e055fffbc605be81f66f2274dccb4be8
git bisect bad f223cd28c1d1ab1d8d5ab7d38d685c4380f1dcab
# bad: [7274c7bef6f0bd8d5716956fc7aa1c4904e22eea] source 9c850ca827486db3702699e5c2218842d7361b1b
git bisect bad 7274c7bef6f0bd8d5716956fc7aa1c4904e22eea
# good: [3227eb803b1f64b859a224a49f87cff0b31872af] source e08afec61aef62dd4f949ca7e1ffcc70d437e525
git bisect good 3227eb803b1f64b859a224a49f87cff0b31872af
# bad: [c57dc176b6993f2df415bc3375e13231632b16dd] source dda71436b8594fb0669b3ac06c02a3997a0674be
git bisect bad c57dc176b6993f2df415bc3375e13231632b16dd
# good: [c737b88db152b3812203c3bd1651704d9f4a4ea2] source 4ef541855237f6d7bb06cab7a659dfc9a6dd800a
git bisect good c737b88db152b3812203c3bd1651704d9f4a4ea2
# first bad commit: [c57dc176b6993f2df415bc3375e13231632b16dd] source sha:dda71436b8594fb0669b3ac06c02a3997a0674b
------------------------------------

confirmed  on:
Version: 7.1.0.0.alpha0+
Build ID: dda71436b8594fb0669b3ac06c02a3997a0674be
CPU threads: 8; OS: Linux 5.12; UI render: default; VCL: kf5
Locale: en-GB (en_GB.UTF-8); UI: en-US
Calc: threaded
Comment 4 Jim Raykowski 2021-05-27 21:11:44 UTC
Thanks Marina for bibisecting the change of behaviour to the enhancement done for bug 95378 Writer Navigator document content tracking.

This patch adds document content tracking for tables, frames, images,
OLE objects and drawing objects.

Since the heading is in a table the Navigator tracks to the table.

I will look at how to make the Navigator track the heading instead of the table in this case.
Comment 5 Jim Raykowski 2021-09-15 00:59:34 UTC
Created attachment 175025 [details]
Headings Content Navigation View in Navigator in Sidebar

Seems the best solution for this is to switch to Headings Content Navigation View. This will ignore other content and track Headings only. The screen shot shows the floating Navigator on the left of the screen in All Content Navigation View and the Navigator in the sidebar in Headings Content Navigation View. Notice the table where the cursor is positioned in the document is selected in the floating Navigator and in the Navigator in the sidebar the Heading is selected.
Comment 6 Jim Raykowski 2021-10-04 05:12:26 UTC
Does the patch for bug 144335 which provides a check option in the Navigator Table context menu to control whether table tracking is enabled resolve this?
Comment 7 Georgy Litvinov 2021-10-04 10:39:30 UTC
(In reply to Jim Raykowski from comment #6)
> Does the patch for bug 144335 which provides a check option in the Navigator
> Table context menu to control whether table tracking is enabled resolve this?

It looks like a workaround, not the fix.
Without knowing the workaround most users will be suffering.
I think it shouldn't be jumping from heading to tables (or to any other navigator item that the user has not explicitly selected) when user clicks on navigator item.
Comment 8 Jim Raykowski 2021-10-05 05:04:24 UTC
(In reply to Georgy Litvinov from comment #7)
> I think it shouldn't be jumping from heading to tables (or to any other
> navigator item that the user has not explicitly selected) when user clicks
> on navigator item.
Please see enhancement request bug 95378
Comment 9 Georgy Litvinov 2021-10-05 07:54:29 UTC
(In reply to Jim Raykowski from comment #8)
> Please see enhancement request bug 95378
I don't see a contradiction between enhancement request and the bug.
Maybe while changing view/cursor positions from navigator there shouldn't be any feedback that affects navigator?

Reproduced this bug today with
Version: 7.3.0.0.alpha0+ / LibreOffice Community
Build ID: fc44168ebe840fa2e772f034232fed15460e4977
CPU threads: 8; OS: Linux 4.18; UI render: default; VCL: gtk3
Locale: en-GB (en_GB.utf8); UI: en-US
TinderBox: Linux-rpm_deb-x86_64@86-TDF, Branch:master, Time: 2021-10-04_00:52:15
Calc: threaded
Comment 10 Jim Raykowski 2021-10-08 07:12:54 UTC
(In reply to Georgy Litvinov from comment #9)
> Maybe while changing view/cursor positions from navigator there shouldn't be
> any feedback that affects navigator?
>
Here is a patch that makes the heading in the navigator remain selected after navigating to it when the heading is in a table or section. When the cursor is moved to a different heading outline the tracking behavior returns to table and section before heading.

https://gerrit.libreoffice.org/c/core/+/123244
Comment 11 Commit Notification 2021-10-08 23:48:54 UTC
Jim Raykowski committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/a5ba8d94e6c36a7d79276416cc5acad9a1f6e54e

tdf#142344 SwNavigator: Keep heading selected after navigating to

It will be available in 7.3.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.
Comment 12 Georgy Litvinov 2021-10-12 09:18:40 UTC
Thank you, Jim. 
Works well.
Version: 7.3.0.0.alpha0+ / LibreOffice Community
Build ID: f67392948d625db9ce115092e4c9bfd301268a25
CPU threads: 8; OS: Linux 4.18; UI render: default; VCL: gtk3
Locale: en-GB (en_GB.utf8); UI: en-US
TinderBox: Linux-rpm_deb-x86_64@86-TDF, Branch:master, Time: 2021-10-10_20:02:36
Calc: threaded