and use it to send and check for heartbeats over any transport.
Caller must supply a reset proc which is called when heartbeat hasn't
been received in too long. No changes required to comms protocol, but
that means the heartbeat interval is fixed at compile time: can't be
negotiated, and the two ends had better agree. Currently tested with
linux host and PalmOS guest, where only the first heartbeat failure is
recovered from. So there's some debugging to be done still.
it's needed, removing those passed into _init and _send. When client
is unable to connect to host, raise alert to user and give choice to
continue trying. Clear 'suspendBT' flag when user manually resends or
opens different game. Currently this happens only on guest's failure
to find registered SDP; should also extend to remote device not
running at all and to host failure to send to guest.
Otherwise use FrmSetFocus. This works around a bug where key event that
leaks through from parent dialog dismisses dialog (whereupon another comes
up, and eventually cursor is left flashing on parent.)
that a new game's begun without dropping the connection. On Palm,
remove connection-drop on new game. With this change starting a new
game takes imperciptible time, down from 30 seconds.
must use different handler than for nav keys; fix treo bug where forms
brought up during key handling get spurious key events by adding
keySafeCustomAlert that consumes up to the first keyDown before
calling FrmCustomAlert.
around an (OS?) bug where, apparently, the confirm-turn-on-bt dialog
eats pending events, including frmLoadEvent, so that the form never
loads or is very broken if that dialog is allowed to come up too
early.
keyDown event to a form put up while processing a keyUp event in the
main form: set a flag while handling key events, and drop the first
keyDown in child forms when it's set.
has Treo but doesn't have OS support for moving focus among objects.
And since zodiac doesn't support the std Palm hires APIs don't try to
use them. Up version string to b4.
after focus event, and on handling it inval rect of focus ring on
button. This fixes drawing glitch where palm remembers pixels behind
focus ring but they're not right.
they're focussed so that they can draw that during rather than after
everything else. On palm, use this to draw focus using the system
selected color rather than with the blue nav rect. Since a new param
was too much, add new enum type CellFlags and pass as bitvector to
draw APIs.
getting a new connection, making a callback that calls resend_all().
This means a lot of duplication, but duplication is free with
bluetooth. The underlying problem is that packets are reported as
sent not when acked by the other side, but when passed to a lower
level that may not be connected at all.