From 7c3ff29f5d187a9f8c660f8571a43f5a91b46836 Mon Sep 17 00:00:00 2001 From: nicolasroard Date: Tue, 26 Feb 2013 18:14:39 -0800 Subject: Fix vignette startup draw Change-Id: Ifaab3167e44db05be6c788e10d234975b1f51b56 --- .../filtershow/imageshow/ImageVignette.java | 24 +++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/src/com/android/gallery3d/filtershow/imageshow/ImageVignette.java b/src/com/android/gallery3d/filtershow/imageshow/ImageVignette.java index a51d10276..f43ea6cad 100644 --- a/src/com/android/gallery3d/filtershow/imageshow/ImageVignette.java +++ b/src/com/android/gallery3d/filtershow/imageshow/ImageVignette.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2012 The Android Open Source Project + * Copyright (C) 2013 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -88,14 +88,20 @@ public class ImageVignette extends ImageShow { setRepresentation(mVignetteRep); break; } - resetImageCaches(this); + computeEllipses(); invalidate(); - mEditorVignette.commitLocalRepresentation(); return true; } public void setRepresentation(FilterVignetteRepresentation vignetteRep) { mVignetteRep = vignetteRep; + computeEllipses(); + } + + public void computeEllipses() { + if (mVignetteRep == null) { + return; + } Matrix toImg = getScreenToImageMatrix(false); Matrix toScr = new Matrix(); toImg.invert(toScr); @@ -125,18 +131,26 @@ public class ImageVignette extends ImageShow { mElipse.setRadius(toScr.mapRadius(mVignetteRep.getRadiusX()), toScr.mapRadius(mVignetteRep.getRadiusY())); } + mEditorVignette.commitLocalRepresentation(); } public void setEditor(EditorVignette editorVignette) { mEditorVignette = editorVignette; } + @Override + public void onSizeChanged(int w, int h, int oldw, int oldh) { + super.onSizeChanged(w, h, oldw, oldh); + computeEllipses(); + } + @Override public void onDraw(Canvas canvas) { super.onDraw(canvas); - setRepresentation(mVignetteRep); + if (mVignetteRep == null) { + return; + } mElipse.draw(canvas); - } } -- cgit v1.2.3