0
Files
src/ash/utility
Sammie Quon deee713ebc [reland] cros: Remove forest secret key
Since forest flag is flipped on because of testing variations, removing
the key exposes a couple tests that now fail. I skipped them all, there
are 8 total. The two I am familiar with I will be removing once the
feature is fully launched, the rest I left TODOs.

Original CL is patchset 1.

Had a pre-flight CL CL:5647082 that original made the post-login
onboarding modal dialog which was interfering some browser tests not
show up by default, but missed one case in ash/ that occasionally
interferes on slower builds.

Test: existing tests
Bug: b:328779923
Change-Id: I6b0c76f14df3f5434645a1f99bbc30630f36b532
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5653578
Reviewed-by: Ahmed Fakhry <afakhry@chromium.org>
Commit-Queue: Sammie Quon <sammiequon@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1319443}
2024-06-25 22:02:33 +00:00
..

Ash Utility

Arc Curve Corner

Here is an example arc curve corner:

Alt

An arc curve corner is a corner shape consisting of arcs and lines. It can be specified with the following parameters:

  • width: The width of the arc curve corner. In this example, the width is 10+12+16+20*2=78.
  • height: The height of the arc curve corner. In this example, the height is 8+20+10=38.
  • convex radius: The radius of the convex rounded corner. In this example, this value is 10.
  • concave radius: The radius of the concave rounded corner. In this example, this value is 12.

NOTE: A valid arc curve corner must satisfy

  • width >= 2*convex_radius+concave_radius
  • height >= 2*convex_radius+concave_radius

Draw an arc curve corner in code

GetArcCurveRectPath() accepts three parameters:

  • size: The size of the bounding rectangle with an arc curve corner.
  • arc_curve_corner: An arc curve corner specified by the aforementioned parameters.
  • corner_radius: If given, specifies the corner radius of the corners that are not shaped with an arc curve.

Typically, we clip a view with the path returned by GetArcCurveRectPath() in the overridden OnBoundsChanged() function. For example:

class ViewWithArcCurveCorner : public views::View {
  // ...

  // views::View:
  void OnBoundsChanged(const gfx::Rect& previous_bounds) override {
    SetClipPath(GetArcCurveRectPath(
                            GetContentsBounds().size(),
                            ArcCurveCorner(/*parameters...*/),
                            kCornerRadius));
  }
};