diff -Nru kivy-3.0.0-dev~daily0+202404070947-5305/debian/changelog kivy-3.0.0-dev~daily0+202404082148-5307/debian/changelog --- kivy-3.0.0-dev~daily0+202404070947-5305/debian/changelog 2024-04-07 09:47:29.000000000 +0000 +++ kivy-3.0.0-dev~daily0+202404082148-5307/debian/changelog 2024-04-08 21:48:39.000000000 +0000 @@ -1,8 +1,8 @@ -kivy (3.0.0-dev~daily0+202404070947-5305-pkg338~ubuntu23.10.1) mantic; urgency=low +kivy (3.0.0-dev~daily0+202404082148-5307-pkg338~ubuntu23.10.1) mantic; urgency=low * Auto build. - -- Kivy developers Sun, 07 Apr 2024 09:47:29 +0000 + -- Kivy developers Mon, 08 Apr 2024 21:48:39 +0000 kivy (3.0.0-dev) UNRELEASED; urgency=medium diff -Nru kivy-3.0.0-dev~daily0+202404070947-5305/debian/git-build-recipe.manifest kivy-3.0.0-dev~daily0+202404082148-5307/debian/git-build-recipe.manifest --- kivy-3.0.0-dev~daily0+202404070947-5305/debian/git-build-recipe.manifest 2024-04-07 09:47:29.000000000 +0000 +++ kivy-3.0.0-dev~daily0+202404082148-5307/debian/git-build-recipe.manifest 2024-04-08 21:48:39.000000000 +0000 @@ -1,5 +1,5 @@ -# git-build-recipe format 0.4 deb-version {debversion}~daily0+202404070947-5305-pkg338 -lp:kivy git-commit:d28bcb8a0264b62c5d873c2c78f3ec537d5e8970 +# git-build-recipe format 0.4 deb-version {debversion}~daily0+202404082148-5307-pkg338 +lp:kivy git-commit:c0d4894384abb81cf4729984a1eaa4c437d266da nest-part packaging lp:~thopiekar/kivy/+git/kivy-sdk-packager linux/debian/daily debian git-commit:d48c7b2bc60099202525b6dfe8d14b74fde5c457 nest kivyppapatches lp:~misl6/kivy/+git/kivy-ppa-patches kivy-ppa-patches git-commit:329c7a8d581df1fb95fe277cbc7471240b5cc308 nest kivycython lp:~kivy-team/cython/+git/cython cython git-commit:0494f50e73b7607babab2cc64bbb12e8673ca8d5 diff -Nru kivy-3.0.0-dev~daily0+202404070947-5305/kivy/graphics/vertex_instructions.pyx kivy-3.0.0-dev~daily0+202404082148-5307/kivy/graphics/vertex_instructions.pyx --- kivy-3.0.0-dev~daily0+202404070947-5305/kivy/graphics/vertex_instructions.pyx 2024-04-07 09:46:27.000000000 +0000 +++ kivy-3.0.0-dev~daily0+202404082148-5307/kivy/graphics/vertex_instructions.pyx 2024-04-08 21:46:35.000000000 +0000 @@ -1156,7 +1156,6 @@ def __init__(self, *args, **kwargs): Rectangle.__init__(self, **kwargs) - self.batch.set_mode('triangle_fan') self._segments = kwargs.get('segments') or 0 self._angle_start = kwargs.get('angle_start') or 0.0 self._angle_end = kwargs.get('angle_end') or 360.0 @@ -1170,6 +1169,8 @@ cdef vertex_t *vertices = NULL cdef unsigned short *indices = NULL cdef int segments = self._segments + cdef int vertices_count + cdef bint use_first_vertex_as_last = False # reset points self._points = [] @@ -1191,11 +1192,22 @@ rx = 0.5 * self.w ry = 0.5 * self.h - vertices = malloc((segments + 2) * sizeof(vertex_t)) + if ( + abs(self._angle_start - self._angle_end) == 360 + or self._angle_start == self._angle_end + ): + use_first_vertex_as_last = True + + if use_first_vertex_as_last: + vertices_count = segments + 1 + else: + vertices_count = segments + 2 + + vertices = malloc(vertices_count * sizeof(vertex_t)) if vertices == NULL: raise MemoryError('vertices') - indices = malloc((segments + 2) * sizeof(unsigned short)) + indices = malloc((segments * 3) * sizeof(unsigned short)) if indices == NULL: free(vertices) raise MemoryError('indices') @@ -1216,11 +1228,11 @@ y = self.y + ry ttx = ((x - self.x) / self.w) * tw + tx tty = ((y - self.y) / self.h) * th + ty - vertices[0].x = (self.x + rx) - vertices[0].y = (self.y + ry) - vertices[0].s0 = ttx - vertices[0].t0 = tty - indices[0] = 0 + + vertices[vertices_count - 1].x = x + vertices[vertices_count - 1].y = y + vertices[vertices_count - 1].s0 = ttx + vertices[vertices_count - 1].t0 = tty # super fast ellipse drawing # credit goes to: http://slabode.exofire.net/circle_draw.shtml @@ -1235,7 +1247,7 @@ x = r * sin(angle_start) y = r * cos(angle_start) - for i in range(1, segments + 2): + for i in range(0, vertices_count - 1): ttx = (cx + x) * tw + tx tty = (cy + y) * th + ty real_x = self.x + (cx + x) * self.w @@ -1244,7 +1256,6 @@ vertices[i].y = real_y vertices[i].s0 = ttx vertices[i].t0 = tty - indices[i] = i fx = -y fy = x @@ -1255,7 +1266,16 @@ self._points.extend([real_x, real_y]) - self.batch.set_data(vertices, segments + 2, indices, segments + 2) + for i in range(0, segments * 3, 3): + indices[i] = vertices_count - 1 + indices[i + 1] = i // 3 + indices[i + 2] = i // 3 + 1 + + if use_first_vertex_as_last: + indices[(segments * 3) - 1] = 0 + self._points.extend([vertices[0].x, vertices[0].y]) + + self.batch.set_data(vertices, vertices_count, indices, segments * 3) free(vertices) free(indices) diff -Nru kivy-3.0.0-dev~daily0+202404070947-5305/kivy/uix/label.py kivy-3.0.0-dev~daily0+202404082148-5307/kivy/uix/label.py --- kivy-3.0.0-dev~daily0+202404070947-5305/kivy/uix/label.py 2024-04-07 09:46:27.000000000 +0000 +++ kivy-3.0.0-dev~daily0+202404082148-5307/kivy/uix/label.py 2024-04-08 21:46:35.000000000 +0000 @@ -379,6 +379,10 @@ self._label.options['outline_color'] = ( self.disabled_outline_color if value else self.outline_color) + elif self.disabled and name in ('color', 'outline_color'): + # When disabled, color or outline_color changes should not get + # assigned or trigger updates. + return # NOTE: Compatibility code due to deprecated properties # Must be removed along with padding_x and padding_y