Apache OpenOffice (AOO) Bugzilla – Issue 98766
disable smooth scrolling on OOo Aqua for now, it is intolerably slow
Last modified: 2013-08-07 14:44:00 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.
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.
Not an P1 issue!
Please attach a sample document.
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?
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.
@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.
Created attachment 59880 [details] redacted document that exhibits the problem
Referenced in Issue 98768 in case something odd about the document causes that bug, too.
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.
Yup. Turning off that preference works around the performance problem.
->pl: Do you have an idea what's going wrong here?
no, but hdu is having a look at it
AquaSalGraphics::copyArea() seems to be the culprit
.
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();
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/
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
adjusting summary
@od: just do "#ifdef QUARTZ" to check for the Aqua port build
fixed in cws sw32bf02 - changed file: /sw/source/core/view/viewsh.cxx, rev. 274882
OD->MRU: Checked in internal installation set of cws sw32bf02
Verified in CWS sw32bf02. The option will be ignored and smooth scrolling not activated until this is refactored.
*** Issue 104677 has been marked as a duplicate of this issue. ***
Checked in DEV300m57.