Line 23: |
Line 23: |
| | | |
| ===FIX # 4 === | | ===FIX # 4 === |
− | Tried to stop the first frame of the animation from being filled with colors , so that upon starting the animation we would get to see a raw grayscale svg icon of the activity for the first frame only and then it would be seamlessly continued with the pulsing icon animation.<br> | + | Tried to stop the first frame of the animation from being filled with colors , so that upon starting the animation we would get to see a raw grayscale svg icon of the activity for the first frame only and then it would be seamlessly continued with the pulsing icon animation. The patch could be found [http://patchwork.sugarlabs.org/patch/314/ here]. <br> |
− | '''Result :''' The idea was to reduce the rendering time of the first frame so as to speed up the appearance of the first frame of the animation and hence reduce the delay. This fix seems to work the best till date and has reduced the delay time by more than 50% as noted in the logs and reported by the community. | + | '''Result :''' The idea was to reduce the rendering time of the first frame so as to speed up the appearance of the first frame of the animation and hence reduce the delay. This fix seems to work as per expectations and has reduced the delay time by more than 50% as noted in the logs and reported by the community.We can see the below attached screenshots showing the visual effects, after the application of the patch on an XO-1.5 |
− | | + | <br> |
| + | [[File:Patch_v5_result_1.jpg|600px]]<br> |
| + | '''Screenshot at t =t0 '''<br> |
| + | [[File:Patch_v5_result_2.jpg|600px]]<br> |
| + | '''Screenshot at t =t1 '''<br> |
| + | [[File:Patch_v5_result_3.jpg|600px]]<br> |
| + | '''Screenshot at t =t2 '''<br> |
| + | [[File:Patch_v5_result_4.jpg|600px]]<br> |
| + | '''Screenshot at t =t3 ''' |
| + | <br> |
| + | ''t3 > t2 > t1 > t0'' |
| + | <br>. |
| + | ===FIX # 5 === |
| + | Here the idea was suggested and implemented by Martin dengler <martin@martindengler.com>. We can find his patch [http://www.martindengler.com/tmp/sl.o-2080/pulsingicon.py-set-new-colors-in-one-go-to-avoid-multiple-calls-to-SVG-rendering.patch here]. <br> |
| + | Here the idea was to replace the calls to set_stroke_color() and set_fill_color() with set_xo_color(), which does both and then calls _emit_paint_needed_icon_area() which effectively halves the no. of render_cairo() calls hence reducing the workload for the pulsing icon operation by nearly 50%.<br> |
| + | '''Result :''' The applied patch reduces the delay by more then 60%, as confirmed by the community, but it's worth a note that the zoom in effect is still lost for most svg icons, only for the very simple icons effect is visible (Log icon is simple enough to show it, Distance icon is not quick enough).We can see the below attached screenshots showing the visual effects, after the application of the patch on an XO-1.5 |
| + | <br> |
| + | [[File:Patch_MD_result_1.jpg|600px]]<br> |
| + | '''Screenshot at t =t0 '''<br> |
| + | [[File:Patch_MD_result_2.jpg|600px]]<br> |
| + | '''Screenshot at t =t1 '''<br> |
| + | [[File:Patch_MD_result_3.jpg|600px]]<br> |
| + | '''Screenshot at t =t2 '''<br> |
| + | [[File:Patch_MD_result_4.jpg|600px]]<br> |
| + | '''Screenshot at t =t3 ''' |
| + | <br> |
| + | ''t3 > t2 > t1 > t0'' |
| + | <br>. |
| | | |
| ===Contact=== | | ===Contact=== |