Skip to content
  • Emilio Cobos Álvarez's avatar
    Bug 1583534 - Further simplify PresShell::ResizeReflow. r=botond · 848d89d6
    Emilio Cobos Álvarez authored
    In particular, not let ResizeReflow take the old and new size. Most of the
    callers pass dummy values anyway.
    
    Instead, use the old size of the layout viewport. This ensures we fire resize
    events only if the layout viewport actually changes.
    
    This is important because the first resize of the mobile viewport manager
    after a navigation has an "old size" of 0x0, even though the layout viewport
    is initialized on presshell initialization to the right size.
    
    Thus, we fire resize events unnecessarily in that case, which is the root cause
    for bug 1528052.
    
    To do this, we need to shuffle a bit of code in nsDocumentViewer that deals with
    delayed resizes, to set the visible area _and_ invalidate layout, rather than
    setting the visible area and _then_ relying on doing a resize reflow.
    
    Further cleanup is possible, though not required for my android resizing fix, so
    will do separately.
    
    Differential Revision: https://phabricator.services.mozilla.com/D4694...
    848d89d6