-
Notifications
You must be signed in to change notification settings - Fork 3
Description
Hi,
I'm trying to change TimeText
color in ambient mode, but I'm running into some issues with validator.
With the following xml everything passes:
<?xml version="1.0"?>
<WatchFace width="450" height="450">
<Metadata key="CLOCK_TYPE" value="DIGITAL" />
<Scene>
<Group x="0" y="0" width="450" height="450" name="background">
<Variant mode="AMBIENT" target="alpha" value="0" />
<PartAnimatedImage x="0" y="0" width="450" height="450">
<AnimationController play="ON_VISIBLE" repeat="TRUE" resumePlayBack="TRUE" />
<AnimatedImage resource="jimball" format="AGIF" />
</PartAnimatedImage>
</Group>
<DigitalClock x="150" y="125" width="150" height="200">
<!-- two TimeText elements, since a format like `hh\nmm` isn't supported` -->
<TimeText x="0" y="0" width="150" height="100" format="hh" align="CENTER">
<Font family="balatro" size="100" color="#FF9800" />
</TimeText>
<TimeText x="0" y="100" width="150" height="100" format="mm" align="CENTER" tintColor="#FF9800">
<Font family="balatro" size="100" />
</TimeText>
</DigitalClock>
</Scene>
</WatchFace>
adding Variant
as a child of any TimeText
in the following way gives an error:
<TimeText x="0" y="100" width="150" height="100" format="mm" align="CENTER" tintColor="#FF9800">
<Font family="balatro" size="100" />
<Variant mode="AMBIENT" target="tintColor" value="#FF000000" />
</TimeText>
INFO: WFF Validation Application Version unspecified. Maximum Supported Format Version #4
SEVERE: [Line 22:Column 80]: cvc-complex-type.2.4.d: Invalid content was found starting with element 'Variant'. No child element is expected at this point.
INFO: ❌ FAILED : /home/kamil/AndroidStudioProjects/WearWatchfaces/wff/jimball/src/main/res/raw/watchface.xml is NOT valid against watch face format version #1
It's worth mentioning that this specific watchface fails to change the color, but a Variant
like:
<Variant mode="AMBIENT" target="alpha" value="0" />
placed in the same TimeText
works just fine.
TimeText's
Docs specify following allowed inner elements:
Variant
Allows for changing attributes of this element when the Wear OS device is in ambient mode. More information is available in theVariant
reference.
BitmapFont
A BitmapFont to use for rendering the time.
Font
A Font to use for rendering the time.
So either I'm misunderstanding something or validator or docs are incorrect. It's quite possible I missed some details so if there's a reason for this behavior I'd be happy to learn it.