Ensure that transforms correctly propagate with squashing

In the case were the ancestor element has a transform that must be
applied without flattening (it has applied perspective, for example), we
must ensure that, in the compositor, the transform propagates down the
composited layer tree to m_graphicsLayer.

Previously, we'd only call setShouldFlattenTransform(false) on the
squashing containment layer if m_owningLayer.shouldPreserve3d(), but
this was incorrect: any of m_graphicsLayer's ancestors must never
flatten the inherited transform since that's what'd happen if these
bookkeeping layers were never created.

Even though the ancestor clipping layer could appear above
m_graphicsLayer in the internal hierarchy, it's not possible to get into
a situation where we have a transform to propagate (via preserve-3d or
perspective) and we also have an ancestor clipping layer. Those two
properties force a stacking context, and if our clipping layer is a
stacking context, it will be our ancestor in the composited layer tree
and so we'll never create an ancestor clipping layer. This is why I've
only tested a situation involving a squashing containment layer.

BUG=412396

Review URL: https://codereview.chromium.org/591743002

git-svn-id: svn://svn.chromium.org/blink/trunk@182366 bbb929c8-8fbe-4397-9dbb-9b2b20218538