Skip to content
  • Alexander Larsson's avatar
    gdkwindow: Simplify clip region handling · 5773cf23
    Alexander Larsson authored
    Since we dropped the move region optimization there is really no need
    to try carefully keep track of opaque non-overlapped regions, as we
    don't use this information to trigger the optimization anymore.
    
    So, by assuming that all windows are non-opaque we can vastly simplify
    the clip region stuff. First of all, we don't need clip_region_with_children,
    as each window will need to draw under all children anyway. Secondly, we
    don't remove overlapping sibling areas from clip_region, as these are
    all non-opaque anyway and we need to draw under them
    
    Finally, we don't need to track the layered region anymore as its
    essentially unused. The few times something like it is needed we can
    compute it explicitly.
    
    For the case of native children of widgets we may cause a repaint
    under native windows that are guaranteed to be opaque, but these
    will be clipped by the native child anyway.
    5773cf23