From b681e390ab44132940ca8e9adf15ac0f66a47780 Mon Sep 17 00:00:00 2001 From: Max Mitchell Date: Thu, 30 Jul 2026 08:54:01 -0700 Subject: [PATCH] Change Version constant names. PiperOrigin-RevId: 956551778 --- ink/brush/brush_behavior.cc | 33 ++++++------ ink/brush/brush_family.cc | 2 +- ink/brush/brush_paint.cc | 12 ++--- ink/brush/brush_tip.cc | 2 +- ink/brush/color_function.cc | 4 +- ink/brush/easing_function.cc | 8 +-- ink/brush/internal/jni/brush_native_helper.cc | 4 +- ink/brush/version.h | 24 +++++---- ink/storage/brush_test.cc | 54 +++++++++---------- ink/strokes/input/stroke_input.cc | 2 +- 10 files changed, 71 insertions(+), 74 deletions(-) diff --git a/ink/brush/brush_behavior.cc b/ink/brush/brush_behavior.cc index 8af47856..989e452d 100644 --- a/ink/brush/brush_behavior.cc +++ b/ink/brush/brush_behavior.cc @@ -494,9 +494,9 @@ Version CalculateMinimumRequiredVersion(BrushBehavior::Source source) { case BrushBehavior::Source:: kAccelerationLateralInCentimetersPerSecondSquared: case BrushBehavior::Source::kDistanceRemainingAsFractionOfStrokeLength: - return Version::k0Jetpack1_0_0(); + return Version::k0(); case BrushBehavior::Source::kTimeSinceStrokeEndInSeconds: - return Version::k1Jetpack1_1_0Alpha01(); + return Version::k1(); case BrushBehavior::Source::kTimeFromInputToStrokeEndInSeconds: return Version::kDevelopment(); } @@ -520,7 +520,7 @@ Version CalculateMinimumRequiredVersion(BrushBehavior::Target target) { case BrushBehavior::Target::kSaturationMultiplier: case BrushBehavior::Target::kLuminosityOffset: case BrushBehavior::Target::kOpacityMultiplier: - return Version::k0Jetpack1_0_0(); + return Version::k0(); case BrushBehavior::Target::kTextureAnimationProgressOffset: return Version::kDevelopment(); } @@ -533,7 +533,7 @@ Version CalculateMinimumRequiredVersion(BrushBehavior::PolarTarget target) { kPositionOffsetAbsoluteInRadiansAndMultiplesOfBrushSize: case BrushBehavior::PolarTarget:: kPositionOffsetRelativeInRadiansAndMultiplesOfBrushSize: - return Version::k0Jetpack1_0_0(); + return Version::k0(); } return Version::kDevelopment(); } @@ -544,7 +544,7 @@ Version CalculateMinimumRequiredVersion( case BrushBehavior::OutOfRange::kClamp: case BrushBehavior::OutOfRange::kMirror: case BrushBehavior::OutOfRange::kRepeat: - return Version::k0Jetpack1_0_0(); + return Version::k0(); } return Version::kDevelopment(); } @@ -553,13 +553,13 @@ Version CalculateMinimumRequiredVersion(BrushBehavior::BinaryOp operation) { switch (operation) { case BrushBehavior::BinaryOp::kProduct: case BrushBehavior::BinaryOp::kSum: - return Version::k0Jetpack1_0_0(); + return Version::k0(); case BrushBehavior::BinaryOp::kMin: case BrushBehavior::BinaryOp::kMax: case BrushBehavior::BinaryOp::kAndThen: case BrushBehavior::BinaryOp::kOrElse: case BrushBehavior::BinaryOp::kXorElse: - return Version::k1Jetpack1_1_0Alpha01(); + return Version::k1(); } return Version::kDevelopment(); } @@ -570,7 +570,7 @@ Version CalculateMinimumRequiredVersion( case BrushBehavior::ProgressDomain::kDistanceInCentimeters: case BrushBehavior::ProgressDomain::kDistanceInMultiplesOfBrushSize: case BrushBehavior::ProgressDomain::kTimeInSeconds: - return Version::k0Jetpack1_0_0(); + return Version::k0(); } return Version::kDevelopment(); } @@ -580,7 +580,7 @@ Version CalculateMinimumRequiredVersion( switch (interpolation) { case BrushBehavior::Interpolation::kLerp: case BrushBehavior::Interpolation::kInverseLerp: - return Version::k0Jetpack1_0_0(); + return Version::k0(); } return Version::kDevelopment(); } @@ -596,7 +596,7 @@ Version CalculateMinimumRequiredVersion(BrushBehavior::SourceNode node) { } Version CalculateMinimumRequiredVersion(BrushBehavior::ConstantNode node) { - return Version::k0Jetpack1_0_0(); + return Version::k0(); } Version CalculateMinimumRequiredVersion(BrushBehavior::NoiseNode node) { @@ -608,16 +608,16 @@ Version CalculateMinimumRequiredVersion( return std::max({ enabled.unknown ? CalculateMinimumRequiredVersion(StrokeInput::ToolType::kUnknown) - : Version::k0Jetpack1_0_0(), + : Version::k0(), enabled.mouse ? CalculateMinimumRequiredVersion(StrokeInput::ToolType::kMouse) - : Version::k0Jetpack1_0_0(), + : Version::k0(), enabled.touch ? CalculateMinimumRequiredVersion(StrokeInput::ToolType::kTouch) - : Version::k0Jetpack1_0_0(), + : Version::k0(), enabled.stylus ? CalculateMinimumRequiredVersion(StrokeInput::ToolType::kStylus) - : Version::k0Jetpack1_0_0(), + : Version::k0(), }); } @@ -636,8 +636,7 @@ Version CalculateMinimumRequiredVersion(BrushBehavior::ResponseNode node) { Version CalculateMinimumRequiredVersion(BrushBehavior::IntegralNode node) { return std::max( - {Version::k1Jetpack1_1_0Alpha01(), - CalculateMinimumRequiredVersion(node.integrate_over), + {Version::k1(), CalculateMinimumRequiredVersion(node.integrate_over), CalculateMinimumRequiredVersion(node.integral_out_of_range_behavior)}); } @@ -666,7 +665,7 @@ Version CalculateMinimumRequiredVersion(const BrushBehavior::Node& node) { } Version CalculateMinimumRequiredVersion(const BrushBehavior& behavior) { - Version max_version = Version::k0Jetpack1_0_0(); + Version max_version = Version::k0(); for (const auto& node : behavior.nodes) { max_version = std::max(max_version, CalculateMinimumRequiredVersion(node)); } diff --git a/ink/brush/brush_family.cc b/ink/brush/brush_family.cc index b98e21e3..6620a653 100644 --- a/ink/brush/brush_family.cc +++ b/ink/brush/brush_family.cc @@ -194,7 +194,7 @@ absl::Status ValidateInputModel(const BrushFamily::InputModel& model) { } Version CalculateMinimumRequiredVersion(const BrushFamily::InputModel& model) { - return Version::k0Jetpack1_0_0(); + return Version::k0(); } std::string ToFormattedString(const BrushFamily::InputModel& model) { diff --git a/ink/brush/brush_paint.cc b/ink/brush/brush_paint.cc index f97cb46e..21ef780d 100644 --- a/ink/brush/brush_paint.cc +++ b/ink/brush/brush_paint.cc @@ -334,7 +334,7 @@ Version CalculateMinimumRequiredVersion( case BrushPaint::TextureOrigin::kStrokeSpaceOrigin: case BrushPaint::TextureOrigin::kFirstStrokeInput: case BrushPaint::TextureOrigin::kLastStrokeInput: - return Version::k0Jetpack1_0_0(); + return Version::k0(); } return Version::kDevelopment(); } @@ -344,7 +344,7 @@ Version CalculateMinimumRequiredVersion( switch (texture_size_unit) { case BrushPaint::TextureSizeUnit::kBrushSize: case BrushPaint::TextureSizeUnit::kStrokeCoordinates: - return Version::k0Jetpack1_0_0(); + return Version::k0(); } return Version::kDevelopment(); } @@ -354,7 +354,7 @@ Version CalculateMinimumRequiredVersion(BrushPaint::TextureWrap texture_wrap) { case BrushPaint::TextureWrap::kRepeat: case BrushPaint::TextureWrap::kMirror: case BrushPaint::TextureWrap::kClamp: - return Version::k0Jetpack1_0_0(); + return Version::k0(); } return Version::kDevelopment(); } @@ -373,7 +373,7 @@ Version CalculateMinimumRequiredVersion(BrushPaint::BlendMode blend_mode) { case BrushPaint::BlendMode::kSrcOut: case BrushPaint::BlendMode::kDstAtop: case BrushPaint::BlendMode::kXor: - return Version::k0Jetpack1_0_0(); + return Version::k0(); } return Version::kDevelopment(); } @@ -382,7 +382,7 @@ Version CalculateMinimumRequiredVersion( BrushPaint::AnimationRepeatMode animation_repeat_mode) { switch (animation_repeat_mode) { case BrushPaint::AnimationRepeatMode::kRestart: - return Version::k0Jetpack1_0_0(); + return Version::k0(); case BrushPaint::AnimationRepeatMode::kReverse: return Version::kDevelopment(); } @@ -394,7 +394,7 @@ Version CalculateMinimumRequiredVersion(BrushPaint::SelfOverlap self_overlap) { case BrushPaint::SelfOverlap::kAny: case BrushPaint::SelfOverlap::kDiscard: case BrushPaint::SelfOverlap::kAccumulate: - return Version::k0Jetpack1_0_0(); + return Version::k0(); } return Version::kDevelopment(); } diff --git a/ink/brush/brush_tip.cc b/ink/brush/brush_tip.cc index 52a8e003..19bbcdb7 100644 --- a/ink/brush/brush_tip.cc +++ b/ink/brush/brush_tip.cc @@ -115,7 +115,7 @@ absl::Status ValidateBrushTip(const BrushTip& tip) { } Version CalculateMinimumRequiredVersion(const BrushTip& tip) { - Version max_version = Version::k0Jetpack1_0_0(); + Version max_version = Version::k0(); for (const auto& behavior : tip.behaviors) { max_version = std::max(max_version, CalculateMinimumRequiredVersion(behavior)); diff --git a/ink/brush/color_function.cc b/ink/brush/color_function.cc index da60e0b0..3385c57b 100644 --- a/ink/brush/color_function.cc +++ b/ink/brush/color_function.cc @@ -169,7 +169,7 @@ namespace { Version CalculateMinimumRequiredVersion( const ColorFunction::OpacityMultiplier& opacity) { - return Version::k0Jetpack1_0_0(); + return Version::k0(); } Version CalculateMinimumRequiredVersion(const ColorFunction::HueOffset& hue) { @@ -188,7 +188,7 @@ Version CalculateMinimumRequiredVersion( Version CalculateMinimumRequiredVersion( const ColorFunction::ReplaceColor& replace) { - return Version::k0Jetpack1_0_0(); + return Version::k0(); } Version CalculateMinimumRequiredVersion( diff --git a/ink/brush/easing_function.cc b/ink/brush/easing_function.cc index 21fc28d1..637ba78a 100644 --- a/ink/brush/easing_function.cc +++ b/ink/brush/easing_function.cc @@ -156,18 +156,18 @@ Version CalculateMinimumRequiredVersion( case EasingFunction::Predefined::kEaseInOut: case EasingFunction::Predefined::kStepStart: case EasingFunction::Predefined::kStepEnd: - return Version::k0Jetpack1_0_0(); + return Version::k0(); } return Version::kDevelopment(); } Version CalculateMinimumRequiredVersion( const EasingFunction::CubicBezier& cubic_bezier) { - return Version::k0Jetpack1_0_0(); + return Version::k0(); } Version CalculateMinimumRequiredVersion(const EasingFunction::Linear& linear) { - return Version::k0Jetpack1_0_0(); + return Version::k0(); } Version CalculateMinimumRequiredVersion(const EasingFunction::Steps& steps) { @@ -190,7 +190,7 @@ Version CalculateMinimumRequiredVersion( case EasingFunction::StepPosition::kJumpStart: case EasingFunction::StepPosition::kJumpNone: case EasingFunction::StepPosition::kJumpBoth: - return Version::k0Jetpack1_0_0(); + return Version::k0(); } return Version::kDevelopment(); } diff --git a/ink/brush/internal/jni/brush_native_helper.cc b/ink/brush/internal/jni/brush_native_helper.cc index cb904e54..666f1ce1 100644 --- a/ink/brush/internal/jni/brush_native_helper.cc +++ b/ink/brush/internal/jni/brush_native_helper.cc @@ -25,9 +25,9 @@ namespace ink::native { Version IntToVersion(int version) { switch (version) { case 0: - return Version::k0Jetpack1_0_0(); + return Version::k0(); case 1: - return Version::k1Jetpack1_1_0Alpha01(); + return Version::k1(); case std::numeric_limits::max(): return Version::kDevelopment(); default: diff --git a/ink/brush/version.h b/ink/brush/version.h index 7a5d2639..d683b824 100644 --- a/ink/brush/version.h +++ b/ink/brush/version.h @@ -19,15 +19,19 @@ class Version { std::string ToFormattedString() const { return absl::StrCat(value_); } - // Brush version is incremented when new features are ready to be released. - // This is a versioning process independent of the Jetpack version. A Jetpack - // version may have multiple brush version increments, or none at all - // (containing only previously released brush versions). - - // Included with Jetpack 1.1.0-alpha01. - static constexpr Version k1Jetpack1_1_0Alpha01() { return Version(1); } - // Included with Jetpack 1.0.0. - static constexpr Version k0Jetpack1_0_0() { return Version(0); } + // A Version represents a version of the Ink library's custom brush + // serialization format. This is independent of the Jetpack version. A Jetpack + // release may have multiple brush version increments, or none at all + // (containing only previously released brush versions). Version is used to + // determine compatibility of serialized brushes which may be shared across + // apps using different releases of this library. + + // Included with + // [Jetpack 1.1.0-alpha01](https://developer.android.com/jetpack/androidx/releases/ink#1.1.0-alpha01). + static constexpr Version k1() { return Version(1); } + // Included with + // [Jetpack 1.0.0](https://developer.android.com/jetpack/androidx/releases/ink#1.0.0). + static constexpr Version k0() { return Version(0); } // Features associated with kDevelopment will always be rejected by the // deserializer due to kDevelopment > kMaxSupported. The only exception is @@ -42,7 +46,7 @@ class Version { // customization format. Features still under development should be associated // with kDevelopment until they are ready to be released, after which they // are expected to be supported long-term. - static constexpr Version kMaxSupported() { return k1Jetpack1_1_0Alpha01(); } + static constexpr Version kMaxSupported() { return k1(); } private: explicit constexpr Version(int32_t value) : value_(value) { diff --git a/ink/storage/brush_test.cc b/ink/storage/brush_test.cc index c4f5992f..79074738 100644 --- a/ink/storage/brush_test.cc +++ b/ink/storage/brush_test.cc @@ -1014,7 +1014,7 @@ void CalculateMinimumRequiredVersionMatchesProtoOptions( int32_t min_version_calculated = family_proto.min_version(); EXPECT_THAT(min_version_calculated, Le(Version::kDevelopment().value())); - int32_t min_version_from_options = Version::k0Jetpack1_0_0().value(); + int32_t min_version_from_options = Version::k0().value(); GetMaxProtoVersion(family_proto, min_version_from_options); // Using reflection, examine the minimum required version of each // field/message/enum in the proto, and find the maximum. @@ -1154,10 +1154,8 @@ TEST(BrushTest, DecodeBrushFamilyIsOkWithFallbacks) { newer_brush_families { min_version: 2 } )pb", &family_proto)); - EXPECT_THAT(DecodeBrushFamily(family_proto, Version::k0Jetpack1_0_0()), - IsOk()); - EXPECT_THAT(DecodeBrushFamily(family_proto, Version::k1Jetpack1_1_0Alpha01()), - IsOk()); + EXPECT_THAT(DecodeBrushFamily(family_proto, Version::k0()), IsOk()); + EXPECT_THAT(DecodeBrushFamily(family_proto, Version::k1()), IsOk()); EXPECT_THAT(DecodeBrushFamily(family_proto, Version::kDevelopment()), IsOk()); } @@ -1185,12 +1183,11 @@ TEST(BrushTest, )pb", &family_proto)); EXPECT_THAT( - DecodeMultipleBrushFamilies(family_proto, Version::k0Jetpack1_0_0()), + DecodeMultipleBrushFamilies(family_proto, Version::k0()), StatusIs(absl::StatusCode::kInvalidArgument, - absl::StrCat( - "Version must be less than or equal to ", - Version::k0Jetpack1_0_0().ToFormattedString(), ", but was ", - Version::k1Jetpack1_1_0Alpha01().ToFormattedString()))); + absl::StrCat("Version must be less than or equal to ", + Version::k0().ToFormattedString(), ", but was ", + Version::k1().ToFormattedString()))); } TEST(BrushTest, DecodeBrushFamilyReturnsMaxCompatibleVersion) { @@ -1222,12 +1219,11 @@ TEST(BrushTest, DecodeBrushFamilyFailsWithNoCompatibleVersion) { )pb", &family_proto)); EXPECT_THAT( - DecodeBrushFamily(family_proto, Version::k0Jetpack1_0_0()), + DecodeBrushFamily(family_proto, Version::k0()), StatusIs(absl::StatusCode::kInvalidArgument, - absl::StrCat( - "Version must be less than or equal to ", - Version::k0Jetpack1_0_0().ToFormattedString(), ", but was ", - Version::k1Jetpack1_1_0Alpha01().ToFormattedString()))); + absl::StrCat("Version must be less than or equal to ", + Version::k0().ToFormattedString(), ", but was ", + Version::k1().ToFormattedString()))); } TEST(BrushTest, DecodeBrushFamilyIsOkWithLowestVersionBeingMaxVersion) { @@ -1239,7 +1235,7 @@ TEST(BrushTest, DecodeBrushFamilyIsOkWithLowestVersionBeingMaxVersion) { )pb", &family_proto)); absl::StatusOr family = - DecodeBrushFamily(family_proto, Version::k0Jetpack1_0_0()); + DecodeBrushFamily(family_proto, Version::k0()); EXPECT_THAT(family, IsOkAndHolds(Property(&BrushFamily::HasFallbacks, true))); } @@ -1254,9 +1250,9 @@ TEST(BrushTest, DecodeBrushFamilyPreservesOpaqueFallbacks) { )pb", &family_proto)); - // Decode with k1Jetpack1_1_0Alpha01 (should pick "v1") + // Decode with k1 (should pick "v1") absl::StatusOr family = - DecodeBrushFamily(family_proto, Version::k1Jetpack1_1_0Alpha01()); + DecodeBrushFamily(family_proto, Version::k1()); ASSERT_THAT(family, IsOkAndHolds(AllOf( Property(&BrushFamily::GetMetadata, @@ -1291,9 +1287,9 @@ TEST(BrushTest, DecodeBrushFamilyPreservesUnreadableFallbacks) { /*field_number=*/9999, "Some unknown value"); ASSERT_EQ(family_proto.newer_brush_families(0).unknown_fields().field_count(), 1); - // Decode with k0Jetpack1_0_0 (should pick "v0") + // Decode with k0 (should pick "v0") absl::StatusOr family = - DecodeBrushFamily(family_proto, Version::k0Jetpack1_0_0()); + DecodeBrushFamily(family_proto, Version::k0()); ASSERT_THAT(family, IsOkAndHolds(AllOf( Property(&BrushFamily::GetMetadata, @@ -1376,22 +1372,20 @@ TEST(BrushTest, EncodeMultipleBrushFamiliesEncodesLowestVersionAtTopLevel) { BrushPaint()); ASSERT_THAT(family2, IsOk()); EncodeMultipleBrushFamilies({family0, *family1, *family2}, family_proto); - EXPECT_THAT(family_proto.min_version(), - Eq(Version::k0Jetpack1_0_0().value())); + EXPECT_THAT(family_proto.min_version(), Eq(Version::k0().value())); EXPECT_THAT(family_proto.newer_brush_families(), SizeIs(2)); EXPECT_THAT(family_proto.newer_brush_families(0).min_version(), - Eq(Version::k1Jetpack1_1_0Alpha01().value())); + Eq(Version::k1().value())); EXPECT_THAT(family_proto.newer_brush_families(1).min_version(), Eq(Version::kDevelopment().value())); // Reverse the order of the input -- top level should still be lowest version. // Order of newer_brush_families should be the same, as we sort them. proto::BrushFamily family_proto2; EncodeMultipleBrushFamilies({*family2, *family1, family0}, family_proto2); - EXPECT_THAT(family_proto2.min_version(), - Eq(Version::k0Jetpack1_0_0().value())); + EXPECT_THAT(family_proto2.min_version(), Eq(Version::k0().value())); EXPECT_THAT(family_proto2.newer_brush_families(), SizeIs(2)); EXPECT_THAT(family_proto2.newer_brush_families(0).min_version(), - Eq(Version::k1Jetpack1_1_0Alpha01().value())); + Eq(Version::k1().value())); EXPECT_THAT(family_proto2.newer_brush_families(1).min_version(), Eq(Version::kDevelopment().value())); // Same exact proto output. @@ -1619,16 +1613,16 @@ TEST(BrushTest, EncodeMultipleDecodeSingleBrushFamilyRoundTrip) { proto::BrushFamily family_proto_out; EncodeBrushFamily(*family2_out, family_proto_out); EXPECT_THAT(family_proto_out, EqualsProto(family_proto)); - // Decode with k1Jetpack1_1_0Alpha01 (should pick family1) + // Decode with k1 (should pick family1) absl::StatusOr family1_out = - DecodeBrushFamily(family_proto, Version::k1Jetpack1_1_0Alpha01()); + DecodeBrushFamily(family_proto, Version::k1()); ASSERT_THAT(family1_out, IsOkAndHolds(BrushFamilyEq(*family1))); // Re-encode and verify result is identical to original proto EncodeBrushFamily(*family1_out, family_proto_out); EXPECT_THAT(family_proto_out, EqualsProto(family_proto)); - // Decode with k0Jetpack1_0_0 (should pick family0) + // Decode with k0 (should pick family0) absl::StatusOr family0_out = - DecodeBrushFamily(family_proto, Version::k0Jetpack1_0_0()); + DecodeBrushFamily(family_proto, Version::k0()); ASSERT_THAT(family0_out, IsOkAndHolds(BrushFamilyEq(family0))); // Re-encode and verify result is identical to original proto EncodeBrushFamily(*family0_out, family_proto_out); diff --git a/ink/strokes/input/stroke_input.cc b/ink/strokes/input/stroke_input.cc index f876fd38..b082e289 100644 --- a/ink/strokes/input/stroke_input.cc +++ b/ink/strokes/input/stroke_input.cc @@ -67,7 +67,7 @@ Version CalculateMinimumRequiredVersion(StrokeInput::ToolType tool_type) { case StrokeInput::ToolType::kTouch: case StrokeInput::ToolType::kStylus: case StrokeInput::ToolType::kUnknown: - return Version::k0Jetpack1_0_0(); + return Version::k0(); } return Version::kDevelopment(); }