summaryrefslogtreecommitdiffstats
path: root/src/com/android/contacts/editor/CompactContactEditorFragment.java
diff options
context:
space:
mode:
authorWalter Jang <wjang@google.com>2015-03-12 15:31:21 -0700
committerWalter Jang <wjang@google.com>2015-03-12 15:31:21 -0700
commitebfe75beec08f30b89de7e7251f4106a680f9ab3 (patch)
treee278c4fb826290b2c8c8ecb8b85cb805fecd866e /src/com/android/contacts/editor/CompactContactEditorFragment.java
parent1573aa697284e6627c7bb74eae4c350f56780c33 (diff)
downloadpackages_apps_Contacts-ebfe75beec08f30b89de7e7251f4106a680f9ab3.tar.gz
packages_apps_Contacts-ebfe75beec08f30b89de7e7251f4106a680f9ab3.tar.bz2
packages_apps_Contacts-ebfe75beec08f30b89de7e7251f4106a680f9ab3.zip
Update contact photo edit options after photo is changed
Change-Id: I6cb9c432e7c98a4efc4c0c1c26efb8b1971acd15
Diffstat (limited to 'src/com/android/contacts/editor/CompactContactEditorFragment.java')
-rw-r--r--src/com/android/contacts/editor/CompactContactEditorFragment.java17
1 files changed, 15 insertions, 2 deletions
diff --git a/src/com/android/contacts/editor/CompactContactEditorFragment.java b/src/com/android/contacts/editor/CompactContactEditorFragment.java
index 719451179..121fc88b2 100644
--- a/src/com/android/contacts/editor/CompactContactEditorFragment.java
+++ b/src/com/android/contacts/editor/CompactContactEditorFragment.java
@@ -67,6 +67,9 @@ public class CompactContactEditorFragment extends ContactEditorBaseFragment impl
public void onRemovePictureChosen() {
getContent().setPhoto(/* bitmap =*/ null);
mUpdatedPhotos.remove(String.valueOf(mPhotoRawContactId));
+
+ // Update the mode so the options change if user clicks the photo again
+ mPhotoMode = getPhotoMode();
}
@Override
@@ -85,6 +88,9 @@ public class CompactContactEditorFragment extends ContactEditorBaseFragment impl
// we need to update the UI immediately
mUpdatedPhotos.putParcelable(String.valueOf(mPhotoRawContactId), uri);
getContent().setFullSizePhoto(uri);
+
+ // Update the mode so the options change if user clicks the photo again
+ mPhotoMode = getPhotoMode();
}
@Override
@@ -110,6 +116,10 @@ public class CompactContactEditorFragment extends ContactEditorBaseFragment impl
mPhotoMode = photoMode;
}
+ public void setPhotoMode(int photoMode) {
+ mPhotoMode = photoMode;
+ }
+
@Override
public void onClick(View view) {
PhotoSourceDialogFragment.show(CompactContactEditorFragment.this, mPhotoMode);
@@ -266,6 +276,10 @@ public class CompactContactEditorFragment extends ContactEditorBaseFragment impl
}
private PhotoHandler createPhotoHandler() {
+ return new PhotoHandler(getActivity(), getPhotoMode(), mState);
+ }
+
+ private int getPhotoMode() {
// To determine the options that are available to the user to update their photo
// (i.e. the photo mode), check if any of the writable raw contacts has a photo set
Integer photoMode = null;
@@ -289,8 +303,7 @@ public class CompactContactEditorFragment extends ContactEditorBaseFragment impl
photoMode = hasWritableAccountType
? PhotoActionPopup.Modes.NO_PHOTO : PhotoActionPopup.Modes.READ_ONLY_PHOTO;
}
-
- return new PhotoHandler(getActivity(), photoMode, mState);
+ return photoMode;
}
@Override