FrameSvg: l & r borders or t & b don't need to have same height resp. width

Authored by kossebau on May 9 2019, 8:14 PM.

Description

FrameSvg: l & r borders or t & b don't need to have same height resp. width

Summary:
The specification for FrameSvg does not require that all borders exist
or that left & right and top & bottom borders have samples with the same
size in the scalable dimension.
The old assumption in the code broke e.g. themes which had special
variants per screen side for the panel-background and left out elements
for the border side which would not be rendered anyway, but only set a
margin-hint. So e.g. for a panel on the east screen edge, without the
left border element set, leftHeight would be 0 and as result also the
right border not be painted due to an empty size.

Reviewers: Plasma, apol

Reviewed By: apol

Subscribers: kde-frameworks-devel

Tags: Frameworks

Differential Revision: https://phabricator.kde.org/D21106