Merge remote-tracking branch 'refs/remotes/commons-app/master'

This commit is contained in:
Josephine Lim 2017-05-20 12:20:19 +02:00
commit a352104635
5 changed files with 42 additions and 22 deletions

View file

@ -498,7 +498,7 @@ public class CategorizationFragment extends Fragment {
}
}
private void backButtonDialog() {
public void backButtonDialog() {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setMessage("Are you sure you want to go back? The image will not have any categories saved.")

View file

@ -138,6 +138,7 @@ public class ContributionsActivity
}
requestAuthToken();
initDrawer();
setTitle(getString(R.string.title_activity_contributions));
}
@Override

View file

@ -114,25 +114,6 @@ public class MediaDetailFragment extends Fragment {
licenseList = new LicenseList(getActivity());
Media media = detailProvider.getMediaAtPosition(index);
if (media == null) {
// Ask the detail provider to ping us when we're ready
Timber.d("MediaDetailFragment not yet ready to display details; registering observer");
dataObserver = new DataSetObserver() {
@Override
public void onChanged() {
Timber.d("MediaDetailFragment ready to display delayed details!");
detailProvider.unregisterDataSetObserver(dataObserver);
dataObserver = null;
displayMediaDetails(detailProvider.getMediaAtPosition(index));
}
};
detailProvider.registerDataSetObserver(dataObserver);
} else {
Timber.d("MediaDetailFragment ready to display details");
displayMediaDetails(media);
}
// Progressively darken the image in the background when we scroll detail pane up
scrollListener = new ViewTreeObserver.OnScrollChangedListener() {
@Override
@ -169,6 +150,31 @@ public class MediaDetailFragment extends Fragment {
return view;
}
@Override public void onResume() {
super.onResume();
Media media = detailProvider.getMediaAtPosition(index);
if (media == null) {
// Ask the detail provider to ping us when we're ready
Timber.d("MediaDetailFragment not yet ready to display details; registering observer");
dataObserver = new DataSetObserver() {
@Override
public void onChanged() {
if (!isAdded()) {
return;
}
Timber.d("MediaDetailFragment ready to display delayed details!");
detailProvider.unregisterDataSetObserver(dataObserver);
dataObserver = null;
displayMediaDetails(detailProvider.getMediaAtPosition(index));
}
};
detailProvider.registerDataSetObserver(dataObserver);
} else {
Timber.d("MediaDetailFragment ready to display details");
displayMediaDetails(media);
}
}
private void displayMediaDetails(final Media media) {
//Always load image from Internet to allow viewing the desc, license, and cats
image.setMedia(media);
@ -199,6 +205,9 @@ public class MediaDetailFragment extends Fragment {
@Override
protected void onPostExecute(Boolean success) {
detailFetchTask = null;
if (!isAdded()) {
return;
}
if (success) {
extractor.fill(media);

View file

@ -67,6 +67,12 @@ public class NavigationBaseActivity extends BaseActivity implements HamburgerMen
});
}
public void initBack() {
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowHomeEnabled(true);
}
private void setDrawerPaneWidth() {
ViewGroup.LayoutParams params = drawerPane.getLayoutParams();
// set width to lowerBound of 80% of the screen size

View file

@ -219,7 +219,7 @@ public class ShareActivity
uploadController = new UploadController(this);
setContentView(R.layout.activity_share);
ButterKnife.bind(this);
initDrawer();
initBack();
app = CommonsApplication.getInstance();
backgroundImageView = (SimpleDraweeView)findViewById(R.id.backgroundImage);
@ -444,7 +444,11 @@ public class ShareActivity
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
if(categorizationFragment!=null && categorizationFragment.isVisible()) {
categorizationFragment.backButtonDialog();
} else {
onBackPressed();
}
return true;
}
return super.onOptionsItemSelected(item);