diff options
author | Kenny Root <kenny@the-b.org> | 2015-09-11 10:57:30 -0700 |
---|---|---|
committer | Kenny Root <kenny@the-b.org> | 2015-09-11 11:01:56 -0700 |
commit | 2baa56c2629532adad82d0f67abe9dd568a24760 (patch) | |
tree | a2389ad30251f44dfa9c388cf8c1cee18e5c1338 /app/src/main/java/org/connectbot/ColorsActivity.java | |
parent | 5d2ebeaa409fb2f74fe9eb799793cc004f9d9d29 (diff) | |
download | connectbot-2baa56c2629532adad82d0f67abe9dd568a24760.tar.gz connectbot-2baa56c2629532adad82d0f67abe9dd568a24760.tar.bz2 connectbot-2baa56c2629532adad82d0f67abe9dd568a24760.zip |
Revert "Never cache instances of the HostDatabase"
This reverts commit 57afa9bdc5b269a48bd27fc8455cab4cb956d02a.
This won't work with injection and makes testing a bit harder, so revert
it.
Diffstat (limited to 'app/src/main/java/org/connectbot/ColorsActivity.java')
-rw-r--r-- | app/src/main/java/org/connectbot/ColorsActivity.java | 37 |
1 files changed, 26 insertions, 11 deletions
diff --git a/app/src/main/java/org/connectbot/ColorsActivity.java b/app/src/main/java/org/connectbot/ColorsActivity.java index 8725a51..55904c5 100644 --- a/app/src/main/java/org/connectbot/ColorsActivity.java +++ b/app/src/main/java/org/connectbot/ColorsActivity.java @@ -56,6 +56,7 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC private int mColorScheme; private List<Integer> mColorList; + private HostDatabase mHostDb; private int mCurrentColor = 0; @@ -73,10 +74,10 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC mColorScheme = HostDatabase.DEFAULT_COLOR_SCHEME; - HostDatabase hostDb = HostDatabase.get(this); + mHostDb = HostDatabase.get(this); - mColorList = Arrays.asList(hostDb.getColorsForScheme(mColorScheme)); - mDefaultColors = hostDb.getDefaultColorsForScheme(mColorScheme); + mColorList = Arrays.asList(mHostDb.getColorsForScheme(mColorScheme)); + mDefaultColors = mHostDb.getDefaultColorsForScheme(mColorScheme); mColorGrid = (GridView) findViewById(R.id.color_grid); mColorGrid.setAdapter(new ColorsAdapter(true)); @@ -94,6 +95,24 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC mBgSpinner.setOnItemSelectedListener(this); } + @Override + protected void onDestroy() { + super.onDestroy(); + + if (mHostDb != null) { + mHostDb = null; + } + } + + @Override + protected void onResume() { + super.onResume(); + + if (mHostDb == null) { + mHostDb = HostDatabase.get(this); + } + } + private class ColorsAdapter extends BaseAdapter { private final boolean mSquareViews; private final int mResourceLabel; @@ -285,8 +304,7 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC public void onNothingSelected(AdapterView<?> arg0) { } public void colorChanged(int value) { - HostDatabase hostDb = HostDatabase.get(this); - hostDb.setGlobalColor(mCurrentColor, value); + mHostDb.setGlobalColor(mCurrentColor, value); mColorList.set(mCurrentColor, value); mColorGrid.invalidateViews(); } @@ -307,8 +325,7 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC } if (needUpdate) { - HostDatabase hostDb = HostDatabase.get(this); - hostDb.setDefaultColorsForScheme(mColorScheme, mDefaultColors[0], mDefaultColors[1]); + mHostDb.setDefaultColorsForScheme(mColorScheme, mDefaultColors[0], mDefaultColors[1]); } } @@ -322,12 +339,10 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC reset.setIcon(android.R.drawable.ic_menu_revert); reset.setOnMenuItemClickListener(new OnMenuItemClickListener() { public boolean onMenuItemClick(MenuItem arg0) { - HostDatabase hostDb = HostDatabase.get(ColorsActivity.this); - // Reset each individual color to defaults. for (int i = 0; i < Colors.defaults.length; i++) { if (!mColorList.get(i).equals(Colors.defaults[i])) { - hostDb.setGlobalColor(i, Colors.defaults[i]); + mHostDb.setGlobalColor(i, Colors.defaults[i]); mColorList.set(i, Colors.defaults[i]); } } @@ -336,7 +351,7 @@ public class ColorsActivity extends Activity implements OnItemClickListener, OnC // Reset the default FG/BG colors as well. mFgSpinner.setSelection(HostDatabase.DEFAULT_FG_COLOR); mBgSpinner.setSelection(HostDatabase.DEFAULT_BG_COLOR); - hostDb.setDefaultColorsForScheme(HostDatabase.DEFAULT_COLOR_SCHEME, + mHostDb.setDefaultColorsForScheme(HostDatabase.DEFAULT_COLOR_SCHEME, HostDatabase.DEFAULT_FG_COLOR, HostDatabase.DEFAULT_BG_COLOR); return true; |