From 6f59cf588c3b4eeada648cd9e0859f2ee1b9f3cc Mon Sep 17 00:00:00 2001 From: Sergey Eremin Date: Wed, 12 Apr 2017 16:13:56 +0300 Subject: [PATCH] A bit of refactoring --- .../yeriomin/yalpstore/AppListActivity.java | 24 ++++--------------- .../yalpstore/CategoryAppsActivity.java | 2 +- .../yalpstore/DownloadOrInstallFragment.java | 12 ++++++---- .../yalpstore/SearchResultActivity.java | 2 +- .../yeriomin/yalpstore/UpdatableAppsTask.java | 2 -- 5 files changed, 14 insertions(+), 28 deletions(-) diff --git a/app/src/main/java/com/github/yeriomin/yalpstore/AppListActivity.java b/app/src/main/java/com/github/yeriomin/yalpstore/AppListActivity.java index dd4ebbd94..3f0ef04be 100644 --- a/app/src/main/java/com/github/yeriomin/yalpstore/AppListActivity.java +++ b/app/src/main/java/com/github/yeriomin/yalpstore/AppListActivity.java @@ -25,11 +25,8 @@ abstract public class AppListActivity extends YalpStoreActivity { protected List> data = new ArrayList<>(); protected Map apps = new HashMap<>(); - protected ListAdapter listAdapter; protected ListView listView; - private boolean finishedStart = false; - abstract protected void loadApps(); @Override @@ -37,7 +34,6 @@ abstract public class AppListActivity extends YalpStoreActivity { super.onCreate(savedInstanceState); setContentView(R.layout.applist_activity_layout); - setListAdapter(getSimpleListAdapter()); getListView().setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, int position, long id) { @@ -59,10 +55,9 @@ abstract public class AppListActivity extends YalpStoreActivity { if (emptyView != null) { listView.setEmptyView(emptyView); } - if (finishedStart) { - setListAdapter(listAdapter); + if (null == listView.getAdapter()) { + listView.setAdapter(getSimpleListAdapter()); } - finishedStart = true; } protected Map formatApp(App app) { @@ -77,13 +72,13 @@ abstract public class AppListActivity extends YalpStoreActivity { data.add(this.formatApp(app)); apps.put(app.getPackageName(), app); } - ((SimpleAdapter) getListAdapter()).notifyDataSetChanged(); + ((SimpleAdapter) getListView().getAdapter()).notifyDataSetChanged(); } protected void clearApps() { apps.clear(); data.clear(); - ((SimpleAdapter) getListAdapter()).notifyDataSetChanged(); + ((SimpleAdapter) getListView().getAdapter()).notifyDataSetChanged(); } private SimpleAdapter getSimpleListAdapter() { @@ -102,18 +97,7 @@ abstract public class AppListActivity extends YalpStoreActivity { return adapter; } - public void setListAdapter(ListAdapter adapter) { - synchronized (this) { - listAdapter = adapter; - listView.setAdapter(adapter); - } - } - public ListView getListView() { return listView; } - - public ListAdapter getListAdapter() { - return listAdapter; - } } diff --git a/app/src/main/java/com/github/yeriomin/yalpstore/CategoryAppsActivity.java b/app/src/main/java/com/github/yeriomin/yalpstore/CategoryAppsActivity.java index 1c1cb16ce..2df919133 100644 --- a/app/src/main/java/com/github/yeriomin/yalpstore/CategoryAppsActivity.java +++ b/app/src/main/java/com/github/yeriomin/yalpstore/CategoryAppsActivity.java @@ -32,7 +32,7 @@ public class CategoryAppsActivity extends EndlessScrollActivity { categoryId = newCategoryId; setTitle(new CategoryManager(this).getCategoryName(categoryId)); loadApps(); - ((SimpleAdapter) getListAdapter()).notifyDataSetChanged(); + ((SimpleAdapter) getListView().getAdapter()).notifyDataSetChanged(); } } diff --git a/app/src/main/java/com/github/yeriomin/yalpstore/DownloadOrInstallFragment.java b/app/src/main/java/com/github/yeriomin/yalpstore/DownloadOrInstallFragment.java index 4ec918b44..8cbd05f0a 100644 --- a/app/src/main/java/com/github/yeriomin/yalpstore/DownloadOrInstallFragment.java +++ b/app/src/main/java/com/github/yeriomin/yalpstore/DownloadOrInstallFragment.java @@ -80,10 +80,14 @@ public class DownloadOrInstallFragment extends DetailsFragment { } public void unregisterReceivers() { - activity.unregisterReceiver(downloadReceiver); - downloadReceiver = null; - activity.unregisterReceiver(installReceiver); - installReceiver = null; + if (null != downloadReceiver) { + activity.unregisterReceiver(downloadReceiver); + downloadReceiver = null; + } + if (null != installReceiver) { + activity.unregisterReceiver(installReceiver); + installReceiver = null; + } } public void registerReceivers() { diff --git a/app/src/main/java/com/github/yeriomin/yalpstore/SearchResultActivity.java b/app/src/main/java/com/github/yeriomin/yalpstore/SearchResultActivity.java index 45fbbc288..976a4c2bd 100644 --- a/app/src/main/java/com/github/yeriomin/yalpstore/SearchResultActivity.java +++ b/app/src/main/java/com/github/yeriomin/yalpstore/SearchResultActivity.java @@ -65,7 +65,7 @@ public class SearchResultActivity extends EndlessScrollActivity { }; task.setCategoryManager(new CategoryManager(this)); prepareTask(task).execute(query, categoryId); - ((SimpleAdapter) getListAdapter()).notifyDataSetChanged(); + ((SimpleAdapter) getListView().getAdapter()).notifyDataSetChanged(); } private String getQuery(Intent intent) { diff --git a/app/src/main/java/com/github/yeriomin/yalpstore/UpdatableAppsTask.java b/app/src/main/java/com/github/yeriomin/yalpstore/UpdatableAppsTask.java index 1ac0c2d59..4f2f0730a 100644 --- a/app/src/main/java/com/github/yeriomin/yalpstore/UpdatableAppsTask.java +++ b/app/src/main/java/com/github/yeriomin/yalpstore/UpdatableAppsTask.java @@ -93,8 +93,6 @@ class UpdatableAppsTask extends GoogleApiAsyncTask { installedApp.setOfferType(appFromMarket.getOfferType()); installedApp.setPermissions(appFromMarket.getPermissions()); if (installedApp.getVersionCode() < appFromMarket.getVersionCode()) { - installedApp.setUpdated(appFromMarket.getUpdated()); - installedApp.setVersionCode(appFromMarket.getVersionCode()); appFromMarket.setDisplayName(installedApp.getDisplayName()); appFromMarket.setIcon(installedApp.getIcon()); appFromMarket.setInstalled(true);