mirror of
https://github.com/nextcloud/android.git
synced 2024-10-23 04:26:01 +03:00
general menu/account list switch implemented (open: populate account list)
This commit is contained in:
parent
f82c4d96ba
commit
f41e567b90
9 changed files with 62 additions and 7 deletions
BIN
res/drawable-hdpi/ic_account_plus.png
Normal file
BIN
res/drawable-hdpi/ic_account_plus.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 657 B |
BIN
res/drawable-mdpi/ic_account_plus.png
Normal file
BIN
res/drawable-mdpi/ic_account_plus.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 398 B |
BIN
res/drawable-xhdpi/ic_account_plus.png
Normal file
BIN
res/drawable-xhdpi/ic_account_plus.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 677 B |
BIN
res/drawable-xxhdpi/ic_account_plus.png
Normal file
BIN
res/drawable-xxhdpi/ic_account_plus.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1 KiB |
|
@ -17,20 +17,47 @@
|
|||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<menu xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<group android:checkableBehavior="single">
|
||||
<!--
|
||||
standard menu
|
||||
all items in this group MUST have orderInCategory="0" set
|
||||
-->
|
||||
<group android:id="@+id/drawer_menu_standard" android:checkableBehavior="single">
|
||||
<item
|
||||
android:orderInCategory="0"
|
||||
android:id="@+id/nav_all_files"
|
||||
android:icon="@drawable/ic_folder_open"
|
||||
android:title="@string/drawer_item_all_files"/>
|
||||
<item
|
||||
android:orderInCategory="0"
|
||||
android:id="@+id/nav_uploads"
|
||||
android:icon="@drawable/ic_uploads"
|
||||
android:title="Uploads"/>
|
||||
</group>
|
||||
|
||||
<!-- add an id to the group to get a separator line -->
|
||||
<!--
|
||||
account list placeholder
|
||||
all items in this group MUST have orderInCategory="2" set
|
||||
all accounts are dynamically added with orderInCategory="1" set
|
||||
-->
|
||||
<group android:id="@+id/drawer_menu_accounts">
|
||||
<item
|
||||
android:orderInCategory="2"
|
||||
android:id="@+id/drawer_menu_account_add"
|
||||
android:icon="@drawable/ic_account_plus"
|
||||
android:title="@string/prefs_add_account"/>
|
||||
<item
|
||||
android:orderInCategory="2"
|
||||
android:id="@+id/drawer_menu_account_manage"
|
||||
android:icon="@drawable/ic_settings"
|
||||
android:title="@string/drawer_manage_accounts"/>
|
||||
</group>
|
||||
|
||||
<!--
|
||||
all items in this group MUST have orderInCategory="3" set
|
||||
-->
|
||||
<group>
|
||||
<item
|
||||
android:orderInCategory="3"
|
||||
android:id="@+id/nav_settings"
|
||||
android:icon="@drawable/ic_settings"
|
||||
android:title="@string/actionbar_settings"/>
|
||||
|
|
|
@ -27,6 +27,7 @@
|
|||
<item name="android:alertDialogTheme">@style/Theme.ownCloud.Dialog</item>
|
||||
<item name="alertDialogTheme">@style/ownCloud.AlertDialog</item>
|
||||
<item name="searchViewStyle">@style/ownCloud.SearchView</item>
|
||||
<item name="android:listDivider">@color/transparent</item>
|
||||
</style>
|
||||
|
||||
<style name="Theme.ownCloud.Toolbar.Drawer">
|
||||
|
|
|
@ -44,8 +44,13 @@
|
|||
<item name="alertDialogTheme">@style/ownCloud.AlertDialog</item>
|
||||
<item name="android:windowBackground">@color/background_color</item>
|
||||
<item name="searchViewStyle">@style/ownCloud.SearchView</item>
|
||||
<item name="android:listDivider">@color/transparent</item>
|
||||
</style>
|
||||
|
||||
<!-- separate style for Drawer activities needed for v21+ theming -->
|
||||
<style name="Theme.ownCloud.Toolbar.Drawer">
|
||||
</style>
|
||||
|
||||
<style name="Theme.ownCloud.noActionBar.Login" parent="Theme.ownCloud.Toolbar">
|
||||
<item name="colorAccent">@color/white</item>
|
||||
</style>
|
||||
|
|
|
@ -5,7 +5,7 @@ import android.graphics.Color;
|
|||
import android.graphics.ColorFilter;
|
||||
import android.graphics.Paint;
|
||||
import android.graphics.PixelFormat;
|
||||
import android.graphics.Rect;
|
||||
import android.graphics.RectF;
|
||||
import android.graphics.drawable.Drawable;
|
||||
|
||||
/**
|
||||
|
@ -35,7 +35,9 @@ public class TextDrawable extends Drawable {
|
|||
|
||||
@Override
|
||||
public void draw(Canvas canvas) {
|
||||
canvas.drawRect(0,-20,20,40,bg);
|
||||
RectF rf = new RectF(0,24,24,0);
|
||||
canvas.drawRoundRect(rf,24,24,bg);
|
||||
//canvas.drawRect(0,-20,20,40,bg);
|
||||
canvas.drawText(text, 4, 6, paint);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package com.owncloud.android.ui.activity;
|
||||
|
||||
import android.accounts.AccountManager;
|
||||
import android.content.Intent;
|
||||
import android.content.res.Configuration;
|
||||
import android.os.Bundle;
|
||||
|
@ -7,13 +8,17 @@ import android.support.design.widget.NavigationView;
|
|||
import android.support.v4.view.GravityCompat;
|
||||
import android.support.v4.widget.DrawerLayout;
|
||||
import android.support.v7.app.ActionBarDrawerToggle;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.owncloud.android.MainApp;
|
||||
import com.owncloud.android.R;
|
||||
import com.owncloud.android.datamodel.OCFile;
|
||||
import com.owncloud.android.ui.TextDrawable;
|
||||
|
||||
/**
|
||||
* Base class to handle setup of the drawer implementation.
|
||||
|
@ -22,6 +27,7 @@ public abstract class DrawerActivity extends ToolbarActivity {
|
|||
// Navigation Drawer
|
||||
private DrawerLayout mDrawerLayout;
|
||||
private ActionBarDrawerToggle mDrawerToggle;
|
||||
private NavigationView mNavigationView;
|
||||
private ImageView mAccountChooserToggle;
|
||||
|
||||
private boolean mIsAccountChooserActive;
|
||||
|
@ -32,9 +38,9 @@ public abstract class DrawerActivity extends ToolbarActivity {
|
|||
protected void setupDrawer() {
|
||||
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
|
||||
|
||||
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
|
||||
if (navigationView != null) {
|
||||
setupDrawerContent(navigationView);
|
||||
mNavigationView = (NavigationView) findViewById(R.id.nav_view);
|
||||
if (mNavigationView != null) {
|
||||
setupDrawerContent(mNavigationView);
|
||||
mAccountChooserToggle = (ImageView) findNavigationViewChildById(R.id.drawer_account_chooser_toogle);
|
||||
mAccountChooserToggle.setImageResource(R.drawable.ic_down);
|
||||
mIsAccountChooserActive = false;
|
||||
|
@ -137,11 +143,20 @@ public abstract class DrawerActivity extends ToolbarActivity {
|
|||
Preferences.class);
|
||||
startActivity(settingsIntent);
|
||||
break;
|
||||
case R.id.drawer_menu_account_add:
|
||||
AccountManager am = AccountManager.get(getApplicationContext());
|
||||
am.addAccount(MainApp.getAccountType(), null, null, null, DrawerActivity.this,
|
||||
null, null);
|
||||
case R.id.drawer_menu_account_manage:
|
||||
Toast.makeText(getApplicationContext(),"Not implemented yet",Toast.LENGTH_SHORT);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
});
|
||||
|
||||
// hide accounts
|
||||
mNavigationView.getMenu().setGroupVisible(R.id.drawer_menu_accounts, false);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -236,9 +251,14 @@ public abstract class DrawerActivity extends ToolbarActivity {
|
|||
if (mIsAccountChooserActive) {
|
||||
// TODO close accounts list and display drawer menu again
|
||||
mAccountChooserToggle.setImageResource(R.drawable.ic_down);
|
||||
mNavigationView.getMenu().setGroupVisible(R.id.drawer_menu_accounts, false);
|
||||
mNavigationView.getMenu().setGroupVisible(R.id.drawer_menu_standard, true);
|
||||
|
||||
} else {
|
||||
// TODO show accounts list
|
||||
mAccountChooserToggle.setImageResource(R.drawable.ic_up);
|
||||
mNavigationView.getMenu().setGroupVisible(R.id.drawer_menu_accounts, true);
|
||||
mNavigationView.getMenu().setGroupVisible(R.id.drawer_menu_standard, false);
|
||||
}
|
||||
|
||||
mIsAccountChooserActive = !mIsAccountChooserActive;
|
||||
|
|
Loading…
Reference in a new issue