Loading packages/SystemUI/src/com/android/systemui/screenshot/ImageExporter.java +10 −19 Original line number Diff line number Diff line Loading @@ -111,30 +111,21 @@ class ImageExporter { } /** * Stores the given Bitmap to a temp file. * Writes the given Bitmap to outputFile. */ ListenableFuture<File> exportAsTempFile(Executor executor, Bitmap bitmap) { ListenableFuture<File> exportToRawFile(Executor executor, Bitmap bitmap, final File outputFile) { return CallbackToFutureAdapter.getFuture( (completer) -> { executor.execute(() -> { File cachePath; try { cachePath = File.createTempFile("long_screenshot_cache_", ".tmp"); try (FileOutputStream stream = new FileOutputStream(cachePath)) { try (FileOutputStream stream = new FileOutputStream(outputFile)) { bitmap.compress(mCompressFormat, mQuality, stream); completer.set(outputFile); } catch (IOException e) { if (cachePath.exists()) { if (outputFile.exists()) { //noinspection ResultOfMethodCallIgnored cachePath.delete(); cachePath = null; } completer.setException(e); outputFile.delete(); } if (cachePath != null) { completer.set(cachePath); } } catch (IOException e) { // Failed to create a new file completer.setException(e); } }); Loading packages/SystemUI/src/com/android/systemui/screenshot/LongScreenshotActivity.java +2 −2 Original line number Diff line number Diff line Loading @@ -228,8 +228,8 @@ public class LongScreenshotActivity extends Activity { }); // Immediately export to temp image file for saved state mCacheSaveFuture = mImageExporter.exportAsTempFile(mBackgroundExecutor, mLongScreenshot.toBitmap()); mCacheSaveFuture = mImageExporter.exportToRawFile(mBackgroundExecutor, mLongScreenshot.toBitmap(), new File(getCacheDir(), "long_screenshot_cache.png")); mCacheSaveFuture.addListener(() -> { try { // Get the temp file path to persist, used in onSavedInstanceState Loading Loading
packages/SystemUI/src/com/android/systemui/screenshot/ImageExporter.java +10 −19 Original line number Diff line number Diff line Loading @@ -111,30 +111,21 @@ class ImageExporter { } /** * Stores the given Bitmap to a temp file. * Writes the given Bitmap to outputFile. */ ListenableFuture<File> exportAsTempFile(Executor executor, Bitmap bitmap) { ListenableFuture<File> exportToRawFile(Executor executor, Bitmap bitmap, final File outputFile) { return CallbackToFutureAdapter.getFuture( (completer) -> { executor.execute(() -> { File cachePath; try { cachePath = File.createTempFile("long_screenshot_cache_", ".tmp"); try (FileOutputStream stream = new FileOutputStream(cachePath)) { try (FileOutputStream stream = new FileOutputStream(outputFile)) { bitmap.compress(mCompressFormat, mQuality, stream); completer.set(outputFile); } catch (IOException e) { if (cachePath.exists()) { if (outputFile.exists()) { //noinspection ResultOfMethodCallIgnored cachePath.delete(); cachePath = null; } completer.setException(e); outputFile.delete(); } if (cachePath != null) { completer.set(cachePath); } } catch (IOException e) { // Failed to create a new file completer.setException(e); } }); Loading
packages/SystemUI/src/com/android/systemui/screenshot/LongScreenshotActivity.java +2 −2 Original line number Diff line number Diff line Loading @@ -228,8 +228,8 @@ public class LongScreenshotActivity extends Activity { }); // Immediately export to temp image file for saved state mCacheSaveFuture = mImageExporter.exportAsTempFile(mBackgroundExecutor, mLongScreenshot.toBitmap()); mCacheSaveFuture = mImageExporter.exportToRawFile(mBackgroundExecutor, mLongScreenshot.toBitmap(), new File(getCacheDir(), "long_screenshot_cache.png")); mCacheSaveFuture.addListener(() -> { try { // Get the temp file path to persist, used in onSavedInstanceState Loading