Bug 108573 - EDITING: No 'preview' while moving complex drawing object
Summary: EDITING: No 'preview' while moving complex drawing object
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Draw (show other bugs)
Version:
(earliest affected)
4.2.0.4 release
Hardware: All All
: medium minor
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: bibisected, bisected, haveBacktrace, perf, regression
Depends on:
Blocks: Drag-and-Drop
  Show dependency treegraph
 
Reported: 2017-06-16 18:42 UTC by Telesto
Modified: 2024-01-05 03:13 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments
Callgrind output from master (6.87 MB, application/x-xz)
2017-06-23 17:37 UTC, Buovjaga
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Telesto 2017-06-16 18:42:09 UTC
Description:
Based on bug 104716#c29. Draw isn't giving any feedback while moving a very complex drawing. I expect it to be caused by the high quality rendering while moving the object. 

Steps to Reproduce:
1. Open attachment 133327 [details]
2. Click the top left image and hold
3. Drag it around (the image isn't follow the mouse until you let the mouse go or moves very, very slowly)

Actual Results:  
Dragging is slow and isn't giving any feedback

Expected Results:
Some feedback while moving the object


Reproducible: Always

User Profile Reset: No

Additional Info:
Found in
Version: 6.0.0.0.alpha0+
Build ID: cbf371e07fd5dea1ea08a1f299360d1273961ebd
CPU threads: 4; OS: Windows 6.19; UI render: default; 
TinderBox: Win-x86@42, Branch:master, Time: 2017-06-14_23:13:57
Locale: nl-NL (nl_NL); Calc: CL

and in
Version: 5.0.0.5
Build ID: 1b1a90865e348b492231e1c451437d7a15bb262b
Locale: nl-NL (nl_NL)

and in
Versie: 4.2.0.4 
Build ID: 05dceb5d363845f2cf968344d7adab8dcfb2ba71

but considerably less problematic with
Versie: 4.1.0.4 
Build ID: 89ea49ddacd9aa532507cbf852f2bb22b1ace28


User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0
Comment 1 Buovjaga 2017-06-23 17:37:18 UTC
Created attachment 134234 [details]
Callgrind output from master

Arch Linux 64-bit, KDE Plasma 5
Version: 6.0.0.0.alpha0+
Build ID: 5ff95b16cf9fb2ac7b2b970614e3b98f55978dc0
CPU threads: 8; OS: Linux 4.11; UI render: default; VCL: kde4; 
Locale: fi-FI (fi_FI.UTF-8); Calc: group
Built on June 23rd 2017
Comment 2 QA Administrators 2018-06-24 02:41:18 UTC Comment hidden (obsolete)
Comment 3 Buovjaga 2018-07-07 18:49:08 UTC
Bisected on Linux with 42max to
commit f17ee960802bc0d716f4b3c1e5acd3ba4dd65e0f
Author: Matthew Francis <mjay.francis@gmail.com>
Date:   Sat Sep 5 18:28:53 2015 +0800

    source-hash-5aee0c13cc62a81a38d4132db7972dc301c21b3d
    
    commit 5aee0c13cc62a81a38d4132db7972dc301c21b3d
    Author:     Armin Le Grand <alg@apache.org>
    AuthorDate: Tue Jan 29 12:32:36 2013 +0000
    Commit:     Caolán McNamara <caolanm@redhat.com>
    CommitDate: Sun Jun 16 20:01:56 2013 +0100
    
        Resolves: #i121532# enhanced visualisation of text edit&selection
    
        D&D overhauled
    
        (cherry picked from commit c6e63b6bbb6b4a63fe1302de57fc32cd28432378)

Adding Cc: to Armin Le Grand.
Comment 4 Armin Le Grand 2021-12-15 11:11:12 UTC
Checked briefly. It's just a very massive object, ungroup takes ages (also performance error, might be fixable since SdrObjects do not need to be part of SdrPage initially nowadays). Also overlay should not need to clone the SdrObject(s) involved when only dragging. That would be part of DrawingLayer cleanups which unfortunately rarely get supported.
Comment 5 Armin Le Grand 2021-12-15 13:57:27 UTC
Whoa - used Struktur_IST.odg to play around. It's an incredible test document for performance. It' loaded not too slow, but then...
- until it gets painted
- selecting top-left object
- ungroup takes ages
- selecting with drag-frame also takes ages
Not sure what's going on here, but somehow performance has degraded (?) massively...
Comment 6 Armin Le Grand 2021-12-15 14:01:33 UTC
Note: top-left object is made of 2378 sub-objects
Comment 7 Armin Le Grand 2022-01-04 14:38:57 UTC
This commit was developed for another code base, and not merged by me. For complex changes like this, side-effects are to be expected; sadly I dont't have the cycles to deal with all the fallout. Un-Ccing myself for the while.
Comment 8 Telesto 2022-01-04 14:56:50 UTC
@Noel
You might take interest in this one as perf being you're specialty. And well you're also working on SdrObjects (https://gerrit.libreoffice.org/c/core/+/127940) , which are also complex objects, so there might be some overlap with your current task.

Armin is suggesting major overhaul; but maybe some optimizing can be done within the existing code. 

FWIW: only poking, no expectations.
Comment 9 QA Administrators 2024-01-05 03:13:49 UTC
Dear Telesto,

To make sure we're focusing on the bugs that affect our users today, LibreOffice QA is asking bug reporters and confirmers to retest open, confirmed bugs which have not been touched for over a year.

There have been thousands of bug fixes and commits since anyone checked on this bug report. During that time, it's possible that the bug has been fixed, or the details of the problem have changed. We'd really appreciate your help in getting confirmation that the bug is still present.

If you have time, please do the following:

Test to see if the bug is still present with the latest version of LibreOffice from https://www.libreoffice.org/download/

If the bug is present, please leave a comment that includes the information from Help - About LibreOffice.
 
If the bug is NOT present, please set the bug's Status field to RESOLVED-WORKSFORME and leave a comment that includes the information from Help - About LibreOffice.

Please DO NOT

Update the version field
Reply via email (please reply directly on the bug tracker)
Set the bug's Status field to RESOLVED - FIXED (this status has a particular meaning that is not 
appropriate in this case)


If you want to do more to help you can test to see if your issue is a REGRESSION. To do so:
1. Download and install oldest version of LibreOffice (usually 3.3 unless your bug pertains to a feature added after 3.3) from https://downloadarchive.documentfoundation.org/libreoffice/old/

2. Test your bug
3. Leave a comment with your results.
4a. If the bug was present with 3.3 - set version to 'inherited from OOo';
4b. If the bug was not present in 3.3 - add 'regression' to keyword


Feel free to come ask questions or to say hello in our QA chat: https://web.libera.chat/?settings=#libreoffice-qa

Thank you for helping us make LibreOffice even better for everyone!

Warm Regards,
QA Team

MassPing-UntouchedBug