<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/shared-module/displayio, branch 6.2.x</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=6.2.x</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=6.2.x'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2021-03-25T16:21:39+00:00</updated>
<entry>
<title>move to displayio_area_union and away from _expand</title>
<updated>2021-03-25T16:21:39+00:00</updated>
<author>
<name>Kevin Matocha</name>
<email>kmatocha@icloud.com</email>
</author>
<published>2021-03-25T16:21:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=9485805b6aa6178f2b4abe0eaefc76c4ebfc4b6d'/>
<id>urn:sha1:9485805b6aa6178f2b4abe0eaefc76c4ebfc4b6d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>update logic for transform_xy</title>
<updated>2021-03-22T21:38:56+00:00</updated>
<author>
<name>Kevin Matocha</name>
<email>kmatocha@icloud.com</email>
</author>
<published>2021-03-22T21:38:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=24831a79d3564f88f06ef49093f042919454d06b'/>
<id>urn:sha1:24831a79d3564f88f06ef49093f042919454d06b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge pull request #4432 from jepler/bitmap-dirty-improvements</title>
<updated>2021-03-20T18:09:59+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jeff@adafruit.com</email>
</author>
<published>2021-03-20T18:09:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=e084a92671b01220c795d114bee9d5058dbfa680'/>
<id>urn:sha1:e084a92671b01220c795d114bee9d5058dbfa680</id>
<content type='text'>
Bitmap dirty improvements</content>
</entry>
<entry>
<title>switch to &gt; in displayio_area_canon</title>
<updated>2021-03-20T01:30:37+00:00</updated>
<author>
<name>Kevin Matocha</name>
<email>kmatocha@icloud.com</email>
</author>
<published>2021-03-20T01:30:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=40829d4cc85394513ca631cff23254344e29786c'/>
<id>urn:sha1:40829d4cc85394513ca631cff23254344e29786c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix PWMOut non-error handling and never reset</title>
<updated>2021-03-19T13:57:21+00:00</updated>
<author>
<name>Dan Halbert</name>
<email>halbert@halwitz.org</email>
</author>
<published>2021-03-19T13:57:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=1512ca520b3e78ebc5cf6d9e031ac24c9206f1bb'/>
<id>urn:sha1:1512ca520b3e78ebc5cf6d9e031ac24c9206f1bb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge pull request #4429 from jepler/displayio-bitmap-memoryview</title>
<updated>2021-03-18T23:38:25+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jeff@adafruit.com</email>
</author>
<published>2021-03-18T23:38:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=623ece2c73b1a7886695fc09bde82f79ae47b3d7'/>
<id>urn:sha1:623ece2c73b1a7886695fc09bde82f79ae47b3d7</id>
<content type='text'>
displayio.Bitmap: Make memoryview()able</content>
</entry>
<entry>
<title>displayio: Move bitmap read-only checking to displayio_bitmap_set_dirty_area</title>
<updated>2021-03-18T14:20:56+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jepler@gmail.com</email>
</author>
<published>2021-03-18T14:20:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=f5fd42c39340483bc781746fd0acd304abd888ae'/>
<id>urn:sha1:f5fd42c39340483bc781746fd0acd304abd888ae</id>
<content type='text'>
This is a modest code savings, but more importantly it reduces
boilerplate in bitmap-modifying routines.

Callers need only ensure they call displayio_bitmap_set_dirty_area in
advance of the bitmap modifications they perform.

(note that this assumes that no bitmap operation can enter background
tasks. If an operation COULD enter background tasks, it MUST re-dirty
the area it touches when it exits, simply by a fresh call to
set_dirty_area with the same area as before)
</content>
</entry>
<entry>
<title>displayio_bitmap_set_dirty_area: rewrite in terms of displayio_area</title>
<updated>2021-03-18T14:20:56+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jepler@gmail.com</email>
</author>
<published>2021-03-18T14:09:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=36d608aa67229653c0be12fab407533d0d8b7d32'/>
<id>urn:sha1:36d608aa67229653c0be12fab407533d0d8b7d32</id>
<content type='text'>
.. simplifying code in the process.  For instance, now fill_region
uses area routines to order and constrain its coordinates.

Happily, this change also frees a modest amount of code space.
</content>
</entry>
<entry>
<title>displayio: area: add displayio_area_canon</title>
<updated>2021-03-18T14:06:00+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jepler@gmail.com</email>
</author>
<published>2021-03-18T14:06:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=3b506f0fa59872916b617083a3dad9cadd07c428'/>
<id>urn:sha1:3b506f0fa59872916b617083a3dad9cadd07c428</id>
<content type='text'>
This routine will be used to simplify code that deals with ranges
of bitmap coordinates.
</content>
</entry>
<entry>
<title>displayio: area: add displayo_area_copy_coords, displayio_area_empty</title>
<updated>2021-03-18T14:05:07+00:00</updated>
<author>
<name>Jeff Epler</name>
<email>jepler@gmail.com</email>
</author>
<published>2021-03-18T14:04:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=f40c0c13adacf39bc9a21afd2d9ebbf29135e0f0'/>
<id>urn:sha1:f40c0c13adacf39bc9a21afd2d9ebbf29135e0f0</id>
<content type='text'>
.. and simplify the implmentation of displayio_area_union

This _slightly_ changes the behavior of displayio_area_union:

Formerly, if one of the areas was empty, its coordinates were still
used in the min/max calculations.

Now, if one of the areas is empty, the result gets the other area's coords

In particular, taking the union of the empty area with coords (0,0,0,0)
with the non-empty area (x1,y1,x2,y2) would give the area (0,0,x2,y2)
before, and (x1,y1,x2,y2) after the change.
</content>
</entry>
</feed>
