From: masensio Date: Thu, 28 May 2015 09:07:14 +0000 (+0200) Subject: Add NavigationDrawer to image preview X-Git-Tag: oc-android-1.7.2~1^2~23^2~33 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/db01425a0740a443e4e005f9fb91af7f2faafe40 Add NavigationDrawer to image preview --- diff --git a/res/layout/drawer.xml b/res/layout/drawer.xml new file mode 100644 index 00000000..7bff7a52 --- /dev/null +++ b/res/layout/drawer.xml @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/res/layout/files.xml b/res/layout/files.xml index 5f11f068..268ee514 100644 --- a/res/layout/files.xml +++ b/res/layout/files.xml @@ -46,51 +46,10 @@ android:layout_weight="2" /> - - - - + android:layout_gravity="start"/> - - - - - - - - - - \ No newline at end of file diff --git a/res/layout/preview_image_activity.xml b/res/layout/preview_image_activity.xml index 9baf6c24..13aff8a9 100644 --- a/res/layout/preview_image_activity.xml +++ b/res/layout/preview_image_activity.xml @@ -16,16 +16,24 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . --> - + android:clickable="true" > + + - \ No newline at end of file + \ No newline at end of file diff --git a/src/com/owncloud/android/ui/activity/FileActivity.java b/src/com/owncloud/android/ui/activity/FileActivity.java index 9cf695d4..9d1769a0 100644 --- a/src/com/owncloud/android/ui/activity/FileActivity.java +++ b/src/com/owncloud/android/ui/activity/FileActivity.java @@ -31,15 +31,26 @@ import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.content.ServiceConnection; +import android.content.res.Configuration; import android.os.Bundle; import android.os.Handler; import android.os.IBinder; +import android.support.v4.app.ActionBarDrawerToggle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentTransaction; +import android.support.v4.widget.DrawerLayout; +import android.support.v7.app.ActionBar; import android.support.v7.app.ActionBarActivity; +import android.view.View; +import android.widget.AdapterView; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.ListView; +import android.widget.TextView; import android.widget.Toast; +import com.owncloud.android.BuildConfig; import com.owncloud.android.MainApp; import com.owncloud.android.R; import com.owncloud.android.authentication.AccountUtils; @@ -48,8 +59,8 @@ import com.owncloud.android.datamodel.FileDataStorageManager; import com.owncloud.android.datamodel.OCFile; import com.owncloud.android.files.FileOperationsHelper; import com.owncloud.android.files.services.FileDownloader; -import com.owncloud.android.files.services.FileUploader; import com.owncloud.android.files.services.FileDownloader.FileDownloaderBinder; +import com.owncloud.android.files.services.FileUploader; import com.owncloud.android.files.services.FileUploader.FileUploaderBinder; import com.owncloud.android.lib.common.operations.OnRemoteOperationListener; import com.owncloud.android.lib.common.operations.RemoteOperation; @@ -61,10 +72,15 @@ import com.owncloud.android.operations.SynchronizeFolderOperation; import com.owncloud.android.operations.UnshareLinkOperation; import com.owncloud.android.services.OperationsService; import com.owncloud.android.services.OperationsService.OperationsServiceBinder; +import com.owncloud.android.ui.NavigationDrawerItem; +import com.owncloud.android.ui.adapter.NavigationDrawerListAdapter; import com.owncloud.android.ui.dialog.LoadingDialog; import com.owncloud.android.ui.dialog.SharePasswordDialogFragment; +import com.owncloud.android.utils.DisplayUtils; import com.owncloud.android.utils.ErrorMessageAdapter; +import java.util.ArrayList; + /** * Activity with common behaviour for activities handling {@link OCFile}s in ownCloud @@ -126,7 +142,21 @@ public class FileActivity extends ActionBarActivity private ServiceConnection mDownloadServiceConnection, mUploadServiceConnection = null; private boolean mTryShareAgain = false; - + + // Navigation Drawer + protected DrawerLayout mDrawerLayout; + protected ActionBarDrawerToggle mDrawerToggle; + protected ListView mDrawerList; + + // Slide menu items + protected String[] mDrawerTitles; + protected String[] mDrawerContentDescriptions; + + protected ArrayList mDrawerItems; + + protected NavigationDrawerListAdapter mNavigationDrawerAdapter = null; + + protected boolean mShowAccounts = false; /** * Loads the ownCloud {@link Account} and main {@link OCFile} to be handled by the instance of @@ -249,8 +279,110 @@ public class FileActivity extends ActionBarActivity super.onDestroy(); } - - + + @Override + protected void onPostCreate(Bundle savedInstanceState) { + super.onPostCreate(savedInstanceState); + // Sync the toggle state after onRestoreInstanceState has occurred. + if (mDrawerToggle != null) { + mDrawerToggle.syncState(); + } + } + + @Override + public void onConfigurationChanged(Configuration newConfig) { + super.onConfigurationChanged(newConfig); + if (mDrawerToggle != null) { + mDrawerToggle.onConfigurationChanged(newConfig); + } + } + + protected void initDrawer(){ + mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); + // Notification Drawer + LinearLayout navigationDrawerLayout = (LinearLayout) findViewById(R.id.left_drawer); + mDrawerList = (ListView) navigationDrawerLayout.findViewById(R.id.drawer_list); + + // load Account in the Drawer Title + // User-Icon + ImageView userIcon = (ImageView) navigationDrawerLayout.findViewById(R.id.drawer_userIcon); + userIcon.setImageResource(DisplayUtils.getSeasonalIconId()); + + // Username + TextView username = (TextView) navigationDrawerLayout.findViewById(R.id.drawer_username); + Account account = AccountUtils.getCurrentOwnCloudAccount(getApplicationContext()); + + if (account != null) { + int lastAtPos = account.name.lastIndexOf("@"); + username.setText(account.name.substring(0, lastAtPos)); + } + + // load slide menu items + mDrawerTitles = getResources().getStringArray(R.array.drawer_items); + + // nav drawer content description from resources + mDrawerContentDescriptions = getResources(). + getStringArray(R.array.drawer_content_descriptions); + + // nav drawer items + mDrawerItems = new ArrayList(); + // adding nav drawer items to array + // Accounts + mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[0], mDrawerContentDescriptions[0])); + // All Files + mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[1], mDrawerContentDescriptions[1])); + + // TODO Enable when "On Device" is recovered + // On Device + //mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[2], + // mDrawerContentDescriptions[2])); + + // Settings + mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[2], mDrawerContentDescriptions[2])); + // Logs + if (BuildConfig.DEBUG) { + mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[3], + mDrawerContentDescriptions[3])); + } + + // setting the nav drawer list adapter + mNavigationDrawerAdapter = new NavigationDrawerListAdapter(getApplicationContext(), this, + mDrawerItems); + mDrawerList.setAdapter(mNavigationDrawerAdapter); + + mDrawerToggle = new ActionBarDrawerToggle( + this, + mDrawerLayout, + R.drawable.ic_drawer, + R.string.drawer_open, + R.string.drawer_close) { + + /** Called when a drawer has settled in a completely closed state. */ + public void onDrawerClosed(View view) { + super.onDrawerClosed(view); + getSupportActionBar().setDisplayShowTitleEnabled(true); + getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); + //initFragmentsWithFile(); + invalidateOptionsMenu(); + } + + /** Called when a drawer has settled in a completely open state. */ + public void onDrawerOpened(View drawerView) { + super.onDrawerOpened(drawerView); + getSupportActionBar().setTitle(R.string.drawer_open); + getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD); + invalidateOptionsMenu(); + } + }; + + mDrawerToggle.setDrawerIndicatorEnabled(true); + // Set the list's click listener + mDrawerList.setOnItemClickListener(new DrawerItemClickListener()); + + // Set the drawer toggle as the DrawerListener + mDrawerLayout.setDrawerListener(mDrawerToggle); + } + /** * Sets and validates the ownCloud {@link Account} associated to the Activity. * @@ -308,13 +440,13 @@ public class FileActivity extends ActionBarActivity */ private void createFirstAccount() { AccountManager am = AccountManager.get(getApplicationContext()); - am.addAccount(MainApp.getAccountType(), - null, - null, - null, - this, - new AccountCreationCallback(), - null); + am.addAccount(MainApp.getAccountType(), + null, + null, + null, + this, + new AccountCreationCallback(), + null); } @@ -667,6 +799,55 @@ public class FileActivity extends ActionBarActivity public FileUploaderBinder getFileUploaderBinder() { return mUploaderBinder; } - - + + + public void restart(){ + Intent i = new Intent(this, FileDisplayActivity.class); + i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); + startActivity(i); + } + + public void closeDrawer() { + mDrawerLayout.closeDrawers(); + } + + private class DrawerItemClickListener implements ListView.OnItemClickListener { + @Override + public void onItemClick(AdapterView parent, View view, int position, long id) { + if (mShowAccounts && position > 0){ + position = position - 1; + } + switch (position){ + case 0: // Accounts + mShowAccounts = !mShowAccounts; + mNavigationDrawerAdapter.setShowAccounts(mShowAccounts); + mNavigationDrawerAdapter.notifyDataSetChanged(); + break; + + case 1: // All Files + // TODO Enable when "On Device" is recovered ? + //MainApp.showOnlyFilesOnDevice(false); + mDrawerLayout.closeDrawers(); + break; + + // TODO Enable when "On Device" is recovered ? +// case 2: +// MainApp.showOnlyFilesOnDevice(true); +// mDrawerLayout.closeDrawers(); +// break; + + case 2: // Settings + Intent settingsIntent = new Intent(getApplicationContext(), + Preferences.class); + startActivity(settingsIntent); + break; + + case 3: // Logs + Intent loggerIntent = new Intent(getApplicationContext(), + LogHistoryActivity.class); + startActivity(loggerIntent); + break; + } + } + } } diff --git a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java index 71a24ba1..8f4c27af 100644 --- a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java @@ -22,9 +22,6 @@ package com.owncloud.android.ui.activity; -import java.io.File; -import java.util.ArrayList; - import android.accounts.Account; import android.accounts.AccountManager; import android.accounts.AuthenticatorException; @@ -40,7 +37,6 @@ import android.content.IntentFilter; import android.content.ServiceConnection; import android.content.SharedPreferences; import android.content.SyncRequest; -import android.content.res.Configuration; import android.content.res.Resources.NotFoundException; import android.database.Cursor; import android.net.Uri; @@ -49,13 +45,10 @@ import android.os.Bundle; import android.os.IBinder; import android.preference.PreferenceManager; import android.provider.OpenableColumns; -import android.support.v4.app.ActionBarDrawerToggle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentTransaction; - import android.support.v4.view.GravityCompat; -import android.support.v4.widget.DrawerLayout; import android.support.v7.app.ActionBar; import android.view.Menu; import android.view.MenuInflater; @@ -63,19 +56,12 @@ import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.view.Window; - -import android.widget.AdapterView; import android.widget.ArrayAdapter; -import android.widget.ImageView; -import android.widget.LinearLayout; -import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; -import com.owncloud.android.BuildConfig; import com.owncloud.android.MainApp; import com.owncloud.android.R; -import com.owncloud.android.authentication.AccountUtils; import com.owncloud.android.datamodel.OCFile; import com.owncloud.android.files.services.FileDownloader; import com.owncloud.android.files.services.FileDownloader.FileDownloaderBinder; @@ -94,15 +80,13 @@ import com.owncloud.android.lib.common.utils.Log_OC; import com.owncloud.android.operations.CreateFolderOperation; import com.owncloud.android.operations.CreateShareOperation; import com.owncloud.android.operations.MoveFileOperation; +import com.owncloud.android.operations.RefreshFolderOperation; import com.owncloud.android.operations.RemoveFileOperation; import com.owncloud.android.operations.RenameFileOperation; import com.owncloud.android.operations.SynchronizeFileOperation; -import com.owncloud.android.operations.RefreshFolderOperation; import com.owncloud.android.operations.UnshareLinkOperation; import com.owncloud.android.services.observer.FileObserverService; import com.owncloud.android.syncadapter.FileSyncAdapter; -import com.owncloud.android.ui.NavigationDrawerItem; -import com.owncloud.android.ui.adapter.NavigationDrawerListAdapter; import com.owncloud.android.ui.dialog.ConfirmationDialogFragment; import com.owncloud.android.ui.dialog.CreateFolderDialogFragment; import com.owncloud.android.ui.dialog.SslUntrustedCertDialog; @@ -120,6 +104,8 @@ import com.owncloud.android.utils.ErrorMessageAdapter; import com.owncloud.android.utils.FileStorageUtils; import com.owncloud.android.utils.UriUtils; +import java.io.File; + /** * Displays, what files the user has available in his ownCloud. @@ -166,20 +152,6 @@ public class FileDisplayActivity extends HookActivity implements private OCFile mWaitingToSend; - // Navigation Drawer - private DrawerLayout mDrawerLayout; - private ActionBarDrawerToggle mDrawerToggle; - private ListView mDrawerList; - - // Slide menu items - private String[] mDrawerTitles; - private String[] mDrawerContentDescriptions; - - private ArrayList mDrawerItems; - - private NavigationDrawerListAdapter mNavigationDrawerAdapter = null; - - private boolean mShowAccounts = false; @Override protected void onCreate(Bundle savedInstanceState) { @@ -236,99 +208,13 @@ public class FileDisplayActivity extends HookActivity implements // always AFTER setContentView(...) ; to work around bug in its implementation // TODO Remove??, it is done in onPostCreate - mDrawerToggle.syncState(); +// mDrawerToggle.syncState(); setBackgroundText(); Log_OC.v(TAG, "onCreate() end"); } - private void initDrawer(){ - mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); - // Notification Drawer - LinearLayout navigationDrawerLayout = (LinearLayout) findViewById(R.id.left_drawer); - mDrawerList = (ListView) navigationDrawerLayout.findViewById(R.id.drawer_list); - - // load Account in the Drawer Title - // User-Icon - ImageView userIcon = (ImageView) navigationDrawerLayout.findViewById(R.id.drawer_userIcon); - userIcon.setImageResource(DisplayUtils.getSeasonalIconId()); - - // Username - TextView username = (TextView) navigationDrawerLayout.findViewById(R.id.drawer_username); - Account account = AccountUtils.getCurrentOwnCloudAccount(getApplicationContext()); - - if (account != null) { - int lastAtPos = account.name.lastIndexOf("@"); - username.setText(account.name.substring(0, lastAtPos)); - } - - // load slide menu items - mDrawerTitles = getResources().getStringArray(R.array.drawer_items); - - // nav drawer content description from resources - mDrawerContentDescriptions = getResources(). - getStringArray(R.array.drawer_content_descriptions); - - // nav drawer items - mDrawerItems = new ArrayList(); - // adding nav drawer items to array - // Accounts - mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[0], mDrawerContentDescriptions[0])); - // All Files - mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[1], mDrawerContentDescriptions[1])); - - // TODO Enable when "On Device" is recovered - // On Device - //mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[2], - // mDrawerContentDescriptions[2])); - - // Settings - mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[2], mDrawerContentDescriptions[2])); - // Logs - if (BuildConfig.DEBUG) { - mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[3], - mDrawerContentDescriptions[3])); - } - - // setting the nav drawer list adapter - mNavigationDrawerAdapter = new NavigationDrawerListAdapter(getApplicationContext(), this, - mDrawerItems); - mDrawerList.setAdapter(mNavigationDrawerAdapter); - - mDrawerToggle = new ActionBarDrawerToggle( - this, - mDrawerLayout, - R.drawable.ic_drawer, - R.string.drawer_open, - R.string.drawer_close) { - - /** Called when a drawer has settled in a completely closed state. */ - public void onDrawerClosed(View view) { - super.onDrawerClosed(view); - getSupportActionBar().setDisplayShowTitleEnabled(true); - getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); - initFragmentsWithFile(); - invalidateOptionsMenu(); - } - - /** Called when a drawer has settled in a completely open state. */ - public void onDrawerOpened(View drawerView) { - super.onDrawerOpened(drawerView); - getSupportActionBar().setTitle(R.string.drawer_open); - getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD); - invalidateOptionsMenu(); - } - }; - - mDrawerToggle.setDrawerIndicatorEnabled(true); - // Set the list's click listener - mDrawerList.setOnItemClickListener(new DrawerItemClickListener()); - - // Set the drawer toggle as the DrawerListener - mDrawerLayout.setDrawerListener(mDrawerToggle); - } - @Override protected void onStart() { Log_OC.v(TAG, "onStart() start"); @@ -336,19 +222,6 @@ public class FileDisplayActivity extends HookActivity implements getSupportActionBar().setIcon(DisplayUtils.getSeasonalIconId()); Log_OC.v(TAG, "onStart() end"); } - - @Override - protected void onPostCreate(Bundle savedInstanceState) { - super.onPostCreate(savedInstanceState); - // Sync the toggle state after onRestoreInstanceState has occurred. - mDrawerToggle.syncState(); - } - - @Override - public void onConfigurationChanged(Configuration newConfig) { - super.onConfigurationChanged(newConfig); - mDrawerToggle.onConfigurationChanged(newConfig); - } @Override protected void onDestroy() { @@ -1986,53 +1859,53 @@ public class FileDisplayActivity extends HookActivity implements getListOfFilesFragment().sortByName(ascending); } - public void restart(){ - Intent i = new Intent(this, FileDisplayActivity.class); - i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); - startActivity(i); - } - - public void closeDrawer() { - mDrawerLayout.closeDrawers(); - } - - private class DrawerItemClickListener implements ListView.OnItemClickListener { - @Override - public void onItemClick(AdapterView parent, View view, int position, long id) { - if (mShowAccounts && position > 0){ - position = position - 1; - } - switch (position){ - case 0: // Accounts - mShowAccounts = !mShowAccounts; - mNavigationDrawerAdapter.setShowAccounts(mShowAccounts); - mNavigationDrawerAdapter.notifyDataSetChanged(); - break; - - case 1: // All Files - // TODO Enable when "On Device" is recovered ? - //MainApp.showOnlyFilesOnDevice(false); - mDrawerLayout.closeDrawers(); - break; - - // TODO Enable when "On Device" is recovered ? -// case 2: -// MainApp.showOnlyFilesOnDevice(true); +// public void restart(){ +// Intent i = new Intent(this, FileDisplayActivity.class); +// i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); +// startActivity(i); +// } + +// public void closeDrawer() { +// mDrawerLayout.closeDrawers(); +// } + +// private class DrawerItemClickListener implements ListView.OnItemClickListener { +// @Override +// public void onItemClick(AdapterView parent, View view, int position, long id) { +// if (mShowAccounts && position > 0){ +// position = position - 1; +// } +// switch (position){ +// case 0: // Accounts +// mShowAccounts = !mShowAccounts; +// mNavigationDrawerAdapter.setShowAccounts(mShowAccounts); +// mNavigationDrawerAdapter.notifyDataSetChanged(); +// break; +// +// case 1: // All Files +// // TODO Enable when "On Device" is recovered ? +// //MainApp.showOnlyFilesOnDevice(false); // mDrawerLayout.closeDrawers(); // break; - - case 2: // Settings - Intent settingsIntent = new Intent(getApplicationContext(), - Preferences.class); - startActivity(settingsIntent); - break; - - case 3: // Logs - Intent loggerIntent = new Intent(getApplicationContext(), - LogHistoryActivity.class); - startActivity(loggerIntent); - break; - } - } - } +// +// // TODO Enable when "On Device" is recovered ? +//// case 2: +//// MainApp.showOnlyFilesOnDevice(true); +//// mDrawerLayout.closeDrawers(); +//// break; +// +// case 2: // Settings +// Intent settingsIntent = new Intent(getApplicationContext(), +// Preferences.class); +// startActivity(settingsIntent); +// break; +// +// case 3: // Logs +// Intent loggerIntent = new Intent(getApplicationContext(), +// LogHistoryActivity.class); +// startActivity(loggerIntent); +// break; +// } +// } +// } } diff --git a/src/com/owncloud/android/ui/adapter/NavigationDrawerListAdapter.java b/src/com/owncloud/android/ui/adapter/NavigationDrawerListAdapter.java index 0f108f9c..fdc19711 100644 --- a/src/com/owncloud/android/ui/adapter/NavigationDrawerListAdapter.java +++ b/src/com/owncloud/android/ui/adapter/NavigationDrawerListAdapter.java @@ -22,7 +22,6 @@ package com.owncloud.android.ui.adapter; import java.math.BigInteger; -import java.nio.ByteBuffer; import java.security.MessageDigest; import java.util.ArrayList; import java.util.Locale; @@ -30,14 +29,7 @@ import java.util.Locale; import android.accounts.Account; import android.accounts.AccountManager; import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.Canvas; import android.graphics.Color; -import android.graphics.PorterDuff; -import android.graphics.drawable.BitmapDrawable; -import android.graphics.drawable.Drawable; -import android.graphics.drawable.ShapeDrawable; -import android.graphics.drawable.shapes.RectShape; import android.text.TextUtils; import android.view.LayoutInflater; import android.view.View; @@ -55,7 +47,7 @@ import com.owncloud.android.authentication.AccountUtils; import com.owncloud.android.lib.common.utils.Log_OC; import com.owncloud.android.ui.NavigationDrawerItem; import com.owncloud.android.ui.TextDrawable; -import com.owncloud.android.ui.activity.FileDisplayActivity; +import com.owncloud.android.ui.activity.FileActivity; import com.owncloud.android.utils.BitmapUtils; public class NavigationDrawerListAdapter extends BaseAdapter { @@ -69,12 +61,12 @@ public class NavigationDrawerListAdapter extends BaseAdapter { private Account[] mAccounts; private boolean mShowAccounts; private Account mCurrentAccount; - private FileDisplayActivity mFileDisplayActivity; + private FileActivity mFileActivity; - public NavigationDrawerListAdapter(Context context, FileDisplayActivity fileDisplayActivity, + public NavigationDrawerListAdapter(Context context, FileActivity fileActivity, ArrayList navigationDrawerItems){ - mFileDisplayActivity = fileDisplayActivity; + mFileActivity = fileActivity; mContext = context; mNavigationDrawerItems = navigationDrawerItems; @@ -153,15 +145,18 @@ public class NavigationDrawerListAdapter extends BaseAdapter { String username = account.name.substring(0, lastAtPos); byte[] seed = username.getBytes("UTF-8"); MessageDigest md = MessageDigest.getInstance("MD5"); -// Integer seedMd5Int = Math.abs(new String(Hex.encodeHex(seedMd5)).hashCode()); - Integer seedMd5Int = String.format(Locale.ROOT, "%032x", new BigInteger(1, md.digest(seed))).hashCode(); +// Integer seedMd5Int = Math.abs(new String(Hex.encodeHex(seedMd5)) +// .hashCode()); + Integer seedMd5Int = String.format(Locale.ROOT, "%032x", + new BigInteger(1, md.digest(seed))).hashCode(); double maxRange = java.lang.Integer.MAX_VALUE; float hue = (float) (seedMd5Int / maxRange * 360); int[] rgb = BitmapUtils.HSLtoRGB(hue, 90.0f, 65.0f, 1.0f); - TextDrawable text = new TextDrawable(username.substring(0, 1).toUpperCase(), rgb[0], rgb[1], rgb[2]); + TextDrawable text = new TextDrawable(username.substring(0, 1).toUpperCase(), + rgb[0], rgb[1], rgb[2]); rb.setCompoundDrawablesWithIntrinsicBounds(text, null, null, null); @@ -191,10 +186,10 @@ public class NavigationDrawerListAdapter extends BaseAdapter { AccountUtils.setCurrentOwnCloudAccount(mContext,rb.getText().toString()); notifyDataSetChanged(); - mFileDisplayActivity.closeDrawer(); + mFileActivity.closeDrawer(); // restart the main activity - mFileDisplayActivity.restart(); + mFileActivity.restart(); } }); diff --git a/src/com/owncloud/android/ui/preview/PreviewImageActivity.java b/src/com/owncloud/android/ui/preview/PreviewImageActivity.java index a67788a2..cc26430a 100644 --- a/src/com/owncloud/android/ui/preview/PreviewImageActivity.java +++ b/src/com/owncloud/android/ui/preview/PreviewImageActivity.java @@ -94,7 +94,11 @@ public class PreviewImageActivity extends FileActivity implements requestWindowFeature(Window.FEATURE_ACTION_BAR_OVERLAY); setContentView(R.layout.preview_image_activity); - + + // Navigation Drawer + initDrawer(); + + // ActionBar ActionBar actionBar = getSupportActionBar(); actionBar.setIcon(DisplayUtils.getSeasonalIconId()); actionBar.setDisplayHomeAsUpEnabled(true);