pointerA11yTimeout: Draw a clean circle if the pie is finished

If the circle is complete and the pie timeout finished, we don't need
the lines to the center point indicating the ends of the pie anymore.
We just draw a clean circle instead, which allows for a zoom-out and
fade animation of the circle when we're done.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/688
This commit is contained in:
Jonas Dreßler 2019-08-22 10:05:40 +02:00 committed by Olivier Fourdan
parent ea3f906f38
commit 20fc4b4490

View File

@ -50,9 +50,14 @@ var PieTimer = GObject.registerClass({
cr.setLineJoin(Cairo.LineJoin.ROUND); cr.setLineJoin(Cairo.LineJoin.ROUND);
cr.translate(width / 2, height / 2); cr.translate(width / 2, height / 2);
if (this._angle < 2 * Math.PI)
cr.moveTo(0, 0); cr.moveTo(0, 0);
cr.arc(0, 0, radius - borderWidth, startAngle, endAngle); cr.arc(0, 0, radius - borderWidth, startAngle, endAngle);
if (this._angle < 2 * Math.PI)
cr.lineTo(0, 0); cr.lineTo(0, 0);
cr.closePath(); cr.closePath();
cr.setLineWidth(0); cr.setLineWidth(0);