<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mjb/altos/altosuilib, branch telelaunchtwo</title>
<subtitle>AltOS - the operating system for Altus Metrum products
</subtitle>
<id>https://git.ethernal.org/mjb/altos/atom?h=telelaunchtwo</id>
<link rel='self' href='https://git.ethernal.org/mjb/altos/atom?h=telelaunchtwo'/>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/'/>
<updated>2015-10-13T20:54:28+00:00</updated>
<entry>
<title>altosuilib: In display thread, set new state synchronously</title>
<updated>2015-10-13T20:54:28+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2015-09-21T05:00:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=a81d028dc62a0a624051fc3c9debb9687fda931e'/>
<id>urn:sha1:a81d028dc62a0a624051fc3c9debb9687fda931e</id>
<content type='text'>
When replaying telemetry, received_time gets set by both the
telemetry reader (when the file is initially read) and by the replay
reader (as the telemetry is processed). Because these two events are
separated by the time it takes to play the file, the second time is
the one we want for figuring out how long since the last telemetry
packet. However, if we set the global state when pulling the state out
of the telemetry reader, and then the replay reader pauses for a long
time, then the voice output thread sees the intermediate time value
and thinks that it has been a long time since the last packet was
received and reports that the rocket may have crashed.

Fix this by just holding the read state until it has been passed by
the replay reader and had the received_time set to current time.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altoslib: Hide 'state' member and use accessor function</title>
<updated>2015-10-13T20:54:28+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2015-09-13T02:20:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=0afa07d3c1dcb5e301fcb8b4edfecdd961662478'/>
<id>urn:sha1:0afa07d3c1dcb5e301fcb8b4edfecdd961662478</id>
<content type='text'>
Someone was smashing the state to 'landed' when no packets had been
received for a while. Found that by making it impossible for anyone
outside of AltosState to change the value.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>Bump Java library versions</title>
<updated>2015-07-16T01:31:05+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2015-07-16T01:31:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=d6445b3739ac2c5dd040efdb97317a6b2a48044a'/>
<id>urn:sha1:d6445b3739ac2c5dd040efdb97317a6b2a48044a</id>
<content type='text'>
Avoid problems if you have an old version of the library installed

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altoslib: Preload maps based on distance rather than number of tiles</title>
<updated>2015-07-12T02:16:41+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2015-07-12T02:15:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=d015cfc1499a263549f52d46e9e5b934fcb94f53'/>
<id>urn:sha1:d015cfc1499a263549f52d46e9e5b934fcb94f53</id>
<content type='text'>
This lets you get the specific area requested at all zoom levels,
rather than having further detail only at lower resolution zooms.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altosuilib: Receiver battery voltage lives in listener_state</title>
<updated>2015-06-26T01:43:13+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2015-06-26T01:33:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=f76d5e4fc2ed1e0d79c096cc89793d671ecb78c3'/>
<id>urn:sha1:f76d5e4fc2ed1e0d79c096cc89793d671ecb78c3</id>
<content type='text'>
The code to detect whether to show or hide this entry was using
functions that weren't given the listener_state and hence returned
MISSING all of the time.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altosdroid: Select tracker by clicking on map</title>
<updated>2015-06-23T04:04:43+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2015-06-23T03:08:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=0f56903774d9e8bb033dfc0af6945e8ddc1d3065'/>
<id>urn:sha1:0f56903774d9e8bb033dfc0af6945e8ddc1d3065</id>
<content type='text'>
This lets you pick a  tracker from the map, rather than having to use
the menu.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altosuilib: Use AltosMap set_zoom_centre instead of in-line version</title>
<updated>2015-06-23T04:04:43+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2015-06-21T16:35:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=08e4e291d32bdb3ac3271a85190d277b1874d277'/>
<id>urn:sha1:08e4e291d32bdb3ac3271a85190d277b1874d277</id>
<content type='text'>
Shares the same function with altosdroid this way.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altosuilib: Allow for no transform in map mouse wheel function</title>
<updated>2015-06-23T04:04:43+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2015-06-20T18:54:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=4a33336b8f468c5b0f2e14c0ee0242c9a24a8b90'/>
<id>urn:sha1:4a33336b8f468c5b0f2e14c0ee0242c9a24a8b90</id>
<content type='text'>
Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altoslib/altosuilib: Fix equals methods, add hashCode</title>
<updated>2015-06-23T04:04:43+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2015-06-20T16:35:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=0cc03210d5d53d12604688f294b6ca39e3a025de'/>
<id>urn:sha1:0cc03210d5d53d12604688f294b6ca39e3a025de</id>
<content type='text'>
Whenever we use a class as a HashMap key, that class needs to override
the equals(Object) and hashCode() methods. Otherwise, the hash table
won't work right.

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
<entry>
<title>altosuilib: Create grid-bag helper functions in AltosUIFrame</title>
<updated>2015-06-17T07:13:03+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2015-06-17T06:43:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ethernal.org/mjb/altos/commit/?id=1098f7502a603a9cf80ad950f53a2c2abdf7ec93'/>
<id>urn:sha1:1098f7502a603a9cf80ad950f53a2c2abdf7ec93</id>
<content type='text'>
This eases the burden of creating suitable GridBagConstraints values

Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
</content>
</entry>
</feed>
