WIP: Add support for bicolor led in the simulator
I noticed that the bicolor led isn't supported in the simulator. Here is a quick mockup of how I would add support for it. I added an SVG filter to the #light rectangle in the SVG which lets us multiply the colours by a matrix in code. I then insert values so that the original green colour gets mixed into the combination of red and green requested by `watch_set_led_color` # Testing So far I've only tested this with the standard firmware build but it seems to work. # Possible issues I wasn't 100% sure what to do when red + green > 255, current behaviour is that it gets clamped to 255 in the simulator.
This commit is contained in:
@@ -51,6 +51,14 @@
|
||||
<stop offset="0.94" stop-color="#000d00" stop-opacity="0.05"/>
|
||||
<stop offset="1" stop-opacity="0"/>
|
||||
</radialGradient>
|
||||
<filter id="ledcolor">
|
||||
<feColorMatrix in="SourceGraphic" type="matrix"
|
||||
values=" 0 0 0 0 0
|
||||
0 1 0 0 0
|
||||
0 0 0 0 0
|
||||
0 0 0 1 0 "/>
|
||||
|
||||
</filter>
|
||||
</defs>
|
||||
<g id="Calque">
|
||||
<g id="Contours">
|
||||
@@ -71,7 +79,7 @@
|
||||
<rect x="293.5" y="520" width="683" height="334" rx="34.68" style="fill: #777b7a"/>
|
||||
</g>
|
||||
<g id="light" style="opacity: 0">
|
||||
<rect x="293.5" y="520" width="683" height="334" rx="34.68" style="fill: url(#Dégradé_sans_nom_3)"/>
|
||||
<rect x="293.5" y="520" width="683" height="334" rx="34.68" style="fill: url(#Dégradé_sans_nom_3)" filter="url(#ledcolor)"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="Textes">
|
||||
|
||||
Reference in New Issue
Block a user