diff options
author | jruesga <jorge@ruesga.com> | 2013-07-03 01:10:47 +0200 |
---|---|---|
committer | jruesga <jorge@ruesga.com> | 2013-07-03 01:10:47 +0200 |
commit | b56df92031af88fb0a577b2a2ae5d75b826a7347 (patch) | |
tree | bc91dd5d3d2038615a80b57214de2842343c886e /src/org/cyanogenmod/wallpapers/photophase/PhotoPhaseRenderer.java | |
parent | a3e8697366fe49c8b11060dab01466d6390beb3c (diff) | |
download | android_packages_wallpapers_PhotoPhase-b56df92031af88fb0a577b2a2ae5d75b826a7347.tar.gz android_packages_wallpapers_PhotoPhase-b56df92031af88fb0a577b2a2ae5d75b826a7347.tar.bz2 android_packages_wallpapers_PhotoPhase-b56df92031af88fb0a577b2a2ae5d75b826a7347.zip |
Force redraw and empty texture buffer. Clear images buffer on reload
Initial layout disposition
Signed-off-by: jruesga <jorge@ruesga.com>
Diffstat (limited to 'src/org/cyanogenmod/wallpapers/photophase/PhotoPhaseRenderer.java')
-rw-r--r-- | src/org/cyanogenmod/wallpapers/photophase/PhotoPhaseRenderer.java | 33 |
1 files changed, 20 insertions, 13 deletions
diff --git a/src/org/cyanogenmod/wallpapers/photophase/PhotoPhaseRenderer.java b/src/org/cyanogenmod/wallpapers/photophase/PhotoPhaseRenderer.java index dff9887..ccb5c2b 100644 --- a/src/org/cyanogenmod/wallpapers/photophase/PhotoPhaseRenderer.java +++ b/src/org/cyanogenmod/wallpapers/photophase/PhotoPhaseRenderer.java @@ -83,6 +83,22 @@ public class PhotoPhaseRenderer implements GLSurfaceView.Renderer { boolean emptyTextureQueue = intent.getBooleanExtra(PreferencesProvider.EXTRA_FLAG_EMPTY_TEXTURE_QUEUE, false); boolean mediaReload = intent.getBooleanExtra(PreferencesProvider.EXTRA_FLAG_MEDIA_RELOAD, false); boolean mediaIntervalChanged = intent.getBooleanExtra(PreferencesProvider.EXTRA_FLAG_MEDIA_INTERVAL_CHANGED, false); + if (emptyTextureQueue) { + if (mTextureManager != null) { + mTextureManager.emptyTextureQueue(true); + } + } + if (mediaReload) { + synchronized (mMediaSync) { + if (mTextureManager != null) { + mTextureManager.reloadMedia(); + scheduleOrCancelMediaScan(); + } + } + } + if (mediaIntervalChanged) { + scheduleOrCancelMediaScan(); + } if (recreateWorld) { // Recreate the wallpaper world try { @@ -94,18 +110,6 @@ public class PhotoPhaseRenderer implements GLSurfaceView.Renderer { if (redraw) { mDispatcher.requestRender(); } - if (emptyTextureQueue) { - mTextureManager.emptyTextureQueue(true); - } - if (mediaReload) { - synchronized (mMediaSync) { - mTextureManager.reloadMedia(); - scheduleOrCancelMediaScan(); - } - } - if (mediaIntervalChanged) { - scheduleOrCancelMediaScan(); - } } }; @@ -320,10 +324,13 @@ public class PhotoPhaseRenderer implements GLSurfaceView.Renderer { // the best fixed size will be set. The disposition size is simple for a better // performance of the internal arrays final Configuration conf = mContext.getResources().getConfiguration(); + int orientation = mContext.getResources().getConfiguration().orientation; int w = (int) AndroidHelper.convertDpToPixel(mContext, conf.screenWidthDp); int h = (int) AndroidHelper.convertDpToPixel(mContext, conf.screenWidthDp); Rect dimensions = new Rect(0, 0, w / 2, h / 2); - int cc = PreferencesProvider.Preferences.Layout.getDisposition().size(); + int cc = (orientation == Configuration.ORIENTATION_PORTRAIT) + ? PreferencesProvider.Preferences.Layout.getPortraitDisposition().size() + : PreferencesProvider.Preferences.Layout.getLandscapeDisposition().size(); recycle(); mTextureManager = new TextureManager(mContext, mDispatcher, cc, dimensions); |