VisualEditor: floating toolbar causes scrolling of large pages to be very slow
Closed, ResolvedPublic

Description

In Firefox, scrolling a large VE page is very slow, with visible pauses between repaints, predominantly because of the floating toolbar. Calling disableFloating() on the toolbar from the JS console causes scrolling to be roughly as fast as scrolling the non-VE page view.

Timo says he knows how to fix this.


Version: unspecified
Severity: normal

bzimport set Reference to bz52014.
tstarling created this task.Via LegacyJul 25 2013, 5:12 AM
Inez added a comment.Via ConduitJul 25 2013, 5:38 AM

@Krinkle: How are you going to fix this? :-)

tstarling added a comment.Via ConduitJul 25 2013, 5:41 AM

(In reply to comment #1)

@Krinkle: How are you going to fix this? :-)

<Krinkle> I already did, in a way. Earlier this week I re-used that logic for mw.notification (which now also has a floating mode, previously mw.notify messages weren't visible if you scroll down the page, which is a problem for VE). However I noticed a few things that could be optimised that I did 'right' from the get go for mw.notify. I should be able to apply that to ve as well
<Krinkle> most notably the fact that floating calculation for ve toolbar calls offset() each time
<Krinkle> which is a repaint for something that is unlikely to ever change
<Krinkle> I realised it when I was doing mwnotify but never remembered to fix it in VE

gerritbot added a comment.Via ConduitJul 29 2013, 4:27 AM

Change 76241 had a related patch set uploaded by Jforrester:
ve.ui.Toolbar: Refactor floating logic for performance

https://gerrit.wikimedia.org/r/76241

gerritbot added a comment.Via ConduitJul 30 2013, 10:31 PM

Change 76241 merged by jenkins-bot:
ve.ui.Toolbar: Refactor floating logic for performance

https://gerrit.wikimedia.org/r/76241

Jdforrester-WMF added a comment.Via ConduitJul 31 2013, 1:09 AM

Merged and deployed.

Add Comment