mirror of
https://github.com/nerzhul/ownCloud-SMS-App.git
synced 2026-08-21 05:13:27 +00:00
Change a little bit account menu to show actions to do on an account & do some code cleanups
This commit is contained in:
+49
@@ -0,0 +1,49 @@
|
||||
package fr.unix_experience.owncloud_sms.activities.remote_account;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.view.View;
|
||||
import android.widget.ArrayAdapter;
|
||||
import android.widget.ListView;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import fr.unix_experience.android_lib.AppCompatListActivity;
|
||||
import fr.unix_experience.owncloud_sms.R;
|
||||
|
||||
public class AccountActionsActivity extends AppCompatListActivity {
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
setContentView(R.layout.activity_account_actions);
|
||||
|
||||
ArrayList<String> itemList = new ArrayList<>();
|
||||
ArrayAdapter<String> adp = new ArrayAdapter<>(getBaseContext(),
|
||||
android.R.layout.simple_dropdown_item_1line, itemList);
|
||||
setListAdapter(adp);
|
||||
|
||||
// Create item list
|
||||
itemList.add(getBaseContext().getString(R.string.restore_all_messages));
|
||||
|
||||
adp.notifyDataSetChanged();
|
||||
|
||||
// Fetch account name from intent
|
||||
_accountName = getIntent().getStringExtra("account");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onListItemClick(ListView l, View v, int position, long id) {
|
||||
switch (position) {
|
||||
case 0:
|
||||
Intent intent = new Intent(this, RestoreMessagesActivity.class);
|
||||
intent.putExtra("account", _accountName);
|
||||
startActivity(intent);
|
||||
break;
|
||||
default: break; // Unhandled
|
||||
}
|
||||
}
|
||||
|
||||
private String _accountName = "";
|
||||
private static final String TAG = AccountActionsActivity.class.getSimpleName();
|
||||
}
|
||||
+7
-6
@@ -12,8 +12,7 @@ import fr.unix_experience.android_lib.AppCompatListActivity;
|
||||
import fr.unix_experience.owncloud_sms.R;
|
||||
|
||||
public class AccountListActivity extends AppCompatListActivity {
|
||||
ArrayList<Account> listItems = new ArrayList<>();
|
||||
AndroidAccountAdapter adapter;
|
||||
|
||||
@Override
|
||||
public void onCreate(Bundle icicle) {
|
||||
super.onCreate(icicle);
|
||||
@@ -22,16 +21,18 @@ public class AccountListActivity extends AppCompatListActivity {
|
||||
|
||||
setContentView(R.layout.restore_activity_accountlist);
|
||||
|
||||
adapter = new AndroidAccountAdapter(this,
|
||||
ArrayList<Account> itemList = new ArrayList<>();
|
||||
|
||||
AndroidAccountAdapter adapter = new AndroidAccountAdapter(this,
|
||||
android.R.layout.simple_list_item_1,
|
||||
listItems,
|
||||
itemList,
|
||||
R.layout.account_list_item,
|
||||
R.id.accountname, ContactListActivity.class);
|
||||
R.id.accountname, AccountActionsActivity.class);
|
||||
setListAdapter(adapter);
|
||||
|
||||
Account[] accountList =
|
||||
_accountMgr.getAccountsByType(getString(R.string.account_type));
|
||||
Collections.addAll(listItems, accountList);
|
||||
Collections.addAll(itemList, accountList);
|
||||
|
||||
adapter.notifyDataSetChanged();
|
||||
|
||||
|
||||
+6
-3
@@ -69,13 +69,15 @@ public class ContactListActivity extends AppCompatActivity implements ASyncConta
|
||||
final Spinner sp = (Spinner) findViewById(R.id.contact_spinner);
|
||||
mContactInfos = (LinearLayout) findViewById(R.id.contactinfos_layout);
|
||||
final ProgressBar contactProgressBar = (ProgressBar) findViewById(R.id.contactlist_pgbar);
|
||||
final ListView contactPhoneListView = (ListView) findViewById(R.id.contact_phonelistView);
|
||||
ListView contactPhoneListView = (ListView) findViewById(R.id.contact_phonelistView);
|
||||
mContactPhoneListAdapter = new RecoveryPhoneNumberListViewAdapter(getBaseContext());
|
||||
assert contactPhoneListView != null;
|
||||
contactPhoneListView.setAdapter(mContactPhoneListAdapter);
|
||||
|
||||
mContactInfos.setVisibility(View.INVISIBLE);
|
||||
|
||||
sp.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
|
||||
assert sp != null;
|
||||
sp.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
|
||||
@Override
|
||||
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
|
||||
mContactInfos.setVisibility(View.INVISIBLE);
|
||||
@@ -97,7 +99,8 @@ public class ContactListActivity extends AppCompatActivity implements ASyncConta
|
||||
for (final Account element : myAccountList) {
|
||||
if (element.name.equals(accountName)) {
|
||||
// Load "contacts"
|
||||
contactProgressBar.setVisibility(View.VISIBLE);
|
||||
assert contactProgressBar != null;
|
||||
contactProgressBar.setVisibility(View.VISIBLE);
|
||||
new ContactLoadTask(element, getBaseContext(), mAdapter, mObjects, mLayout, contactProgressBar, mContactInfos).execute();
|
||||
|
||||
// Add refresh handler
|
||||
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
package fr.unix_experience.owncloud_sms.activities.remote_account;
|
||||
|
||||
import android.os.Bundle;
|
||||
import android.support.v7.app.AppCompatActivity;
|
||||
|
||||
import fr.unix_experience.owncloud_sms.R;
|
||||
|
||||
public class RestoreMessagesActivity extends AppCompatActivity {
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_restore_messages);
|
||||
}
|
||||
}
|
||||
+16
-16
@@ -34,19 +34,19 @@ public class OCSMSNotificationUI {
|
||||
*
|
||||
* @see #cancel(Context)
|
||||
*/
|
||||
public static void notify(final Context context, final String titleString,
|
||||
final String contentString, final int number) {
|
||||
final Resources res = context.getResources();
|
||||
public static void notify(Context context, String titleString,
|
||||
String contentString, int number) {
|
||||
Resources res = context.getResources();
|
||||
|
||||
// This image is used as the notification's large icon (thumbnail).
|
||||
// TODO: Remove this if your notification has no relevant thumbnail.
|
||||
final Bitmap picture = BitmapFactory.decodeResource(res, R.drawable.ic_launcher);
|
||||
Bitmap picture = BitmapFactory.decodeResource(res, R.drawable.ic_launcher);
|
||||
|
||||
|
||||
final String ticker = (titleString.length() > 20) ? titleString.substring(0, 20) : titleString;
|
||||
final String title = res.getString(R.string.ui_notification_title_template, titleString);
|
||||
String ticker = (titleString.length() > 20) ? titleString.substring(0, 20) : titleString;
|
||||
String title = res.getString(R.string.ui_notification_title_template, titleString);
|
||||
|
||||
final NotificationCompat.Builder builder = new NotificationCompat.Builder(context)
|
||||
NotificationCompat.Builder builder = new NotificationCompat.Builder(context)
|
||||
|
||||
// Set appropriate defaults for the notification light, sound,
|
||||
// and vibration.
|
||||
@@ -76,17 +76,17 @@ public class OCSMSNotificationUI {
|
||||
.setSummaryText(titleString))
|
||||
.setAutoCancel(true);
|
||||
|
||||
notify(context, builder.build());
|
||||
OCSMSNotificationUI.notify(context, builder.build());
|
||||
}
|
||||
|
||||
@TargetApi(Build.VERSION_CODES.ECLAIR)
|
||||
private static void notify(final Context context, final Notification notification) {
|
||||
final NotificationManager nm = (NotificationManager) context
|
||||
private static void notify(Context context, Notification notification) {
|
||||
NotificationManager nm = (NotificationManager) context
|
||||
.getSystemService(Context.NOTIFICATION_SERVICE);
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ECLAIR) {
|
||||
nm.notify(NOTIFICATION_TAG, 0, notification);
|
||||
nm.notify(OCSMSNotificationUI.NOTIFICATION_TAG, 0, notification);
|
||||
} else {
|
||||
nm.notify(NOTIFICATION_TAG.hashCode(), notification);
|
||||
nm.notify(OCSMSNotificationUI.NOTIFICATION_TAG.hashCode(), notification);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -95,13 +95,13 @@ public class OCSMSNotificationUI {
|
||||
* {@link #notify(Context, String, int)}.
|
||||
*/
|
||||
@TargetApi(Build.VERSION_CODES.ECLAIR)
|
||||
public static void cancel(final Context context) {
|
||||
final NotificationManager nm = (NotificationManager) context
|
||||
public static void cancel(Context context) {
|
||||
NotificationManager nm = (NotificationManager) context
|
||||
.getSystemService(Context.NOTIFICATION_SERVICE);
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ECLAIR) {
|
||||
nm.cancel(NOTIFICATION_TAG, 0);
|
||||
nm.cancel(OCSMSNotificationUI.NOTIFICATION_TAG, 0);
|
||||
} else {
|
||||
nm.cancel(NOTIFICATION_TAG.hashCode());
|
||||
nm.cancel(OCSMSNotificationUI.NOTIFICATION_TAG.hashCode());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user