Loading src/com/android/gallery3d/filtershow/FilterShowActivity.java +43 −1 Original line number Diff line number Diff line Loading @@ -117,6 +117,7 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL private WeakReference<ProgressDialog> mSavingProgressDialog; private LoadBitmapTask mLoadBitmapTask; private boolean mLoading = true; private CategoryAdapter mCategoryLooksAdapter = null; private CategoryAdapter mCategoryBordersAdapter = null; Loading @@ -132,6 +133,7 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL if (onlyUsePortrait) { setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); } MasterImage.setMaster(mMasterImage); clearGalleryBitmapPool(); Loading Loading @@ -320,6 +322,7 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL } private void startLoadBitmap(Uri uri) { mLoading = true; final View loading = findViewById(R.id.loading); final View imageShow = findViewById(R.id.imageShow); imageShow.setVisibility(View.INVISIBLE); Loading Loading @@ -457,7 +460,7 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL @Override protected void onPostExecute(Boolean result) { MasterImage.setMaster(mMasterImage); if (isCancelled()) { return; } Loading Loading @@ -495,6 +498,7 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL if (mAction == TINY_PLANET_ACTION) { showRepresentation(mCategoryFiltersAdapter.getTinyPlanet()); } mLoading = false; super.onPostExecute(result); } Loading Loading @@ -634,6 +638,7 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL @Override public void onPause() { super.onPause(); rsPause(); if (mShareActionProvider != null) { mShareActionProvider.setOnShareTargetSelectedListener(null); } Loading @@ -642,11 +647,48 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL @Override public void onResume() { super.onResume(); rsResume(); if (mShareActionProvider != null) { mShareActionProvider.setOnShareTargetSelectedListener(this); } } private void rsResume() { ImageFilter.setActivityForMemoryToasts(this); MasterImage.setMaster(mMasterImage); if (CachingPipeline.getRenderScriptContext() == null) { CachingPipeline.createRenderscriptContext(this); } FiltersManager.setResources(getResources()); if (!mLoading) { Bitmap largeBitmap = mImageLoader.getOriginalBitmapLarge(); FilteringPipeline pipeline = FilteringPipeline.getPipeline(); pipeline.setOriginal(largeBitmap); float previewScale = (float) largeBitmap.getWidth() / (float) mImageLoader.getOriginalBounds().width(); pipeline.setPreviewScaleFactor(previewScale); Bitmap highresBitmap = mImageLoader.getOriginalBitmapHighres(); if (highresBitmap != null) { float highResPreviewScale = (float) highresBitmap.getWidth() / (float) mImageLoader.getOriginalBounds().width(); pipeline.setHighResPreviewScaleFactor(highResPreviewScale); } pipeline.turnOnPipeline(true); MasterImage.getImage().setOriginalGeometry(largeBitmap); } } private void rsPause() { FilteringPipeline.getPipeline().turnOnPipeline(false); FilteringPipeline.reset(); ImageFilter.resetStatics(); FiltersManager.getPreviewManager().freeRSFilterScripts(); FiltersManager.getManager().freeRSFilterScripts(); FiltersManager.getHighresManager().freeRSFilterScripts(); FiltersManager.reset(); CachingPipeline.destroyRenderScriptContext(); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { Loading src/com/android/gallery3d/filtershow/cache/CachingPipeline.java +3 −1 Original line number Diff line number Diff line Loading @@ -91,7 +91,9 @@ public class CachingPipeline { } public static synchronized void destroyRenderScriptContext() { if (sRS != null) { sRS.destroy(); } sRS = null; sResources = null; } Loading src/com/android/gallery3d/filtershow/imageshow/MasterImage.java +5 −0 Original line number Diff line number Diff line Loading @@ -91,6 +91,11 @@ public class MasterImage implements RenderingRequestCaller { private MasterImage() { } // TODO: remove singleton public static void setMaster(MasterImage master) { sMasterImage = master; } public static MasterImage getImage() { if (sMasterImage == null) { sMasterImage = new MasterImage(); Loading Loading
src/com/android/gallery3d/filtershow/FilterShowActivity.java +43 −1 Original line number Diff line number Diff line Loading @@ -117,6 +117,7 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL private WeakReference<ProgressDialog> mSavingProgressDialog; private LoadBitmapTask mLoadBitmapTask; private boolean mLoading = true; private CategoryAdapter mCategoryLooksAdapter = null; private CategoryAdapter mCategoryBordersAdapter = null; Loading @@ -132,6 +133,7 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL if (onlyUsePortrait) { setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); } MasterImage.setMaster(mMasterImage); clearGalleryBitmapPool(); Loading Loading @@ -320,6 +322,7 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL } private void startLoadBitmap(Uri uri) { mLoading = true; final View loading = findViewById(R.id.loading); final View imageShow = findViewById(R.id.imageShow); imageShow.setVisibility(View.INVISIBLE); Loading Loading @@ -457,7 +460,7 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL @Override protected void onPostExecute(Boolean result) { MasterImage.setMaster(mMasterImage); if (isCancelled()) { return; } Loading Loading @@ -495,6 +498,7 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL if (mAction == TINY_PLANET_ACTION) { showRepresentation(mCategoryFiltersAdapter.getTinyPlanet()); } mLoading = false; super.onPostExecute(result); } Loading Loading @@ -634,6 +638,7 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL @Override public void onPause() { super.onPause(); rsPause(); if (mShareActionProvider != null) { mShareActionProvider.setOnShareTargetSelectedListener(null); } Loading @@ -642,11 +647,48 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL @Override public void onResume() { super.onResume(); rsResume(); if (mShareActionProvider != null) { mShareActionProvider.setOnShareTargetSelectedListener(this); } } private void rsResume() { ImageFilter.setActivityForMemoryToasts(this); MasterImage.setMaster(mMasterImage); if (CachingPipeline.getRenderScriptContext() == null) { CachingPipeline.createRenderscriptContext(this); } FiltersManager.setResources(getResources()); if (!mLoading) { Bitmap largeBitmap = mImageLoader.getOriginalBitmapLarge(); FilteringPipeline pipeline = FilteringPipeline.getPipeline(); pipeline.setOriginal(largeBitmap); float previewScale = (float) largeBitmap.getWidth() / (float) mImageLoader.getOriginalBounds().width(); pipeline.setPreviewScaleFactor(previewScale); Bitmap highresBitmap = mImageLoader.getOriginalBitmapHighres(); if (highresBitmap != null) { float highResPreviewScale = (float) highresBitmap.getWidth() / (float) mImageLoader.getOriginalBounds().width(); pipeline.setHighResPreviewScaleFactor(highResPreviewScale); } pipeline.turnOnPipeline(true); MasterImage.getImage().setOriginalGeometry(largeBitmap); } } private void rsPause() { FilteringPipeline.getPipeline().turnOnPipeline(false); FilteringPipeline.reset(); ImageFilter.resetStatics(); FiltersManager.getPreviewManager().freeRSFilterScripts(); FiltersManager.getManager().freeRSFilterScripts(); FiltersManager.getHighresManager().freeRSFilterScripts(); FiltersManager.reset(); CachingPipeline.destroyRenderScriptContext(); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { Loading
src/com/android/gallery3d/filtershow/cache/CachingPipeline.java +3 −1 Original line number Diff line number Diff line Loading @@ -91,7 +91,9 @@ public class CachingPipeline { } public static synchronized void destroyRenderScriptContext() { if (sRS != null) { sRS.destroy(); } sRS = null; sResources = null; } Loading
src/com/android/gallery3d/filtershow/imageshow/MasterImage.java +5 −0 Original line number Diff line number Diff line Loading @@ -91,6 +91,11 @@ public class MasterImage implements RenderingRequestCaller { private MasterImage() { } // TODO: remove singleton public static void setMaster(MasterImage master) { sMasterImage = master; } public static MasterImage getImage() { if (sMasterImage == null) { sMasterImage = new MasterImage(); Loading