diff --git a/app/src/main/java/eu/faircode/email/ActivitySetup.java b/app/src/main/java/eu/faircode/email/ActivitySetup.java index ebfde82915..434bf1996e 100644 --- a/app/src/main/java/eu/faircode/email/ActivitySetup.java +++ b/app/src/main/java/eu/faircode/email/ActivitySetup.java @@ -170,6 +170,31 @@ public class ActivitySetup extends ActivityBilling implements FragmentManager.On } }); + drawerList.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { + @Override + public boolean onItemLongClick(AdapterView parent, View view, int position, long id) { + DrawerItem item = (DrawerItem) parent.getAdapter().getItem(position); + if (item.getId() == R.string.menu_privacy) { + new SimpleTask() { + @Override + protected Void onExecute(Context context, Bundle args) { + int count = DB.getInstance(context).contact().clearContacts(); + Log.i("Cleared contacts=" + count); + return null; + } + + @Override + protected void onException(Bundle args, Throwable ex) { + Helper.unexpectedError(ActivitySetup.this, ActivitySetup.this, ex); + } + }.execute(ActivitySetup.this, new Bundle(), "setup:privacy"); + + return true; + } + return false; + } + }); + PackageManager pm = getPackageManager(); DrawerAdapter drawerArray = new DrawerAdapter(this); diff --git a/app/src/main/java/eu/faircode/email/DaoContact.java b/app/src/main/java/eu/faircode/email/DaoContact.java index 9e5847d058..8148a0b1dd 100644 --- a/app/src/main/java/eu/faircode/email/DaoContact.java +++ b/app/src/main/java/eu/faircode/email/DaoContact.java @@ -55,4 +55,7 @@ public interface DaoContact { @Update int updateContact(EntityContact contact); + + @Query("DELETE from contact") + int clearContacts(); }