mirror of
https://github.com/nextcloud/android.git
synced 2024-11-26 23:28:42 +03:00
Remove classes not used more after changing the view of OC accounts
This commit is contained in:
parent
d3b07add37
commit
c4359ce393
4 changed files with 0 additions and 347 deletions
|
@ -156,7 +156,6 @@
|
||||||
<service android:name=".media.MediaService" />
|
<service android:name=".media.MediaService" />
|
||||||
|
|
||||||
<activity android:name=".ui.activity.PinCodeActivity" />
|
<activity android:name=".ui.activity.PinCodeActivity" />
|
||||||
<activity android:name=".ui.activity.AccountSelectActivity" android:uiOptions="none" android:label="@string/prefs_accounts"></activity>
|
|
||||||
<activity android:name=".ui.activity.ConflictsResolveActivity"/>
|
<activity android:name=".ui.activity.ConflictsResolveActivity"/>
|
||||||
<activity android:name=".ui.activity.GenericExplanationActivity"/>
|
<activity android:name=".ui.activity.GenericExplanationActivity"/>
|
||||||
<activity android:name=".ui.activity.ErrorsWhileCopyingHandlerActivity"/>
|
<activity android:name=".ui.activity.ErrorsWhileCopyingHandlerActivity"/>
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!--
|
|
||||||
ownCloud Android client application
|
|
||||||
|
|
||||||
Copyright (C) 2012 Bartek Przybylski
|
|
||||||
Copyright (C) 2012-2013 ownCloud Inc.
|
|
||||||
|
|
||||||
This program is free software: you can redistribute it and/or modify
|
|
||||||
it under the terms of the GNU General Public License version 2,
|
|
||||||
as published by the Free Software Foundation.
|
|
||||||
|
|
||||||
This program is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
GNU General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
-->
|
|
||||||
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
|
|
||||||
<item android:id="@+id/createAccount" android:title="@string/create_account" android:showAsAction="ifRoom|withText"></item>
|
|
||||||
|
|
||||||
|
|
||||||
</menu>
|
|
|
@ -1,53 +0,0 @@
|
||||||
/* ownCloud Android client application
|
|
||||||
* Copyright (C) 2014 ownCloud Inc.
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License version 2,
|
|
||||||
* as published by the Free Software Foundation.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
package com.owncloud.android.ui;
|
|
||||||
|
|
||||||
import android.content.Context;
|
|
||||||
import android.preference.Preference;
|
|
||||||
import android.util.AttributeSet;
|
|
||||||
import android.view.View;
|
|
||||||
import android.widget.TextView;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Allow multiline titles in preferences
|
|
||||||
*
|
|
||||||
* @author masensio
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
public class PreferenceMultiline extends Preference {
|
|
||||||
|
|
||||||
public PreferenceMultiline(Context context) {
|
|
||||||
super(context);
|
|
||||||
}
|
|
||||||
|
|
||||||
public PreferenceMultiline(Context context, AttributeSet attrs) {
|
|
||||||
super(context, attrs);
|
|
||||||
}
|
|
||||||
|
|
||||||
public PreferenceMultiline(Context context, AttributeSet attrs, int defStyle) {
|
|
||||||
super(context, attrs, defStyle);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onBindView(View view) {
|
|
||||||
super.onBindView(view);
|
|
||||||
TextView titleView = (TextView) view.findViewById(android.R.id.title);
|
|
||||||
titleView.setSingleLine(false);
|
|
||||||
titleView.setMaxLines(3);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,269 +0,0 @@
|
||||||
/* ownCloud Android client application
|
|
||||||
* Copyright (C) 2012 Bartek Przybylski
|
|
||||||
* Copyright (C) 2012-2013 ownCloud Inc.
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License version 2,
|
|
||||||
* as published by the Free Software Foundation.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
package com.owncloud.android.ui.activity;
|
|
||||||
|
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.LinkedList;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import android.accounts.Account;
|
|
||||||
import android.accounts.AccountManager;
|
|
||||||
import android.accounts.AccountManagerCallback;
|
|
||||||
import android.accounts.AccountManagerFuture;
|
|
||||||
import android.content.Context;
|
|
||||||
import android.content.Intent;
|
|
||||||
import android.os.Bundle;
|
|
||||||
import android.os.Handler;
|
|
||||||
import android.view.ContextMenu;
|
|
||||||
import android.view.View;
|
|
||||||
import android.view.ViewGroup;
|
|
||||||
import android.view.ContextMenu.ContextMenuInfo;
|
|
||||||
import android.widget.AdapterView.AdapterContextMenuInfo;
|
|
||||||
import android.widget.CheckedTextView;
|
|
||||||
import android.widget.ListView;
|
|
||||||
import android.widget.SimpleAdapter;
|
|
||||||
import android.widget.TextView;
|
|
||||||
|
|
||||||
import com.actionbarsherlock.app.ActionBar;
|
|
||||||
import com.actionbarsherlock.app.SherlockListActivity;
|
|
||||||
import com.actionbarsherlock.view.Menu;
|
|
||||||
import com.actionbarsherlock.view.MenuInflater;
|
|
||||||
import com.actionbarsherlock.view.MenuItem;
|
|
||||||
import com.owncloud.android.authentication.AuthenticatorActivity;
|
|
||||||
import com.owncloud.android.authentication.AccountUtils;
|
|
||||||
import com.owncloud.android.lib.common.accounts.AccountUtils.Constants;
|
|
||||||
import com.owncloud.android.utils.DisplayUtils;
|
|
||||||
import com.owncloud.android.utils.Log_OC;
|
|
||||||
import com.owncloud.android.MainApp;
|
|
||||||
import com.owncloud.android.R;
|
|
||||||
|
|
||||||
|
|
||||||
public class AccountSelectActivity extends SherlockListActivity implements
|
|
||||||
AccountManagerCallback<Boolean> {
|
|
||||||
|
|
||||||
private static final String TAG = "AccountSelectActivity";
|
|
||||||
|
|
||||||
private static final String PREVIOUS_ACCOUNT_KEY = "ACCOUNT";
|
|
||||||
|
|
||||||
private final Handler mHandler = new Handler();
|
|
||||||
private Account mPreviousAccount = null;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onCreate(Bundle savedInstanceState) {
|
|
||||||
super.onCreate(savedInstanceState);
|
|
||||||
|
|
||||||
if (savedInstanceState != null) {
|
|
||||||
mPreviousAccount = savedInstanceState.getParcelable(PREVIOUS_ACCOUNT_KEY);
|
|
||||||
} else {
|
|
||||||
mPreviousAccount = AccountUtils.getCurrentOwnCloudAccount(this);
|
|
||||||
}
|
|
||||||
|
|
||||||
ActionBar actionBar = getSupportActionBar();
|
|
||||||
actionBar.setIcon(DisplayUtils.getSeasonalIconId());
|
|
||||||
actionBar.setDisplayShowTitleEnabled(true);
|
|
||||||
actionBar.setDisplayHomeAsUpEnabled(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onResume() {
|
|
||||||
super.onResume();
|
|
||||||
populateAccountList();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onPause() {
|
|
||||||
if (this.isFinishing()) {
|
|
||||||
Account current = AccountUtils.getCurrentOwnCloudAccount(this);
|
|
||||||
if ((mPreviousAccount == null && current != null) ||
|
|
||||||
(mPreviousAccount != null && !mPreviousAccount.equals(current))) {
|
|
||||||
/// the account set as default changed since this activity was created
|
|
||||||
|
|
||||||
// restart the main activity
|
|
||||||
Intent i = new Intent(this, FileDisplayActivity.class);
|
|
||||||
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
|
|
||||||
startActivity(i);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
super.onPause();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean onCreateOptionsMenu(Menu menu) {
|
|
||||||
// Show Create Account if Multiaccount is enabled
|
|
||||||
if (getResources().getBoolean(R.bool.multiaccount_support)) {
|
|
||||||
MenuInflater inflater = getSherlock().getMenuInflater();
|
|
||||||
inflater.inflate(R.menu.account_picker, menu);
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onCreateContextMenu(ContextMenu menu, View v,
|
|
||||||
ContextMenuInfo menuInfo) {
|
|
||||||
getMenuInflater().inflate(R.menu.account_picker_long_click, menu);
|
|
||||||
super.onCreateContextMenu(menu, v, menuInfo);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onListItemClick(ListView l, View v, int position, long id) {
|
|
||||||
String accountName = ((TextView) v.findViewById(android.R.id.text1))
|
|
||||||
.getText().toString();
|
|
||||||
AccountUtils.setCurrentOwnCloudAccount(this, accountName);
|
|
||||||
finish(); // immediate exit
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean onMenuItemSelected(int featureId, MenuItem item) {
|
|
||||||
if (item.getItemId() == R.id.createAccount) {
|
|
||||||
/*Intent intent = new Intent(
|
|
||||||
android.provider.Settings.ACTION_ADD_ACCOUNT);
|
|
||||||
intent.putExtra("authorities",
|
|
||||||
new String[] { MainApp.getAuthTokenType() });
|
|
||||||
startActivity(intent);*/
|
|
||||||
AccountManager am = AccountManager.get(getApplicationContext());
|
|
||||||
am.addAccount(MainApp.getAccountType(),
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
this,
|
|
||||||
null,
|
|
||||||
null);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Called when the user clicked on an item into the context menu created at
|
|
||||||
* {@link #onCreateContextMenu(ContextMenu, View, ContextMenuInfo)} for every
|
|
||||||
* ownCloud {@link Account} , containing 'secondary actions' for them.
|
|
||||||
*
|
|
||||||
* {@inheritDoc}}
|
|
||||||
*/
|
|
||||||
@SuppressWarnings("unchecked")
|
|
||||||
@Override
|
|
||||||
public boolean onContextItemSelected(android.view.MenuItem item) {
|
|
||||||
AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
|
|
||||||
int index = info.position;
|
|
||||||
HashMap<String, String> map = null;
|
|
||||||
try {
|
|
||||||
map = (HashMap<String, String>) getListAdapter().getItem(index);
|
|
||||||
} catch (ClassCastException e) {
|
|
||||||
Log_OC.wtf(TAG, "getitem(index) from list adapter did not return hashmap, bailing out");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
String accountName = map.get("NAME");
|
|
||||||
AccountManager am = (AccountManager) getSystemService(ACCOUNT_SERVICE);
|
|
||||||
Account accounts[] = am.getAccountsByType(MainApp.getAccountType());
|
|
||||||
for (Account a : accounts) {
|
|
||||||
if (a.name.equals(accountName)) {
|
|
||||||
if (item.getItemId() == R.id.change_password) {
|
|
||||||
Intent updateAccountCredentials = new Intent(this, AuthenticatorActivity.class);
|
|
||||||
updateAccountCredentials.putExtra(AuthenticatorActivity.EXTRA_ACCOUNT, a);
|
|
||||||
updateAccountCredentials.putExtra(AuthenticatorActivity.EXTRA_ACTION, AuthenticatorActivity.ACTION_UPDATE_TOKEN);
|
|
||||||
startActivity(updateAccountCredentials);
|
|
||||||
|
|
||||||
} else if (item.getItemId() == R.id.delete_account) {
|
|
||||||
am.removeAccount(a, this, mHandler);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void populateAccountList() {
|
|
||||||
AccountManager am = (AccountManager) getSystemService(ACCOUNT_SERVICE);
|
|
||||||
Account accounts[] = am
|
|
||||||
.getAccountsByType(MainApp.getAccountType());
|
|
||||||
if (am.getAccountsByType(MainApp.getAccountType()).length == 0) {
|
|
||||||
// Show create account screen if there isn't any account
|
|
||||||
am.addAccount(MainApp.getAccountType(),
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
null,
|
|
||||||
this,
|
|
||||||
null,
|
|
||||||
null);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
LinkedList<HashMap<String, String>> ll = new LinkedList<HashMap<String, String>>();
|
|
||||||
for (Account a : accounts) {
|
|
||||||
HashMap<String, String> h = new HashMap<String, String>();
|
|
||||||
h.put("NAME", a.name);
|
|
||||||
h.put("VER",
|
|
||||||
"ownCloud version: "
|
|
||||||
+ am.getUserData(a,
|
|
||||||
Constants.KEY_OC_VERSION));
|
|
||||||
ll.add(h);
|
|
||||||
}
|
|
||||||
|
|
||||||
setListAdapter(new AccountCheckedSimpleAdepter(this, ll,
|
|
||||||
android.R.layout.simple_list_item_single_choice,
|
|
||||||
new String[] { "NAME" }, new int[] { android.R.id.text1 }));
|
|
||||||
registerForContextMenu(getListView());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void run(AccountManagerFuture<Boolean> future) {
|
|
||||||
if (future.isDone()) {
|
|
||||||
Account a = AccountUtils.getCurrentOwnCloudAccount(this);
|
|
||||||
String accountName = "";
|
|
||||||
if (a == null) {
|
|
||||||
Account[] accounts = AccountManager.get(this)
|
|
||||||
.getAccountsByType(MainApp.getAccountType());
|
|
||||||
if (accounts.length != 0)
|
|
||||||
accountName = accounts[0].name;
|
|
||||||
AccountUtils.setCurrentOwnCloudAccount(this, accountName);
|
|
||||||
}
|
|
||||||
populateAccountList();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private class AccountCheckedSimpleAdepter extends SimpleAdapter {
|
|
||||||
private Account mCurrentAccount;
|
|
||||||
private List<? extends Map<String, ?>> mPrivateData;
|
|
||||||
|
|
||||||
public AccountCheckedSimpleAdepter(Context context,
|
|
||||||
List<? extends Map<String, ?>> data, int resource,
|
|
||||||
String[] from, int[] to) {
|
|
||||||
super(context, data, resource, from, to);
|
|
||||||
mCurrentAccount = AccountUtils
|
|
||||||
.getCurrentOwnCloudAccount(AccountSelectActivity.this);
|
|
||||||
mPrivateData = data;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public View getView(int position, View convertView, ViewGroup parent) {
|
|
||||||
View v = super.getView(position, convertView, parent);
|
|
||||||
CheckedTextView ctv = (CheckedTextView) v
|
|
||||||
.findViewById(android.R.id.text1);
|
|
||||||
if (mPrivateData.get(position).get("NAME")
|
|
||||||
.equals(mCurrentAccount.name)) {
|
|
||||||
ctv.setChecked(true);
|
|
||||||
}
|
|
||||||
return v;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
Loading…
Reference in a new issue