aboutsummaryrefslogtreecommitdiffstats
path: root/src/org/cyanogenmod/wallpapers/photophase/PhotoPhaseRenderer.java
diff options
context:
space:
mode:
authorjruesga <jorge@ruesga.com>2013-07-03 01:10:47 +0200
committerjruesga <jorge@ruesga.com>2013-07-03 01:10:47 +0200
commitb56df92031af88fb0a577b2a2ae5d75b826a7347 (patch)
treebc91dd5d3d2038615a80b57214de2842343c886e /src/org/cyanogenmod/wallpapers/photophase/PhotoPhaseRenderer.java
parenta3e8697366fe49c8b11060dab01466d6390beb3c (diff)
downloadandroid_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.java33
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);