From 6b85e5524c567eefa48e4d0dc518b10286196615 Mon Sep 17 00:00:00 2001 From: fkloft Date: Tue, 18 Feb 2014 21:41:58 +0100 Subject: [PATCH] Remove temporary extras before launching the intent --- .../com/cradle/iitc_mobile/share/IntentGenerator.java | 5 +++++ .../cradle/iitc_mobile/share/IntentListFragment.java | 10 +++------- .../com/cradle/iitc_mobile/share/ShareActivity.java | 7 +++++++ 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/mobile/src/com/cradle/iitc_mobile/share/IntentGenerator.java b/mobile/src/com/cradle/iitc_mobile/share/IntentGenerator.java index 6d6d4694..1e3af18d 100644 --- a/mobile/src/com/cradle/iitc_mobile/share/IntentGenerator.java +++ b/mobile/src/com/cradle/iitc_mobile/share/IntentGenerator.java @@ -92,6 +92,11 @@ public class IntentGenerator { return list; } + public void cleanup(final Intent intent) { + intent.removeExtra(EXTRA_FLAG_IS_DEFAULT); + intent.removeExtra(EXTRA_FLAG_TITLE); + } + public ArrayList getBrowserIntents(final String title, final String url) { final Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)) .addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET); diff --git a/mobile/src/com/cradle/iitc_mobile/share/IntentListFragment.java b/mobile/src/com/cradle/iitc_mobile/share/IntentListFragment.java index b3397097..f2456dd1 100644 --- a/mobile/src/com/cradle/iitc_mobile/share/IntentListFragment.java +++ b/mobile/src/com/cradle/iitc_mobile/share/IntentListFragment.java @@ -15,10 +15,10 @@ import android.widget.ListView; import java.util.ArrayList; public class IntentListFragment extends Fragment implements OnScrollListener, OnItemClickListener { - private ArrayList mIntents; private IntentAdapter mAdapter; - private int mScrollIndex, mScrollTop; + private ArrayList mIntents; private ListView mListView; + private int mScrollIndex, mScrollTop; public int getIcon() { return getArguments().getInt("icon"); @@ -50,11 +50,7 @@ public class IntentListFragment extends Fragment implements OnScrollListener, On @Override public void onItemClick(final AdapterView parent, final View view, final int position, final long id) { - final Intent intent = mAdapter.getItem(position); - ((ShareActivity) getActivity()).getIntentComparator().trackIntentSelection(intent); - - startActivity(intent); - getActivity().finish(); + ((ShareActivity) getActivity()).launch(mAdapter.getItem(position)); } @Override diff --git a/mobile/src/com/cradle/iitc_mobile/share/ShareActivity.java b/mobile/src/com/cradle/iitc_mobile/share/ShareActivity.java index e62fbbf5..0578a7dc 100644 --- a/mobile/src/com/cradle/iitc_mobile/share/ShareActivity.java +++ b/mobile/src/com/cradle/iitc_mobile/share/ShareActivity.java @@ -140,6 +140,13 @@ public class ShareActivity extends FragmentActivity implements ActionBar.TabList return mComparator; } + public void launch(final Intent intent) { + mComparator.trackIntentSelection(intent); + mGenerator.cleanup(intent); + startActivity(intent); + finish(); + } + @Override public boolean onOptionsItemSelected(final MenuItem item) { switch (item.getItemId()) {