mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
Added a OffsetBase class that Size now inherits from, and added a new Offset class that also inherits from OffsetBase. Offset has: - dx and dy members - zero and infinite static constants - a method that returns a new Offset that's the existing one scaled by a scalar - a unary minus operator - operators overloads such that subtracting or adding two Offsets gives another Offset - a toPoint() method Added Offset and Size to the dart bindings, so they can be used from C++. Changed the Canvas API to use Point, Size, and Offset where appropriate: - drawLine uses Points now - drawCircle uses a Point now - drawImage uses a Paint now - the constructor uses a Size Changed Point as follows: - added a unary minus - Point difference now gives an Offset rather than a Size - You can add an Offset to a Point to get a new Point - toSize() has been replaced by toOffset() Changed Rect as follows: - renamed upperLeft and lowerRight to topLeft and bottomRight for consistency with our other APIs - added bottomLeft and topRight for completeness Changed Size as follows: - now inherits from OffsetBase - added *, /, ~/, and % operators for scaling sizes - subtracting a Size from a Size gives an Offset - subtracting an Offset from a Size gives a Size - changed the + operator to take an Offset instead of a Size - added topLeft, bottomLeft, topRight, bottomRight to match Rect - added center for the same reason - added shortestSide getter since that was a common pattern - removed toPoint() Changed DrawLooperLayerInfo as follows: - setOffset member takes an Offset instead of a Point Changed BoxConstraints as follows: - added biggest getter since it was a common pattern - added smallest getter for symmetry Changed BoxShadow as follows: - offset member is an Offset rather than a Size Changed ViewConstraints as follows: - replaced height and width members by a single size member I did some minor code cleanup in nearby files while I was there, including sorting sky/engine/core/core.gni alphabetically, and fixing some warnings in the examples. BUG= R=abarth@chromium.org, chinmaygarde@google.com Review URL: https://codereview.chromium.org/1214833004.
Sky Engine
This directory contains the bulk of the C++ code backing the
dart:sky module.
It is based on Blink, Chromium's rendering engine, which itself is descended from WebKit, which is descended from KHTML.