Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e6f7fe76 authored by John Hoford's avatar John Hoford Committed by Android Git Automerger
Browse files

am e9c55b28: Add the infrastructure to support Tiny Planet

* commit 'e9c55b28':
  Add the infrastructure to support Tiny Planet
parents 0def633f e9c55b28
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -263,7 +263,7 @@ public class FilterShowActivity extends Activity implements OnItemClickListener,
            int pos = listColors.indexOfChild(v);
            listColors.removeView(v);

            filters[i].setParameter(100);
            filters[i].setParameter(filters[i].getMaxParameter());
            if(v instanceof ImageButtonTitle)
                filters[i].setName(((ImageButtonTitle) v).getText());
            fView.setImageFilter(filters[i]);
@@ -546,6 +546,7 @@ public class FilterShowActivity extends Activity implements OnItemClickListener,
        };

        ImagePreset preset = new ImagePreset(); // empty
        preset.setImageLoader(mImageLoader);
        ImageSmallFilter filter = new ImageSmallFilter(this);

        filter.setSelected(true);
+10 −0
Original line number Diff line number Diff line
@@ -38,6 +38,7 @@ import com.android.gallery3d.filtershow.HistoryAdapter;
import com.android.gallery3d.filtershow.imageshow.ImageShow;
import com.android.gallery3d.filtershow.presets.ImagePreset;
import com.android.gallery3d.filtershow.tools.SaveCopyTask;
import com.android.gallery3d.util.XmpUtilHelper;

import java.io.Closeable;
import java.io.File;
@@ -382,4 +383,13 @@ public class ImageLoader {
        cache.prepare(preset);
        cache.addObserver(caller);
    }

    public Object getXmpObject() {
        try {
            InputStream is = mContext.getContentResolver().openInputStream(getUri());
            return XmpUtilHelper.extractXMPMeta(is);
        } catch (FileNotFoundException e) {
            return null;
        }
    }
}
+13 −0
Original line number Diff line number Diff line
@@ -3,12 +3,16 @@ package com.android.gallery3d.filtershow.filters;

import android.graphics.Bitmap;

import com.android.gallery3d.filtershow.presets.ImagePreset;

public class ImageFilter implements Cloneable {

    protected int mMaxParameter = 100;
    protected int mMinParameter = -100;
    protected int mDefaultParameter = 0;
    protected int mParameter = 0;
    private ImagePreset mImagePreset;

    protected String mName = "Original";
    private final String LOGTAG = "ImageFilter";
    public static final byte TYPE_BORDER =1;
@@ -35,6 +39,7 @@ public class ImageFilter implements Cloneable {
        filter.setFilterType(filterType);
        filter.mMaxParameter = mMaxParameter;
        filter.mMinParameter = mMinParameter;
        filter.mImagePreset = mImagePreset;
        filter.mDefaultParameter = mDefaultParameter;
        return filter;
    }
@@ -91,6 +96,14 @@ public class ImageFilter implements Cloneable {
        return mDefaultParameter;
    }

    public ImagePreset getImagePreset() {
        return mImagePreset;
    }

    public void setImagePreset(ImagePreset mPreset) {
        this.mImagePreset = mPreset;
    }

    public boolean same(ImageFilter filter) {
        if (!filter.getName().equalsIgnoreCase(getName())) {
            return false;
+13 −1
Original line number Diff line number Diff line
@@ -8,6 +8,8 @@ import android.graphics.Paint;
import android.graphics.Paint.Align;
import android.util.Log;

import com.android.gallery3d.filtershow.presets.ImagePreset;

public class ImageFilterTinyPlanet extends ImageFilter {
    private static final String TAG = ImageFilterTinyPlanet.class.getSimpleName();

@@ -19,7 +21,17 @@ public class ImageFilterTinyPlanet extends ImageFilter {
    @Override
    public Bitmap apply(Bitmap bitmap, float scaleFactor, boolean highQuality) {
        Log.d(TAG, "Applying tiny planet.");
        String str = "TinyPlanet";
        ImagePreset preset = getImagePreset();
        if (preset != null) {
            if (!preset.isPanoramaSafe()) {
                str = "NO TP";

            } else {
                Object xmp = preset.getImageLoader().getXmpObject();
                str = "TP got Xmp";
            }
        }
        int w = bitmap.getWidth();
        int h = bitmap.getHeight();

@@ -30,7 +42,7 @@ public class ImageFilterTinyPlanet extends ImageFilter {
        paint.setColor(Color.RED);
        paint.setTextSize((int) (((mParameter + 100) / 200f) * 100));
        paint.setTextAlign(Align.CENTER);
        canvas.drawText("TinyPlanet", w / 2, h / 2, paint);
        canvas.drawText(str, w / 2, h / 2, paint);
        return super.apply(bitmap, scaleFactor, highQuality);
    }
}
+4 −0
Original line number Diff line number Diff line
@@ -506,6 +506,7 @@ public class ImageShow extends View implements OnGestureListener,
    public void setImagePreset(ImagePreset preset, boolean addToHistory) {
        mImagePreset = preset;
        if (getImagePreset() != null) {
            getImagePreset().setImageLoader(mImageLoader);
            if (addToHistory) {
                mHistoryAdapter.addHistoryItem(getImagePreset());
            }
@@ -520,6 +521,9 @@ public class ImageShow extends View implements OnGestureListener,
        mImageLoader = loader;
        if (mImageLoader != null) {
            mImageLoader.addListener(this);
            if (mImagePreset != null) {
                mImagePreset.setImageLoader(mImageLoader);
            }
        }
    }

Loading