add watchface complications

This commit is contained in:
2026-09-17 18:47:38 +03:00
parent 04488769e9
commit c062588dd1
2 changed files with 447 additions and 279 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 757 B

@@ -151,10 +151,10 @@
</DigitalClock> </DigitalClock>
<!-- WEATHER --> <!-- TOP LEFT COMPLICATION -->
<Group <Group
name="weather" name="top_left_background"
x="70" x="70"
y="54" y="54"
width="80" width="80"
@@ -180,16 +180,16 @@
</Ellipse> </Ellipse>
<Ellipse <Ellipse
x="0" x="2"
y="0" y="2"
width="76" width="76"
height="76"> height="76">
<Fill color="#0000004D"/> <Fill color="#0000004D"/>
</Ellipse> </Ellipse>
<Ellipse <Ellipse
x="1" x="3"
y="1" y="3"
width="74" width="74"
height="74"> height="74">
<Stroke <Stroke
@@ -199,80 +199,73 @@
</PartDraw> </PartDraw>
</Group>
<PartDraw <ComplicationSlot
x="11" name="top_left_complication"
y="23" slotId="1"
width="25" x="70"
height="35"> y="54"
width="80"
height="80"
supportedTypes="SHORT_TEXT SMALL_IMAGE MONOCHROMATIC_IMAGE EMPTY">
<RoundRectangle <Variant
x="9" mode="AMBIENT"
y="1" target="alpha"
width="7" value="0"/>
height="22"
cornerRadiusX="4"
cornerRadiusY="4">
<Stroke <BoundingOval
color="#FFFFFFFF" x="2"
thickness="2.5" y="2"
cap="ROUND"/> width="76"
height="76"
outlinePadding="2"/>
</RoundRectangle> <DefaultProviderPolicy
defaultSystemProvider="EMPTY"
<Ellipse defaultSystemProviderType="EMPTY"/>
x="6"
y="19"
width="13"
height="13">
<Fill color="#FFFFFFFF"/>
</Ellipse>
<RoundRectangle
x="11"
y="8"
width="3"
height="18"
cornerRadiusX="2"
cornerRadiusY="2">
<Fill color="#FFFFFFFF"/>
</RoundRectangle>
</PartDraw>
<Complication type="SHORT_TEXT">
<Condition> <Condition>
<Expressions> <Expressions>
<Expression name="weatherAvailable"> <Expression name="top_leftHasIcon"><![CDATA[
[WEATHER.IS_AVAILABLE] [COMPLICATION.MONOCHROMATIC_IMAGE] != null
</Expression> ]]></Expression>
</Expressions> </Expressions>
<Compare expression="weatherAvailable"> <Compare expression="top_leftHasIcon">
<PartImage
x="10"
y="28"
width="24"
height="24"
tintColor="#FFFFFFFF">
<Image resource="[COMPLICATION.MONOCHROMATIC_IMAGE]"/>
</PartImage>
<PartText <PartText
x="33" x="36"
y="17" y="18"
width="40" width="34"
height="44"> height="44">
<Text <Text
align="CENTER" align="CENTER"
verticalAlign="CENTER" verticalAlign="CENTER"
ellipsis="TRUE"
isAutoSize="TRUE"> isAutoSize="TRUE">
<Font <Font
family="SYNC_TO_DEVICE" family="SYNC_TO_DEVICE"
size="25" size="23"
weight="BOLD" weight="BOLD"
color="#FFFFFFFF"> color="#FFFFFFFF">
<Template><![CDATA[%s]]>
<Template><![CDATA[%d°]]> <Parameter expression="[COMPLICATION.TEXT]"/>
<Parameter expression="[WEATHER.TEMPERATURE]"/>
</Template> </Template>
</Font> </Font>
</Text> </Text>
@@ -284,21 +277,25 @@
<Default> <Default>
<PartText <PartText
x="33" x="10"
y="17" y="16"
width="40" width="60"
height="44"> height="48">
<Text <Text
align="CENTER" align="CENTER"
verticalAlign="CENTER"> verticalAlign="CENTER"
ellipsis="TRUE"
isAutoSize="TRUE">
<Font <Font
family="SYNC_TO_DEVICE" family="SYNC_TO_DEVICE"
size="24" size="24"
weight="BOLD" weight="BOLD"
color="#FFFFFFFF"> color="#FFFFFFFF">
— <Template><![CDATA[%s]]>
<Parameter expression="[COMPLICATION.TEXT]"/>
</Template>
</Font> </Font>
</Text> </Text>
@@ -309,13 +306,40 @@
</Condition> </Condition>
</Group> </Complication>
<Complication type="SMALL_IMAGE">
<PartImage
x="18"
y="18"
width="44"
height="44">
<Image resource="[COMPLICATION.SMALL_IMAGE]"/>
</PartImage>
</Complication>
<Complication type="MONOCHROMATIC_IMAGE">
<PartImage
x="20"
y="20"
width="40"
height="40"
tintColor="#FFFFFFFF">
<Image resource="[COMPLICATION.MONOCHROMATIC_IMAGE]"/>
</PartImage>
</Complication>
</ComplicationSlot>
<!-- BATTERY --> <!-- TOP RIGHT COMPLICATION -->
<Group <Group
name="battery" name="top_right_background"
x="300" x="300"
y="54" y="54"
width="80" width="80"
@@ -341,16 +365,16 @@
</Ellipse> </Ellipse>
<Ellipse <Ellipse
x="4" x="2"
y="0" y="2"
width="76" width="76"
height="76"> height="76">
<Fill color="#0000004D"/> <Fill color="#0000004D"/>
</Ellipse> </Ellipse>
<Ellipse <Ellipse
x="5" x="3"
y="1" y="3"
width="74" width="74"
height="74"> height="74">
<Stroke <Stroke
@@ -358,70 +382,144 @@
thickness="1"/> thickness="1"/>
</Ellipse> </Ellipse>
<Arc
centerX="42"
centerY="38"
width="57"
height="57"
startAngle="-135"
endAngle="135">
<Stroke
color="#35FFFFFF"
thickness="3.5"
cap="ROUND"/>
</Arc>
<Arc
centerX="42"
centerY="38"
width="57"
height="57"
startAngle="-135"
endAngle="-135">
<Transform
target="endAngle"
value="-135 + ([BATTERY_PERCENT] * 2.7)"/>
<Stroke
color="#FFFFFFFF"
thickness="3.5"
cap="ROUND"/>
</Arc>
<RoundRectangle
x="29"
y="31"
width="25"
height="14"
cornerRadiusX="3"
cornerRadiusY="3">
<Stroke
color="#FFFFFFFF"
thickness="2.5"/>
</RoundRectangle>
<RoundRectangle
x="54"
y="35"
width="4"
height="6"
cornerRadiusX="1"
cornerRadiusY="1">
<Fill color="#FFFFFFFF"/>
</RoundRectangle>
</PartDraw> </PartDraw>
</Group> </Group>
<ComplicationSlot
name="top_right_complication"
slotId="2"
x="300"
y="54"
width="80"
height="80"
supportedTypes="SHORT_TEXT SMALL_IMAGE MONOCHROMATIC_IMAGE EMPTY">
<Variant
mode="AMBIENT"
target="alpha"
value="0"/>
<BoundingOval
x="2"
y="2"
width="76"
height="76"
outlinePadding="2"/>
<DefaultProviderPolicy
defaultSystemProvider="WATCH_BATTERY"
defaultSystemProviderType="SHORT_TEXT"/>
<Complication type="SHORT_TEXT">
<Condition>
<Expressions>
<Expression name="top_rightHasIcon"><![CDATA[
[COMPLICATION.MONOCHROMATIC_IMAGE] != null
]]></Expression>
</Expressions>
<Compare expression="top_rightHasIcon">
<PartImage
x="10"
y="28"
width="24"
height="24"
tintColor="#FFFFFFFF">
<Image resource="[COMPLICATION.MONOCHROMATIC_IMAGE]"/>
</PartImage>
<PartText
x="36"
y="18"
width="34"
height="44">
<Text
align="CENTER"
verticalAlign="CENTER"
ellipsis="TRUE"
isAutoSize="TRUE">
<Font
family="SYNC_TO_DEVICE"
size="23"
weight="BOLD"
color="#FFFFFFFF">
<Template><![CDATA[%s]]>
<Parameter expression="[COMPLICATION.TEXT]"/>
</Template>
</Font>
</Text>
</PartText>
</Compare>
<Default>
<PartText
x="10"
y="16"
width="60"
height="48">
<Text
align="CENTER"
verticalAlign="CENTER"
ellipsis="TRUE"
isAutoSize="TRUE">
<Font
family="SYNC_TO_DEVICE"
size="24"
weight="BOLD"
color="#FFFFFFFF">
<Template><![CDATA[%s]]>
<Parameter expression="[COMPLICATION.TEXT]"/>
</Template>
</Font>
</Text>
</PartText>
</Default>
</Condition>
</Complication>
<Complication type="SMALL_IMAGE">
<PartImage
x="18"
y="18"
width="44"
height="44">
<Image resource="[COMPLICATION.SMALL_IMAGE]"/>
</PartImage>
</Complication>
<Complication type="MONOCHROMATIC_IMAGE">
<PartImage
x="20"
y="20"
width="40"
height="40"
tintColor="#FFFFFFFF">
<Image resource="[COMPLICATION.MONOCHROMATIC_IMAGE]"/>
</PartImage>
</Complication>
</ComplicationSlot>
<!-- CHAT / VOICE --> <!-- CHAT / VOICE -->
@@ -444,9 +542,8 @@
height="60"> height="60">
<Launch <Launch
target="ru.shadowsparky.gigawear/ru.shadowsparky.gigawear.presentation.MainActivity" /> target="ru.shadowsparky.gigawear/ru.shadowsparky.gigawear.presentation.MainActivity"/>
<!-- shadow -->
<Ellipse <Ellipse
x="2" x="2"
y="4" y="4"
@@ -455,7 +552,6 @@
<Fill color="#40000000"/> <Fill color="#40000000"/>
</Ellipse> </Ellipse>
<!-- background -->
<Ellipse <Ellipse
x="2" x="2"
y="2" y="2"
@@ -464,7 +560,6 @@
<Fill color="#0000004D"/> <Fill color="#0000004D"/>
</Ellipse> </Ellipse>
<!-- border -->
<Ellipse <Ellipse
x="3" x="3"
y="3" y="3"
@@ -548,10 +643,10 @@
</Group> </Group>
<!-- STEPS --> <!-- BOTTOM COMPLICATION -->
<Group <Group
name="steps" name="bottom_complication_background"
x="145" x="145"
y="347" y="347"
width="160" width="160"
@@ -575,9 +670,7 @@
height="59" height="59"
cornerRadiusX="30" cornerRadiusX="30"
cornerRadiusY="30"> cornerRadiusY="30">
<Fill color="#40000000"/> <Fill color="#40000000"/>
</RoundRectangle> </RoundRectangle>
<RoundRectangle <RoundRectangle
@@ -587,9 +680,7 @@
height="58" height="58"
cornerRadiusX="29" cornerRadiusX="29"
cornerRadiusY="29"> cornerRadiusY="29">
<Fill color="#0000004D"/> <Fill color="#0000004D"/>
</RoundRectangle> </RoundRectangle>
<RoundRectangle <RoundRectangle
@@ -599,82 +690,71 @@
height="56" height="56"
cornerRadiusX="28" cornerRadiusX="28"
cornerRadiusY="28"> cornerRadiusY="28">
<Stroke <Stroke
color="#35FFFFFF" color="#35FFFFFF"
thickness="1"/> thickness="1"/>
</RoundRectangle> </RoundRectangle>
</PartDraw> </PartDraw>
</Group>
<PartDraw <ComplicationSlot
x="24" name="bottom_complication"
slotId="3"
x="145"
y="347"
width="160"
height="66"
supportedTypes="SHORT_TEXT LONG_TEXT SMALL_IMAGE MONOCHROMATIC_IMAGE EMPTY">
<Variant
mode="AMBIENT"
target="alpha"
value="0"/>
<BoundingRoundBox
x="2"
y="0"
width="156"
height="58"
cornerRadius="29"
outlinePadding="2"/>
<DefaultProviderPolicy
defaultSystemProvider="STEP_COUNT"
defaultSystemProviderType="SHORT_TEXT"/>
<Complication type="SHORT_TEXT">
<Condition>
<Expressions>
<Expression name="bottomShortTextHasIcon"><![CDATA[
[COMPLICATION.MONOCHROMATIC_IMAGE] != null
]]></Expression>
</Expressions>
<Compare expression="bottomShortTextHasIcon">
<PartImage
x="18"
y="14" y="14"
width="38" width="30"
height="31"> height="30"
tintColor="#FFFFFFFF">
<Ellipse <Image resource="[COMPLICATION.MONOCHROMATIC_IMAGE]"/>
x="6" </PartImage>
y="8"
width="9"
height="15">
<Fill color="#FFFFFFFF"/>
</Ellipse>
<Ellipse
x="5"
y="3"
width="5"
height="5">
<Fill color="#FFFFFFFF"/>
</Ellipse>
<Ellipse
x="11"
y="1"
width="5"
height="5">
<Fill color="#FFFFFFFF"/>
</Ellipse>
<Ellipse
x="24"
y="11"
width="9"
height="15">
<Fill color="#FFFFFFFF"/>
</Ellipse>
<Ellipse
x="24"
y="6"
width="5"
height="5">
<Fill color="#FFFFFFFF"/>
</Ellipse>
<Ellipse
x="30"
y="4"
width="5"
height="5">
<Fill color="#FFFFFFFF"/>
</Ellipse>
</PartDraw>
<PartText <PartText
x="65" x="53"
y="5" y="6"
width="78" width="88"
height="48"> height="46">
<Text <Text
align="CENTER" align="CENTER"
verticalAlign="CENTER" verticalAlign="CENTER"
ellipsis="TRUE"
isAutoSize="TRUE"> isAutoSize="TRUE">
<Font <Font
@@ -682,19 +762,107 @@
size="25" size="25"
weight="BOLD" weight="BOLD"
color="#FFFFFFFF"> color="#FFFFFFFF">
<Template><![CDATA[%s]]>
<Template><![CDATA[%d]]> <Parameter expression="[COMPLICATION.TEXT]"/>
<Parameter expression="[STEP_COUNT]"/>
</Template> </Template>
</Font> </Font>
</Text> </Text>
</PartText> </PartText>
</Group> </Compare>
<Default>
<PartText
x="18"
y="6"
width="124"
height="46">
<Text
align="CENTER"
verticalAlign="CENTER"
ellipsis="TRUE"
isAutoSize="TRUE">
<Font
family="SYNC_TO_DEVICE"
size="25"
weight="BOLD"
color="#FFFFFFFF">
<Template><![CDATA[%s]]>
<Parameter expression="[COMPLICATION.TEXT]"/>
</Template>
</Font>
</Text>
</PartText>
</Default>
</Condition>
</Complication>
<Complication type="LONG_TEXT">
<PartText
x="18"
y="6"
width="124"
height="46">
<Text
align="CENTER"
verticalAlign="CENTER"
ellipsis="TRUE"
isAutoSize="TRUE">
<Font
family="SYNC_TO_DEVICE"
size="20"
weight="BOLD"
color="#FFFFFFFF">
<Template><![CDATA[%s]]>
<Parameter expression="[COMPLICATION.TEXT]"/>
</Template>
</Font>
</Text>
</PartText>
</Complication>
<Complication type="SMALL_IMAGE">
<PartImage
x="58"
y="7"
width="44"
height="44">
<Image resource="[COMPLICATION.SMALL_IMAGE]"/>
</PartImage>
</Complication>
<Complication type="MONOCHROMATIC_IMAGE">
<PartImage
x="63"
y="12"
width="34"
height="34"
tintColor="#FFFFFFFF">
<Image resource="[COMPLICATION.MONOCHROMATIC_IMAGE]"/>
</PartImage>
</Complication>
</ComplicationSlot>
<!-- AMBIENT --> <!-- AMBIENT -->