Deallocate gesture trail bitmap when unneeded
This frees up 1.7MB on Nexus 4 (occam), and 900KB on occam_svelte while LatinIME goes to background. The keyboard bring-up speed feels acceptable on both devices. bug: 8967766 Change-Id: I5bc980c4dc41bc304be3c190934c1f7c55c9d244main
parent
2d7e927354
commit
c8814e20b7
|
@ -1370,4 +1370,8 @@ public final class MainKeyboardView extends KeyboardView implements PointerTrack
|
||||||
drawIcon(canvas, mSpaceIcon, x, y, iconWidth, iconHeight);
|
drawIcon(canvas, mSpaceIcon, x, y, iconWidth, iconHeight);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void deallocateMemory() {
|
||||||
|
mGestureTrailsPreview.deallocateMemory();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -104,7 +104,12 @@ public final class GestureTrailsPreview extends AbstractDrawingPreview {
|
||||||
freeOffscreenBuffer();
|
freeOffscreenBuffer();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void deallocateMemory() {
|
||||||
|
freeOffscreenBuffer();
|
||||||
|
}
|
||||||
|
|
||||||
private void freeOffscreenBuffer() {
|
private void freeOffscreenBuffer() {
|
||||||
|
mOffscreenCanvas.setBitmap(null);
|
||||||
if (mOffscreenBuffer != null) {
|
if (mOffscreenBuffer != null) {
|
||||||
mOffscreenBuffer.recycle();
|
mOffscreenBuffer.recycle();
|
||||||
mOffscreenBuffer = null;
|
mOffscreenBuffer = null;
|
||||||
|
|
|
@ -894,6 +894,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
|
||||||
final MainKeyboardView mainKeyboardView = mKeyboardSwitcher.getMainKeyboardView();
|
final MainKeyboardView mainKeyboardView = mKeyboardSwitcher.getMainKeyboardView();
|
||||||
if (mainKeyboardView != null) {
|
if (mainKeyboardView != null) {
|
||||||
mainKeyboardView.cancelAllOngoingEvents();
|
mainKeyboardView.cancelAllOngoingEvents();
|
||||||
|
mainKeyboardView.deallocateMemory();
|
||||||
}
|
}
|
||||||
// Remove pending messages related to update suggestions
|
// Remove pending messages related to update suggestions
|
||||||
mHandler.cancelUpdateSuggestionStrip();
|
mHandler.cancelUpdateSuggestionStrip();
|
||||||
|
|
Loading…
Reference in New Issue