From d9cdb57b819cd47abab270397b5b6d853b01158c Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Fri, 4 Oct 2013 10:14:43 -0500 Subject: [PATCH] Remove AddOnActivity --- astrid/src/main/AndroidManifest.xml | 5 - .../astrid/activity/AddOnActivity.java | 182 ------------------ .../todoroo/astrid/adapter/AddOnAdapter.java | 156 --------------- astrid/src/main/res/drawable-hdpi/gl_more.png | Bin 460 -> 0 bytes .../src/main/res/drawable-hdpi/gl_pencil.png | Bin 1147 -> 0 bytes astrid/src/main/res/drawable/gl_more.png | Bin 650 -> 0 bytes astrid/src/main/res/drawable/gl_pencil.png | Bin 290 -> 0 bytes .../src/main/res/layout/addon_adapter_row.xml | 86 --------- .../main/res/layout/addon_list_container.xml | 29 --- astrid/src/main/res/values/strings-core.xml | 15 -- 10 files changed, 473 deletions(-) delete mode 100644 astrid/src/main/java/com/todoroo/astrid/activity/AddOnActivity.java delete mode 100644 astrid/src/main/java/com/todoroo/astrid/adapter/AddOnAdapter.java delete mode 100644 astrid/src/main/res/drawable-hdpi/gl_more.png delete mode 100644 astrid/src/main/res/drawable-hdpi/gl_pencil.png delete mode 100644 astrid/src/main/res/drawable/gl_more.png delete mode 100644 astrid/src/main/res/drawable/gl_pencil.png delete mode 100644 astrid/src/main/res/layout/addon_adapter_row.xml delete mode 100644 astrid/src/main/res/layout/addon_list_container.xml diff --git a/astrid/src/main/AndroidManifest.xml b/astrid/src/main/AndroidManifest.xml index 790668f90..3eea24d9d 100644 --- a/astrid/src/main/AndroidManifest.xml +++ b/astrid/src/main/AndroidManifest.xml @@ -162,11 +162,6 @@ - - - - * - */ -public class AddOnActivity extends SherlockFragmentActivity { - - /** boolean: whether to start on available page */ - public static final String TOKEN_START_WITH_AVAILABLE = "av"; //$NON-NLS-1$ - - private View installedView; - private View availableView; - - @Autowired - AddOnService addOnService; - - static { - AstridDependencyInjector.initialize(); - } - - public AddOnActivity() { - DependencyInjectionService.getInstance().inject(this); - } - - @Override - protected void onCreate(Bundle savedInstanceState) { - ThemeService.applyTheme(this); - super.onCreate(savedInstanceState); - - LayoutInflater inflater = LayoutInflater.from(this); - installedView = inflater.inflate(R.layout.addon_list_container, null); - availableView = inflater.inflate(R.layout.addon_list_container, null); - - ActionBar ab = getSupportActionBar(); - ab.setDisplayHomeAsUpEnabled(true); - ab.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); - ActionBar.Tab installedTab = ab.newTab().setText(" " + getString(R.string.AOA_tab_installed)) //$NON-NLS-1$ - .setIcon(R.drawable.gl_pencil) - .setTabListener(new AddOnTabListener(installedView)); - - ActionBar.Tab availableTab = ab.newTab().setText(" " + getString(R.string.AOA_tab_available)) //$NON-NLS-1$ - .setIcon(R.drawable.gl_more) - .setTabListener(new AddOnTabListener(availableView)); - - ab.addTab(availableTab); - ab.addTab(installedTab); - - setTitle(R.string.AOA_title); - - populate(); - } - - @Override - public boolean onOptionsItemSelected(MenuItem item) { - if (item.getItemId() == android.R.id.home) { - finish(); - return true; - } - return super.onOptionsItemSelected(item); - } - - private class AddOnTabListener implements ActionBar.TabListener { - - private final View mView; - - public AddOnTabListener(View v) { - this.mView = v; - } - - @Override - public void onTabReselected(Tab tab, FragmentTransaction ft) { - // - } - - @Override - public void onTabSelected(Tab tab, FragmentTransaction ft) { - setContentView(mView); - } - - @Override - public void onTabUnselected(Tab tab, FragmentTransaction ft) { - // - } - - } - - private void populate() { - AddOn[] list = addOnService.getAddOns(); - if(list == null) { - return; - } - - ArrayList installed = new ArrayList(); - ArrayList available = new ArrayList(); - - for(AddOn addOn : list) { - if (AddOnService.POWER_PACK_PACKAGE.equals(addOn.getPackageName())) { - if (addOnService.hasPowerPack()) { - installed.add(addOn); - } else if (Constants.MARKET_STRATEGY.generateMarketLink(addOn.getPackageName()) != null) { - available.add(addOn); - } - } else { - if(addOnService.isInstalled(addOn)) { - installed.add(addOn); - } else if (Constants.MARKET_STRATEGY.generateMarketLink(addOn.getPackageName()) != null) { - available.add(addOn); - } - - } - } - - ListView installedList = (ListView) installedView.findViewById(R.id.list); - installedList.setAdapter(new AddOnAdapter(this, true, installed)); - if(installed.size() > 0) { - installedView.findViewById(R.id.empty).setVisibility(View.GONE); - } - - ListView availableList = (ListView) availableView.findViewById(R.id.list); - availableList.setAdapter(new AddOnAdapter(this, false, available)); - if(available.size() > 0) { - availableView.findViewById(R.id.empty).setVisibility(View.GONE); - } - } - - /** - * Creates an on click listener - * @param activity - * @param finish whether to finish activity - * @return - */ - public static DialogInterface.OnClickListener createAddOnClicker(final Activity activity, - final boolean finish) { - return new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - Intent intent = new Intent(activity, - AddOnActivity.class); - intent.putExtra(AddOnActivity.TOKEN_START_WITH_AVAILABLE, true); - activity.startActivity(intent); - if(finish) { - activity.finish(); - } - } - }; - } - -} diff --git a/astrid/src/main/java/com/todoroo/astrid/adapter/AddOnAdapter.java b/astrid/src/main/java/com/todoroo/astrid/adapter/AddOnAdapter.java deleted file mode 100644 index 43191db71..000000000 --- a/astrid/src/main/java/com/todoroo/astrid/adapter/AddOnAdapter.java +++ /dev/null @@ -1,156 +0,0 @@ -/** - * Copyright (c) 2012 Todoroo Inc - * - * See the file "LICENSE" for the full license governing this code. - */ -package com.todoroo.astrid.adapter; - -import java.util.List; - -import android.app.Activity; -import android.content.ActivityNotFoundException; -import android.content.Context; -import android.content.Intent; -import android.content.pm.PackageManager; -import android.content.pm.ResolveInfo; -import android.graphics.drawable.Drawable; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.ArrayAdapter; -import android.widget.ImageButton; -import android.widget.ImageView; -import android.widget.TextView; -import android.widget.Toast; - -import org.tasks.R; -import com.todoroo.astrid.data.AddOn; -import com.todoroo.astrid.utility.Constants; - -/** - * Adapter for {@link AddOn}s - * - * @author Tim Su - * - */ -public class AddOnAdapter extends ArrayAdapter { - - // --- instance variables - - private final Activity activity; - private final LayoutInflater inflater; - private final boolean installed; - - public AddOnAdapter(Activity activity, boolean installed, List objects) { - super(activity, R.id.title, objects); - this.installed = installed; - this.activity = activity; - inflater = (LayoutInflater) activity.getSystemService( - Context.LAYOUT_INFLATER_SERVICE); - } - - // --- view construction - - View.OnClickListener intentClickListener = new View.OnClickListener() { - @Override - public void onClick(View v) { - ButtonTag buttonTag = (ButtonTag) v.getTag(); - if(buttonTag != null) { - try { - activity.startActivity(buttonTag.intent); - } catch (ActivityNotFoundException e) { - Toast.makeText(activity, R.string.market_unavailable, Toast.LENGTH_LONG).show(); - } - } - } - }; - - @Override - public View getView(int position, View convertView, ViewGroup parent) { - if(convertView == null) { - convertView = inflater.inflate(R.layout.addon_adapter_row, parent, false); - ViewHolder viewHolder = new ViewHolder(); - viewHolder.icon = (ImageView) convertView.findViewById(R.id.icon); - viewHolder.free = (TextView) convertView.findViewById(R.id.free); - viewHolder.title = (TextView) convertView.findViewById(R.id.title); - viewHolder.description = (TextView) convertView.findViewById(R.id.description); - viewHolder.market = (ImageButton) convertView.findViewById(R.id.button_market); - viewHolder.installedIcon = (ImageView) convertView.findViewById(R.id.check); - convertView.setTag(viewHolder); - - viewHolder.market.setOnClickListener(intentClickListener); - - } - ((ViewHolder)convertView.getTag()).item = getItem(position); - initializeView(convertView); - - return convertView; - } - - private class ViewHolder { - public AddOn item; - public ImageView icon; - public TextView free; - public TextView title; - public TextView description; - public ImageButton market; - public ImageView installedIcon; - } - - private class ButtonTag { - String event; - Intent intent; - public ButtonTag(String message, Intent intent) { - this.event = message; - this.intent = intent; - } - } - - private void initializeView(View convertView) { - ViewHolder viewHolder = (ViewHolder) convertView.getTag(); - AddOn item = viewHolder.item; - - viewHolder.icon.setImageBitmap(item.getIcon()); - viewHolder.title.setText(item.getTitle()); - viewHolder.description.setText(item.getDescription()); - viewHolder.free.setVisibility(item.isFree() && !installed ? View.VISIBLE : View.GONE); - - // populate buttons - - if(installed) { - viewHolder.market.setVisibility(View.GONE); - viewHolder.installedIcon.setVisibility(View.VISIBLE); - } else { - viewHolder.market.setVisibility(View.VISIBLE); - viewHolder.installedIcon.setVisibility(View.GONE); - Intent marketIntent = Constants.MARKET_STRATEGY.generateMarketLink(item.getPackageName()); - if (marketIntent == null) { - convertView.setVisibility(View.GONE); - } else { - convertView.setVisibility(View.VISIBLE); - viewHolder.market.setTag(new ButtonTag("market-" + item.getPackageName(), //$NON-NLS-1$ - marketIntent)); - Drawable icon = getIntentIcon(marketIntent); - if(icon == null) { - viewHolder.market.setImageResource( - android.R.drawable.stat_sys_download); - } else { - viewHolder.market.setImageDrawable(icon); - } - } - } - } - - public Drawable getIntentIcon(Intent intent) { - PackageManager pm = activity.getPackageManager(); - List resolveInfoList = pm.queryIntentActivities(intent, 0); - - // if options > 1, display open with... - if(resolveInfoList.size() > 0) { - return resolveInfoList.get(0).activityInfo.loadIcon(pm); - } - - return null; - } - -} diff --git a/astrid/src/main/res/drawable-hdpi/gl_more.png b/astrid/src/main/res/drawable-hdpi/gl_more.png deleted file mode 100644 index 3ae21febc199274741923ad55d8af3e21b999610..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 460 zcmeAS@N?(olHy`uVBq!ia0vp^dLYcf1|-9GYMTQo#^NA%Cx&(BWL^R}Y)RhkE)4%c zaKYZ?lYt_f1s;*b3=G`DAk4@xYmNj^kiEpy*OmP?JDaGu{6+@d3ZN-Io-U3d8TZ~! zvCTW=AkcdJ_K}Le%&paZkJZ97dbl4aFX79yY|w8AS|H-G?4zfJi_%fYrVM2zYtf*F zyGP4{Tu%MA+W&EO<*lnaf&LUTd-fKr{kk%2+WPZW{cH4IUshp%y+?LZ;r!ow zuPLp)e)rhs_%pseFK?fGC0o3@`Mb_v=Y&E#o2xn3&z8tV#$H?Q$@g}(5Q}4M=+&8Z zsk62O1(+h tT(+DlKK%99&5xeZOFlz9&A{;Ea}A?KN2A?Ki9b(3VxF#kF6*2UngCLRz}El( diff --git a/astrid/src/main/res/drawable-hdpi/gl_pencil.png b/astrid/src/main/res/drawable-hdpi/gl_pencil.png deleted file mode 100644 index 01823c89e79c7170a92b6f40ec9d765e85aebcf6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1147 zcmV->1cdvEP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2ipe* z762u1$<74;00a9;L_t(o!^N0ii&a$^#(&RoFvoGgX6V8{L=vc2NGNz4v{x5GLU&z8 zA0Y_3i|DG0zD1v)yP$Uofe{#Kg-vRukY@fDl$o(<^y$L2WOL>?o;~Nx%z|Ogu+Oah z+t2&H&wAeto3K(!?awz;O8*VI2B6J=iwK&g*(PZY*jFyi1G^&PLDMwkoB`-<23$&M z1~^sVTz;m2b19|0IcJ)t*&GF%rkR!$z_9{W8S3W?wo}geYST0ur{GgXq|*c7s#vyt zK+<<9rRkhA6B``bJHU)>OBxhCNiy&<@DH#<8wmHI?N5N61!A>(*Xzr@4X~1}DW#8q zcP0HK>2_bDSlI{ZAOVw&XF4n&Y<5RG1*fh=k63P{oYMbIN^S0-J2aj7lY!yTgxMF+vVE{t z9nU#0t@h42`x$sABCbB~A9`yo3fosY!c{^30-6ff-$9S0U@iZY(gHBq z5zfV^UyO+5cB+gF*xo3mbRXE!5lprp=A0*o1sl3Znx^TWA*MTsUKPHcbKcbz?zuUb zQmO_#BdI+@bb*^I4a3ui?Xon4g42@1_OT%v&3>ypWBWwT`Py3DqBlgtdAciHY2D|5 zr*N%CVsr&tN7!v(woA3z2DlC!$T{C%OWv&t*n)d#`-Kk5RrUUjh{-_?Fj9zXNUL%M zjt*f3n6Gf{{YF_6eX8vQz6WNz=3F@;ULA*OD->*P_Bn8HXp?)AaP@3G5)sSegag>p z3h^GGDMR!2A=Ila(^=p|MBD(lbm`Jq=bK*3PId#Y*#6D-&F9RmRk`1RFVaJ?%zfy;p6w z-UOEV-jz(0DqjG;0+xYKbIyxv=}OiNXnVh;eZXP~`PMRE{{oz`eMZu?i1>S>!rHIk z+XZaW_T@4{p0s@jc+j4@#%;nw*-T35OWQvH-$=S>o1F8b{yAi`*8i4@ELPx#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2ipe* z6&*4TFqww{00Ih0L_t(o!|jwYZ_`i|h0l90A=pWZqCmt33mc4x0ST228r6xNCaDM+ z=)w&A61L8vkwR&cUvI55u2!cxk4(#YURhqg8h#%3 z%~HuUE$dmiQn_*30RRy$%9SeKtiMJ+pXYEm^Z`hc$JtzNrPXXU0HF4`j^^5{z&Qq> zNIIIP?b)_{EjS--VAXY;rvO0G(=^SoZTm_vXCeRq7==R5bKSfU<0F#vGTH3)^;YZK z$gw=v-3&P(=_b?ZTitg13jkP4rMrjw2OoqG4CavZlgZSRZnx72`sC>Vp6fmsHI26< zrPPPNevfx|wC~5_@xTE|UrLF&OPQBv1~~HE_sLYMBBdOV9O%jP#=BlGwHW$)cXxKa&Sf&U zrBZt&4=(EZcE8^jAGfxKfwO2B$X?Fnlv1Bb{!AnivfuBE!~GxI=e`$~%9WXpSt`wR k3dLe{$wov(L_|#R7wsU~{(`-OR{#J207*qoM6N<$g1%=YIsgCw diff --git a/astrid/src/main/res/drawable/gl_pencil.png b/astrid/src/main/res/drawable/gl_pencil.png deleted file mode 100644 index d37b765be0e2b53529cff975e1aa947082cae0cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 290 zcmV+-0p0$IP)yf+FooRI*Vrwd%`r#OBe?1Hc^&~uKSHJ>)j$({{$ z!CP=Q{0|SoYj_y8a0vVhhrvr63Tym?hBe-C1|%%F{JO~~;DQD37h{7u;oPv`ow|Q> oZk%%zmQ%5<;Dd8d!1fVf086 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/astrid/src/main/res/layout/addon_list_container.xml b/astrid/src/main/res/layout/addon_list_container.xml deleted file mode 100644 index 7666d4a40..000000000 --- a/astrid/src/main/res/layout/addon_list_container.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - diff --git a/astrid/src/main/res/values/strings-core.xml b/astrid/src/main/res/values/strings-core.xml index eafa7f99c..367285e6e 100644 --- a/astrid/src/main/res/values/strings-core.xml +++ b/astrid/src/main/res/values/strings-core.xml @@ -639,24 +639,9 @@ - - Add-ons - Tasks Team - - Installed - - - Available - - - Free - - - Empty List! -