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

Commit a573b563 authored by Dharmaray Kundargi's avatar Dharmaray Kundargi
Browse files

Fix issue 3408285. Fix issue in Thread safe in Java.

Change-Id: Ifddcecfc2d7b1bd3e8a91c4850c169e1fb7c65ae
parent cb9d4d28
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -402,11 +402,11 @@ public class AudioTrack {
     */
    public void enableLoop() {
        if (!mLoop) {
            mLoop = true;
            /**
             *  Force update of preview settings
             */
            mMANativeHelper.setGeneratePreview(true);
            mLoop = true;
        }
    }

+3 −0
Original line number Diff line number Diff line
@@ -102,6 +102,8 @@ public abstract class Effect {
            throw new IllegalArgumentException("Duration is too large");
        }

        getMediaItem().getNativeContext().setGeneratePreview(true);

        final long oldDurationMs = mDurationMs;
        mDurationMs = durationMs;

@@ -156,6 +158,7 @@ public abstract class Effect {
            throw new IllegalArgumentException("Invalid start time or duration");
        }

        getMediaItem().getNativeContext().setGeneratePreview(true);
        final long oldStartTimeMs = mStartTimeMs;
        final long oldDurationMs = mDurationMs;

+0 −30
Original line number Diff line number Diff line
@@ -57,21 +57,6 @@ public class EffectKenBurns extends Effect {
        mEndRect = endRect;
    }

    /**
     * Set the start rectangle.
     *
     * @param startRect The start rectangle
     *
     * @throws IllegalArgumentException if start rectangle is incorrectly set.
     */
    public void setStartRect(Rect startRect) {
        if ( (startRect.left == 0) && (startRect.right == 0)
            && (startRect.bottom == 0) && (startRect.top == 0) ) {
            throw new IllegalArgumentException("Invalid Rectangle");
        }

        mStartRect = startRect;
    }

    /**
     * Get the start rectangle.
@@ -82,21 +67,6 @@ public class EffectKenBurns extends Effect {
        return mStartRect;
    }

    /**
     * Set the end rectangle.
     *
     * @param endRect The end rectangle
     *
     * @throws IllegalArgumentException if end rectangle is incorrectly set.
     */
    public void setEndRect(Rect endRect) {
        if ( (endRect.left == 0) && (endRect.right == 0)
           && (endRect.bottom == 0) && (endRect.top == 0) ) {
            throw new IllegalArgumentException("Invalid Rectangle");
        }

        mEndRect = endRect;
    }

    /**
     * Get the end rectangle.
+9 −7
Original line number Diff line number Diff line
@@ -295,6 +295,8 @@ public abstract class MediaItem {
            "Effect start time + effect duration > media clip duration");
        }

        mMANativeHelper.setGeneratePreview(true);

        mEffects.add(effect);

        invalidateTransitions(effect.getStartTime(), effect.getDuration());
@@ -302,7 +304,6 @@ public abstract class MediaItem {
        if (effect instanceof EffectKenBurns) {
            mRegenerateClip = true;
        }
        mMANativeHelper.setGeneratePreview(true);
    }

    /**
@@ -424,8 +425,6 @@ public abstract class MediaItem {
                throw new IllegalArgumentException("Overlay bitmap not specified");
            }

            ((OverlayFrame)overlay).save(mProjectPath);

            final int scaledWidth, scaledHeight;
            if (this instanceof MediaVideoItem) {
                scaledWidth = getWidth();
@@ -443,13 +442,16 @@ public abstract class MediaItem {
                throw new IllegalArgumentException(
                "Bitmap dimensions must match media item dimensions");
            }
        } else {
            throw new IllegalArgumentException("Overlay not supported");
        }

            mMANativeHelper.setGeneratePreview(true);
            ((OverlayFrame)overlay).save(mProjectPath);

            mOverlays.add(overlay);
            invalidateTransitions(overlay.getStartTime(), overlay.getDuration());
        mMANativeHelper.setGeneratePreview(true);

        } else {
            throw new IllegalArgumentException("Overlay not supported");
        }
    }

    /**
+3 −1
Original line number Diff line number Diff line
@@ -23,6 +23,7 @@ import java.util.concurrent.CancellationException;
import android.graphics.Bitmap;
import android.graphics.Color;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Rect;
import android.view.SurfaceHolder;

@@ -153,6 +154,7 @@ public interface VideoEditor {
        private Bitmap mOverlayBitmap;
        private int mRenderingMode;
        private boolean mClear;
        private static final Paint sResizePaint = new Paint(Paint.FILTER_BITMAP_FLAG);

        /**
         * Default constructor
@@ -290,7 +292,7 @@ public interface VideoEditor {
                }

                destBitmap.eraseColor(Color.TRANSPARENT);
                overlayCanvas.drawBitmap(mOverlayBitmap, srcRect, destRect, null);
                overlayCanvas.drawBitmap(mOverlayBitmap, srcRect, destRect, sResizePaint);

                mOverlayBitmap.recycle();
            }
Loading