Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,7 @@ public class EditImageActivity extends EditBaseActivity
private int currentShowingIndex = -1;

public ArrayList<Bitmap> bitmapsForUndo;
public MainMenuFragment mainMenuFragment;
public MainMenuFragment mainMenuFragment = new MainMenuFragment();
public RecyclerMenuFragment filterFragment, enhanceFragment, stickerTypesFragment;
public StickersFragment stickersFragment;
public SliderFragment sliderFragment;
Expand All @@ -173,12 +173,19 @@ public class EditImageActivity extends EditBaseActivity
private boolean modeChangesExit = false;
private int modeCheck = -1;
private int messageCheck = -1;
private boolean check = false;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getSupportActionBar() != null) getSupportActionBar().hide();

if (mainBitmap != null) {
mainBitmap.recycle();
mainBitmap = null;
System.gc();
}

checkInitImageLoader();
setContentView(R.layout.activity_image_edit);
ButterKnife.bind(this);
Expand All @@ -192,6 +199,9 @@ public void onCreate(Bundle savedInstanceState) {
modeChangesExit = savedInstanceState.getBoolean("modeChanges", false);
modeCheck = savedInstanceState.getInt("checkMode", -1);
messageCheck = savedInstanceState.getInt("checkString", -1);
check = true;
mainBitmap = savedInstanceState.getParcelable("Edited Bitmap");
mOpTimes = savedInstanceState.getInt("numberOfEdits");
}
if (exitDialog) {
onSaveTaskDone();
Expand Down Expand Up @@ -495,8 +505,17 @@ public void loadImage(String filepath) {
if (mLoadImageTask != null) {
mLoadImageTask.cancel(true);
}
mLoadImageTask = new LoadImageTask();
mLoadImageTask.execute(filepath);
if (check && mOpTimes > 0) {
check = false;
mainImage.setImageBitmap(mainBitmap);
mainImage.setDisplayType(ImageViewTouchBase.DisplayType.FIT_TO_SCREEN);
originalBitmap = mainBitmap.copy(mainBitmap.getConfig(), true);
addToUndoList();
setInitialFragments();
} else {
mLoadImageTask = new LoadImageTask();
mLoadImageTask.execute(filepath);
}
}

protected void doSaveImage() {
Expand Down Expand Up @@ -640,11 +659,6 @@ protected Bitmap doInBackground(String... params) {
@Override
protected void onPostExecute(Bitmap result) {
super.onPostExecute(result);
if (mainBitmap != null) {
mainBitmap.recycle();
mainBitmap = null;
System.gc();
}
mainBitmap = result;
mainImage.setImageBitmap(result);
mainImage.setDisplayType(ImageViewTouchBase.DisplayType.FIT_TO_SCREEN);
Expand Down Expand Up @@ -743,6 +757,8 @@ protected void onSaveInstanceState(Bundle outState) {
outState.putBoolean("modeChanges", modeChangesExit);
outState.putInt("checkMode", modeCheck);
outState.putInt("checkString", messageCheck);
outState.putParcelable("Edited Bitmap", mainBitmap);
outState.putInt("numberOfEdits", mOpTimes);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ public class AddTextFragment extends BaseEditFragment

private InputMethodManager imm;
private SaveTextStickerTask mSaveTask;
private String text = null;

public static AddTextFragment newInstance() {
return new AddTextFragment();
Expand Down Expand Up @@ -79,6 +80,10 @@ public void onActivityCreated(Bundle savedInstanceState) {
((ImageButton) cancel).setColorFilter(Color.BLACK);
((ImageButton) apply).setColorFilter(Color.BLACK);

if (savedInstanceState != null) {
text = savedInstanceState.getString("Edit Text");
}

mInputText = mainView.findViewById(R.id.text_input);
mTextColorSelector = mainView.findViewById(R.id.text_color);
mTextColorSelector.setImageDrawable(
Expand All @@ -94,6 +99,9 @@ public void onClick(View v) {
});
mTextColorSelector.setOnClickListener(new SelectColorBtnClick());
mInputText.addTextChangedListener(this);
if (text != null) {
mInputText.setText(text);
}
boolean focus = mInputText.requestFocus();
if (focus) {
imm.showSoftInput(mInputText, InputMethodManager.SHOW_IMPLICIT);
Expand All @@ -110,6 +118,13 @@ public void onClick(View v) {
});
}

@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putString("Edit Text", mInputText.getText().toString());
// outState.putString("text", text);
}

private void showFontChoiceBox() {
DialogFragment dialogFragment = FontPickerDialog.newInstance(this);
dialogFragment.show(getFragmentManager(), "fontPicker");
Expand Down Expand Up @@ -221,8 +236,8 @@ public void backToMain() {
public void onShow() {
activity.changeMode(EditImageActivity.MODE_TEXT);
activity.mainImage.setImageBitmap(activity.mainBitmap);
activity.addTextFragment.getmTextStickerView().mainImage = activity.mainImage;
activity.addTextFragment.getmTextStickerView().mainBitmap = activity.mainBitmap;
getmTextStickerView().mainImage = activity.mainImage;
getmTextStickerView().mainBitmap = activity.mainBitmap;
mTextStickerView.setVisibility(View.VISIBLE);
mInputText.clearFocus();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,11 +39,13 @@ public class CropFragment extends BaseEditFragment {
private LinearLayout ratioList, imageList, combinedList;
private static List<RatioItem> dataList = new ArrayList<RatioItem>();

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

even here xD

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll leave this one. This one wasn't done by me. It's been there from the beginning.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, No worries

private List<TextView> textViewList = new ArrayList<TextView>();
private RectF rec;

public static int SELECTED_COLOR = Color.BLUE;
public static int UNSELECTED_COLOR = Color.BLACK;
private CropRationClick mCropRationClick = new CropRationClick();
public TextView selctedTextView;
private TextView sView;

public static CropFragment newInstance() {
CropFragment fragment = new CropFragment();
Expand Down Expand Up @@ -138,7 +140,7 @@ private void setUpRatioListPortriat() {
ratioList.addView(text, params1);
imageList.addView(image, params);
text.setTag(i);
if (i == 0) {
if (i == 0 && selctedTextView == null) {
selctedTextView = text;
}
dataList.get(i).setIndex(i);
Expand Down Expand Up @@ -191,7 +193,8 @@ public void onClick(View v) {
RatioItem dataItem = (RatioItem) v.getTag();
selctedTextView = curTextView;
selctedTextView.setTextColor(SELECTED_COLOR);

sView = selctedTextView;
sView.setTag(v.getTag());
mCropPanel.setRatioCropRect(activity.mainImage.getBitmapRect(), dataItem.getRatio());
}
}
Expand Down Expand Up @@ -219,10 +222,21 @@ public void onClick(View v) {
applyCropImage();
}
});
if (savedInstanceState != null) {
rec = savedInstanceState.getParcelable("Rect");
sView.setText(savedInstanceState.getString("text"));
}
onShow();
}
}

@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putParcelable("Rect", activity.mainImage.getBitmapRect());
outState.putString("text", sView.getText().toString());
}

@Override
public void onShow() {
if (activity.mainBitmap == null) {
Expand All @@ -239,7 +253,20 @@ public void onShow() {
activity.mainImage.setDisplayType(ImageViewTouchBase.DisplayType.FIT_TO_SCREEN);
activity.mainImage.setScaleEnabled(false);
RectF r = activity.mainImage.getBitmapRect();
activity.mCropPanel.setCropRect(r);
if (rec != null) {
activity.mCropPanel.setCropRect(rec);
} else {
activity.mCropPanel.setCropRect(r);
}

if (sView != null) {
selctedTextView.setTextColor(UNSELECTED_COLOR);
RatioItem dataItem = (RatioItem) sView.getTag();
selctedTextView = sView;
sView.setTextColor(SELECTED_COLOR);
selctedTextView.setTextColor(SELECTED_COLOR);
if (rec != null) mCropPanel.setRatioCropRect(rec, dataItem.getRatio());
}
}

private final class BackToMenuClick implements OnClickListener {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,9 @@ public class PaintFragment extends BaseEditFragment

private SaveCustomPaintTask mSavePaintImageTask;

private static int mStokeColor = Integer.MIN_VALUE;
private static float mStokeWidth = Integer.MIN_VALUE;

public int[] mPaintColors = {
Color.BLACK,
Color.DKGRAY,
Expand Down Expand Up @@ -115,11 +118,32 @@ public void onActivityCreated(Bundle savedInstanceState) {

initStokeWidthPopWindow();

if (savedInstanceState != null) {
mPaintView.mDrawBit = savedInstanceState.getParcelable("Draw Bit");
CustomPaintView.mPaintCanvas = new Canvas(mPaintView.mDrawBit);
mStokeColor = savedInstanceState.getInt("Stoke Color");
mStokeWidth = savedInstanceState.getFloat("Stoke Width");
}
if (mStokeColor != Integer.MIN_VALUE && mStokeWidth != Integer.MIN_VALUE) {
mPaintModeView.setPaintStrokeColor(mStokeColor);
mPaintModeView.setPaintStrokeWidth(mStokeWidth);
setPaintColor(mStokeColor);
mPaintModeView.setPaintStrokeWidth(mStokeWidth);
}

mEraserView.setOnClickListener(this);
updateEraserView();
onShow();
}

@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putFloat("Stoke Width", mPaintModeView.getStokenWidth());
outState.putInt("Stoke Color", mPaintModeView.getStokenColor());
outState.putParcelable("Draw Bit", mPaintView.mDrawBit);
}

private void initColorListView() {

mColorListView.setHasFixedSize(false);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@

public class RecyclerMenuFragment extends BaseEditFragment {

RecyclerView recyclerView;
private RecyclerView recyclerView;
int MODE;
private static ArrayList<Bitmap> filterThumbs;
View fragmentView;
Expand Down Expand Up @@ -58,6 +58,7 @@ public static RecyclerMenuFragment newInstance(int mode) {

public void clearCurrentSelection() {
if (currentSelection != -1) {
recyclerView = fragmentView.findViewById(R.id.editor_recyclerview);
mRecyclerAdapter.mViewHolder holder =
(mRecyclerAdapter.mViewHolder)
recyclerView.findViewHolderForAdapterPosition(currentSelection);
Expand Down Expand Up @@ -95,10 +96,18 @@ public void onActivityCreated(Bundle savedInstanceState) {
@Override
public View onCreateView(
LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
fragmentView = null;
container.removeAllViews();
fragmentView = inflater.inflate(R.layout.fragment_editor_recycler, container, false);
return fragmentView;
}

@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putInt("sample element", 5);
}

@Override
public void onResume() {
super.onResume();
Expand All @@ -117,7 +126,7 @@ public void onDetach() {
@Override
public void onDestroy() {
super.onDestroy();
// if (filterThumbs != null)filterThumbs=null;
if (filterThumbs != null) filterThumbs = null;
MyApplication.getRefWatcher(getActivity()).watch(this);
}

Expand Down Expand Up @@ -156,11 +165,12 @@ protected Void doInBackground(Void... params) {
bmHeight = currentBitmap.getHeight();
int leng = (titlelist != null) ? titlelist.length() : 0;
for (int i = 0; i < leng; i++) {
filterThumbs.add(
PhotoProcessing.processImage(
getResizedBitmap(currentBitmap, 5),
(i + 100 * EditImageActivity.MODE_FILTERS),
100));
if (filterThumbs != null)
filterThumbs.add(
PhotoProcessing.processImage(
getResizedBitmap(currentBitmap, 5),
(i + 100 * EditImageActivity.MODE_FILTERS),
100));
}
}
return null;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ public class RotateFragment extends BaseEditFragment {

private HorizontalWheelView horizontalWheelView;
private TextView tvAngle;
private static double angle = Integer.MIN_VALUE;

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same, save it in saveInstance


public static RotateFragment newInstance() {
RotateFragment fragment = new RotateFragment();
Expand All @@ -54,12 +55,22 @@ public View onCreateView(
return mainView;
}

@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
}

private void initViews() {
cancel = mainView.findViewById(R.id.rotate_cancel);
apply = mainView.findViewById(R.id.rotate_apply);
horizontalWheelView = mainView.findViewById(R.id.horizontalWheelView);
if (angle != Integer.MIN_VALUE) {
horizontalWheelView.setDegreesAngle(angle);
}
tvAngle = mainView.findViewById(R.id.tvAngle);
this.mRotatePanel = ensureEditActivity().mRotatePanel;
if (angle != Integer.MIN_VALUE)
mRotatePanel.rotateImage((int) angle, activity.mainImage.getBitmapRect());
}

private void setupListeners() {
Expand Down Expand Up @@ -93,11 +104,12 @@ private void updateUi() {
private void updateText() {
String text = String.format(Locale.US, "%.0f°", horizontalWheelView.getDegreesAngle());
tvAngle.setText(text);
angle = horizontalWheelView.getDegreesAngle();
}

private void updateImage() {
int angle = (int) horizontalWheelView.getDegreesAngle();
mRotatePanel.rotateImage(angle);
mRotatePanel.rotateImage(angle, activity.mainImage.getBitmapRect());
}

@Override
Expand All @@ -109,12 +121,10 @@ public void onDestroy() {
@Override
public void onDetach() {
super.onDetach();
resetRotateView();
}

private void resetRotateView() {
if (null != activity && null != mRotatePanel) {
activity.mRotatePanel.rotateImage(0);
activity.mRotatePanel.reset();
activity.mRotatePanel.setVisibility(View.GONE);
activity.mainImage.setVisibility(View.VISIBLE);
Expand Down
Loading