mirror of
https://github.com/Kunzisoft/KeePassDX.git
synced 2025-12-04 15:49:33 +01:00
Replace ListActivity with regular Activity for GroupList
This commit is contained in:
@@ -30,6 +30,7 @@ import android.view.Menu;
|
||||
import android.view.MenuInflater;
|
||||
import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
import android.widget.AdapterView;
|
||||
import android.widget.BaseAdapter;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.ListAdapter;
|
||||
@@ -50,6 +51,9 @@ import com.keepassdroid.view.ClickView;
|
||||
import com.keepassdroid.view.GroupViewOnlyView;
|
||||
|
||||
public abstract class GroupBaseActivity extends LockCloseListActivity {
|
||||
protected ListView mList;
|
||||
protected ListAdapter mAdapter;
|
||||
|
||||
public static final String KEY_ENTRY = "entry";
|
||||
public static final String KEY_MODE = "mode";
|
||||
|
||||
@@ -68,18 +72,12 @@ public abstract class GroupBaseActivity extends LockCloseListActivity {
|
||||
Database db = App.getDB();
|
||||
if ( db.dirty.contains(mGroup) ) {
|
||||
db.dirty.remove(mGroup);
|
||||
BaseAdapter adapter = (BaseAdapter) getListAdapter();
|
||||
adapter.notifyDataSetChanged();
|
||||
|
||||
((BaseAdapter) mAdapter).notifyDataSetChanged();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onListItemClick(ListView l, View v, int position, long id) {
|
||||
super.onListItemClick(l, v, position, id);
|
||||
|
||||
ListAdapter adapt = getListAdapter();
|
||||
ClickView cv = (ClickView) adapt.getView(position, null, null);
|
||||
ClickView cv = (ClickView) mAdapter.getView(position, null, null);
|
||||
cv.onClick();
|
||||
|
||||
}
|
||||
@@ -106,9 +104,9 @@ public abstract class GroupBaseActivity extends LockCloseListActivity {
|
||||
}
|
||||
|
||||
protected void styleScrollBars() {
|
||||
ListView lv = getListView();
|
||||
lv.setScrollBarStyle(View.SCROLLBARS_INSIDE_INSET);
|
||||
lv.setTextFilterEnabled(true);
|
||||
ensureCorrectListView();
|
||||
mList.setScrollBarStyle(View.SCROLLBARS_INSIDE_INSET);
|
||||
mList.setTextFilterEnabled(true);
|
||||
|
||||
}
|
||||
|
||||
@@ -136,6 +134,29 @@ public abstract class GroupBaseActivity extends LockCloseListActivity {
|
||||
App.getDB().drawFactory.assignDrawableTo(iv, getResources(), mGroup.getIcon());
|
||||
}
|
||||
}
|
||||
|
||||
protected void setListAdapter(ListAdapter adapter) {
|
||||
ensureCorrectListView();
|
||||
mAdapter = adapter;
|
||||
mList.setAdapter(adapter);
|
||||
}
|
||||
|
||||
protected ListView getListView() {
|
||||
ensureCorrectListView();
|
||||
return mList;
|
||||
}
|
||||
|
||||
private void ensureCorrectListView(){
|
||||
mList = (ListView)findViewById(R.id.group_list);
|
||||
mList.setOnItemClickListener(
|
||||
new AdapterView.OnItemClickListener() {
|
||||
public void onItemClick(AdapterView<?> parent, View v, int position, long id)
|
||||
{
|
||||
onListItemClick((ListView)parent, v, position, id);
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onCreateOptionsMenu(Menu menu) {
|
||||
@@ -229,8 +250,7 @@ public abstract class GroupBaseActivity extends LockCloseListActivity {
|
||||
db.dirty.remove(mGroup);
|
||||
|
||||
// Tell the adapter to refresh it's list
|
||||
BaseAdapter adapter = (BaseAdapter) getListAdapter();
|
||||
adapter.notifyDataSetChanged();
|
||||
((BaseAdapter) mAdapter).notifyDataSetChanged();
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -19,11 +19,11 @@
|
||||
*/
|
||||
package com.keepassdroid;
|
||||
|
||||
import android.app.ListActivity;
|
||||
import android.app.Activity;
|
||||
|
||||
import com.keepassdroid.timeout.TimeoutHelper;
|
||||
|
||||
public abstract class LockingListActivity extends ListActivity {
|
||||
public abstract class LockingListActivity extends Activity {
|
||||
@Override
|
||||
protected void onPause() {
|
||||
super.onPause();
|
||||
|
||||
@@ -53,7 +53,7 @@ public class GroupViewOnlyView extends RelativeLayout {
|
||||
View divider2 = findViewById(R.id.divider2);
|
||||
divider2.setVisibility(INVISIBLE);
|
||||
|
||||
View list = findViewById(android.R.id.list);
|
||||
View list = findViewById(R.id.group_list);
|
||||
LayoutParams lp = (RelativeLayout.LayoutParams) list.getLayoutParams();
|
||||
lp.addRule(ALIGN_PARENT_BOTTOM, TRUE);
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
android:scaleType="fitXY"
|
||||
android:tint="@color/blue_highlight"
|
||||
android:src="@android:drawable/divider_horizontal_dark"/>
|
||||
<ListView android:id="@android:id/list"
|
||||
<ListView android:id="@+id/group_list"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_above="@id/divider2"
|
||||
|
||||
Reference in New Issue
Block a user