xwords/xwords4/android
Eric House de00a6c87a fix Nougat-only draw bug
Starting with the release of Nougat there have been cases where the
board would not correctly redraw. It's been most evident when using the
hit feature many times in a row, with something going wrong every fifth
time or so (but not that consistently.) It's as if modifications of the
bitmap backing BoardCanvas were being done asynchronously and not
necessarily all completed when I blit the canvas to the screen via
canvas.drawBitmap(). (As evidence of this I confirmed that a tap on a
tile in the tray after a bad draw would cause the screen to correct
itself even though the only additional rendering was to the tray. So by
the time that second drawBitmap() call happened the bitmap data was
correct: all draws that hadn't completed earlier had done so by now.)

The fix is to call Bitmap.createBitmap(bitmap) and to use the copy as
the source of the canvas.drawBitmap() blit operation. I suspect that
createBitmap() waits for any pending draws into its source to complete
before making the copy. Regardless, if this hasn't fixed the problem
it's made it so rare that I'm not seeing it, and since I'm only doing
the copy on Nougat there's little risk in the change. And I can't detect
any problems coming from the considerable additional memory being used
and immediately marked available for gc.
2016-11-13 13:20:00 -08:00
..
scripts don't default-uninstall from multiple devices 2016-08-25 08:23:51 -07:00
website tweak name and reflect new name on website 2012-08-30 19:21:05 -07:00
XWords4 fix Nougat-only draw bug 2016-11-13 13:20:00 -08:00
XWords4-dbg ignore new file 2016-08-22 19:13:49 -07:00
.gitignore ignore dirs for another branch (local only so far) 2014-09-08 07:06:45 -07:00
Application.mk initial checkin of jni source and build scripts for android port 2010-01-02 19:10:08 +00:00
INSTALL.txt update build/install instructions 2015-03-03 07:14:03 -08:00