Issue 98766 - disable smooth scrolling on OOo Aqua for now, it is intolerably slow
Summary: disable smooth scrolling on OOo Aqua for now, it is intolerably slow
Status: CLOSED FIXED
Alias: None
Product: Writer
Classification: Application
Component: ui (show other issues)
Version: OOO300m9
Hardware: Mac Mac OS X, all
: P3 Trivial with 2 votes (vote)
Target Milestone: ---
Assignee: michael.ruess
QA Contact: issues@sw
URL:
Keywords: aqua, oooqa
: 104677 (view as issue list)
Depends on:
Blocks:
 
Reported: 2009-02-03 07:36 UTC by daveyost
Modified: 2013-08-07 14:44 UTC (History)
4 users (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
redacted document that exhibits the problem (100.14 KB, application/vnd.oasis.opendocument.text)
2009-02-04 00:49 UTC, daveyost
no flags Details

Note You need to log in before you can comment on or make changes to this issue.
Description daveyost 2009-02-03 07:36:07 UTC
I'm working on a 40-page document on a 2.2GHz MacBook Pro under Mac OS X 10.5.6.

Scrolling even a single page usually takes many seconds. This is excruciating and totally unacceptable.

Performance is just as bad in Print Layout mode and in Web Layout mode. Zoom is 100%.

Version is actually OOO300m15, but that choice is not offered on this "Enter Issue" form.
Comment 1 daveyost 2009-02-03 07:48:03 UTC
I should say that the scroll bar responsiveness is OK, but scrolling is bad with PageUP, PageDown, and the 
up and down arrow keys when you move above or below the current window scroll position.
Comment 2 h.ilter 2009-02-03 08:32:36 UTC
Not an P1 issue!
Comment 3 eric.savary 2009-02-03 08:51:37 UTC
Please attach a sample document.
Comment 4 michael.ruess 2009-02-03 17:06:31 UTC
You can attach a document to this issue after you have submitted it. Just go to
the issue and click "Create new attachment" link.

BTW: does it help, if you click "Tools.Update.Reformat pages" right after you
opened the document?
Comment 5 daveyost 2009-02-03 19:42:51 UTC
Tools.Update.Reformat pages" while it's still open and is performing poorly doesn't help.

Tools.Update.Reformat pages" right after launching and opening doesn't help.

Perhaps you could send me a test document to try. I don't have any I can send you.
Comment 6 rvojta 2009-02-03 20:57:08 UTC
@daveyost: as it works perfectly for me, I assume it works perfectly for es too.
He asked you for a testing document, because this scrolling issues must not
necessarily happen with all documents, but only with documents with specific
content.

The purpose of testing document from you is to try to look, profile, etc. what's
going on and see if there are any errors, performance issues, ...

So, the question is - this scrolling issue happens to you with all documents? Or
do you have some special cases when this issue happens (lot of objects like
images, big tables, long document, ...)? If your second questions' answer is
yes, than please, create sample document and attach it. Or if this is not top
secret, you can attach your 40-page document you are working on. If this is
secret and you want to share it for testing, but not publicly, send it directly
to developer. Otherwise it's quite hard to guess what can be wrong.
Comment 7 daveyost 2009-02-04 00:49:31 UTC
Created attachment 59880 [details]
redacted document that exhibits the problem
Comment 8 daveyost 2009-02-04 00:57:43 UTC
Referenced in Issue 98768 in case something odd about the document causes that bug, too.
Comment 9 michael.ruess 2009-03-12 15:46:37 UTC
I can reproduce this when the "Smooth scroll" option in Preferences.Writer.View
is enabled. Then scrolling via Cursor keys or Pg up/down is very bad.
Comment 10 daveyost 2009-03-14 22:37:10 UTC
Yup. Turning off that preference works around the performance problem.
Comment 11 Oliver Specht 2009-03-16 07:57:10 UTC
->pl: Do you have an idea what's going wrong here? 
Comment 12 philipp.lohmann 2009-03-16 13:00:42 UTC
no, but hdu is having a look at it
Comment 13 hdu@apache.org 2009-03-16 14:43:52 UTC
AquaSalGraphics::copyArea() seems to be the culprit
Comment 14 hdu@apache.org 2009-03-16 14:44:17 UTC
.
Comment 15 hdu@apache.org 2009-03-19 14:05:00 UTC
The scrolling on Mac is fine, the problem is that actually getting the scroll result visible on the display is 
done asynchronously on that platform. This repainting is done in the event loop and for smooth-
scrolling the event loop cannot be handled for a long time

@od: please review the eventually apply patch below, it makes the app appear much smoother
A more thorough approach should consume and handle the keyboard cursor-keys while smooth-
scrolling. Then the smooth-scrolling speed should be adjusted to distance between the target view and 
the current view.

--- source/core/view/viewsh.cxx (revision 268861)
+++ source/core/view/viewsh.cxx (HDU working copy)
@@ -1495,1 +1495,2 @@
                                        GetWin()->Scroll( 0, lScroll, SCROLL_CHILDREN );
+                 Application::Reschedule();

Comment 16 hdu@apache.org 2009-03-19 15:14:02 UTC
s/for smooth-scrolling the event loop cannot be handled for a long time/smooth-scrolling currently 
prevents system events being handled for a long time/
Comment 17 Oliver-Rainer Wittmann 2009-03-20 10:15:51 UTC
Discussion with OS reveals that we can not assure that the code is reentrant.
Thus a <Application::Reschedule()> is not a good idea.

I propose to disable smooth scrolling on the Aqua port for now until the smooth
scrolling method has been refactored.

Follow-up issue for refactoring of smooth scrolling is issue 100405
Comment 18 Oliver-Rainer Wittmann 2009-03-20 10:19:16 UTC
adjusting summary
Comment 19 hdu@apache.org 2009-03-20 10:33:17 UTC
@od: just do "#ifdef QUARTZ" to check for the Aqua port build
Comment 20 Oliver-Rainer Wittmann 2009-08-12 10:17:09 UTC
fixed in cws sw32bf02 - changed file:
/sw/source/core/view/viewsh.cxx, rev. 274882
Comment 21 Oliver-Rainer Wittmann 2009-08-24 10:47:13 UTC
OD->MRU: Checked in internal installation set of cws sw32bf02
Comment 22 michael.ruess 2009-08-25 15:57:45 UTC
Verified in CWS sw32bf02. The option will be ignored and smooth scrolling not
activated until this is refactored.
Comment 23 michael.ruess 2009-09-01 14:19:00 UTC
*** Issue 104677 has been marked as a duplicate of this issue. ***
Comment 24 michael.ruess 2009-09-17 12:27:37 UTC
Checked in DEV300m57.