Slight refactoring of MediaDetailProvider

This commit is contained in:
YuviPanda 2013-02-23 21:56:52 +05:30
parent b017e0abc6
commit 4eb11454bd
2 changed files with 7 additions and 10 deletions

View file

@ -182,12 +182,12 @@ public class ContributionsActivity
contributionsList.setCursor(null);
}
public Media getItem(int i) {
public Media getMediaAtPosition(int i) {
allContributions.moveToPosition(i);
return Contribution.fromCursor(allContributions);
}
public int getCount() {
public int getTotalMediaCount() {
if(allContributions == null) {
return 0;
}

View file

@ -1,6 +1,5 @@
package org.wikimedia.commons.media;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
@ -12,22 +11,20 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.actionbarsherlock.app.SherlockFragment;
import com.actionbarsherlock.app.SherlockFragmentActivity;
import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuInflater;
import com.actionbarsherlock.view.MenuItem;
import com.actionbarsherlock.widget.ShareActionProvider;
import org.wikimedia.commons.Media;
import org.wikimedia.commons.R;
import org.wikimedia.commons.Utils;
public class MediaDetailPagerFragment extends SherlockFragment {
private ViewPager pager;
private ShareActionProvider shareActionProvider;
public interface MediaDetailProvider {
public Media getItem(int i);
public int getCount();
public Media getMediaAtPosition(int i);
public int getTotalMediaCount();
}
private class MediaDetailAdapter extends FragmentStatePagerAdapter {
@ -37,13 +34,13 @@ public class MediaDetailPagerFragment extends SherlockFragment {
@Override
public Fragment getItem(int i) {
Media m = ((MediaDetailProvider)getActivity()).getItem(i);
Media m = ((MediaDetailProvider)getActivity()).getMediaAtPosition(i);
return MediaDetailFragment.forMedia((m));
}
@Override
public int getCount() {
return ((MediaDetailProvider)getActivity()).getCount();
return ((MediaDetailProvider)getActivity()).getTotalMediaCount();
}
}
@ -64,7 +61,7 @@ public class MediaDetailPagerFragment extends SherlockFragment {
@Override
public boolean onOptionsItemSelected(MenuItem item) {
MediaDetailProvider provider = (MediaDetailProvider)getSherlockActivity();
Media m = provider.getItem(pager.getCurrentItem());
Media m = provider.getMediaAtPosition(pager.getCurrentItem());
switch(item.getItemId()) {
case R.id.menu_share_current_image:
Intent shareIntent = new Intent();