initial material design changes for the action bar
authorAndyScherzinger <info@andy-scherzinger.de>
Sat, 25 Jul 2015 23:49:27 +0000 (01:49 +0200)
committerAndyScherzinger <info@andy-scherzinger.de>
Sat, 25 Jul 2015 23:49:27 +0000 (01:49 +0200)
33 files changed:
AndroidManifest.xml
build.gradle
project.properties
res/drawable-xxhdpi/ic_action_create_dir.png [new file with mode: 0644]
res/drawable-xxhdpi/ic_action_download.png [new file with mode: 0644]
res/drawable-xxhdpi/ic_action_upload.png [new file with mode: 0644]
res/drawable-xxhdpi/ic_cancel.png [new file with mode: 0644]
res/drawable-xxhdpi/ic_folder_open.png [new file with mode: 0644]
res/drawable-xxhdpi/ic_hide.png [new file with mode: 0644]
res/drawable-xxhdpi/ic_log.png [new file with mode: 0644]
res/drawable-xxhdpi/ic_ok.png [new file with mode: 0644]
res/drawable-xxhdpi/ic_settings.png [new file with mode: 0644]
res/drawable-xxhdpi/ic_view.png [new file with mode: 0644]
res/drawable-xxhdpi/no_network.png [new file with mode: 0644]
res/layout/account_setup.xml
res/layout/drawer.xml
res/layout/drawer_list_item.xml
res/values/colors.xml
res/values/strings.xml
res/values/styles.xml
src/com/owncloud/android/ui/NavigationDrawerItem.java
src/com/owncloud/android/ui/activity/ConflictsResolveActivity.java
src/com/owncloud/android/ui/activity/FileActivity.java
src/com/owncloud/android/ui/activity/FileDisplayActivity.java
src/com/owncloud/android/ui/activity/FolderPickerActivity.java
src/com/owncloud/android/ui/activity/GenericExplanationActivity.java
src/com/owncloud/android/ui/activity/LogHistoryActivity.java
src/com/owncloud/android/ui/activity/PassCodeActivity.java
src/com/owncloud/android/ui/activity/Preferences.java
src/com/owncloud/android/ui/activity/UploadFilesActivity.java
src/com/owncloud/android/ui/activity/Uploader.java
src/com/owncloud/android/ui/adapter/NavigationDrawerListAdapter.java
src/com/owncloud/android/ui/dialog/ConflictsResolveDialog.java

index 5b9fc71..7b4d742 100644 (file)
@@ -37,7 +37,7 @@
     
     <uses-sdk
         android:minSdkVersion="14"
     
     <uses-sdk
         android:minSdkVersion="14"
-        android:targetSdkVersion="19" />
+        android:targetSdkVersion="22" />
 
     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" >
     </uses-permission>
 
     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" >
     </uses-permission>
index 209b7ee..576eb82 100644 (file)
@@ -3,7 +3,7 @@ buildscript {
         mavenCentral()
     }
     dependencies {
         mavenCentral()
     }
     dependencies {
-        classpath 'com.android.tools.build:gradle:1.0.0'
+        classpath 'com.android.tools.build:gradle:1.2.3'
     }
 }
 
     }
 }
 
@@ -20,15 +20,15 @@ repositories {
 
 dependencies {
     compile name: 'touch-image-view'
 
 dependencies {
     compile name: 'touch-image-view'
-    compile 'com.android.support:support-v4:19.1.0'
+    compile 'com.android.support:support-v4:22.2.1'
     compile project(':owncloud-android-library')
     compile 'com.jakewharton:disklrucache:2.0.2'
     compile project(':owncloud-android-library')
     compile 'com.jakewharton:disklrucache:2.0.2'
-    compile 'com.android.support:appcompat-v7:19.1.0'
+    compile 'com.android.support:appcompat-v7:22.2.1'
 }
 
 android {
 }
 
 android {
-    compileSdkVersion 19
-    buildToolsVersion "20.0.0"
+    compileSdkVersion 22
+    buildToolsVersion "22.0.1"
     sourceSets {
         main {
             manifest.srcFile 'AndroidManifest.xml'
     sourceSets {
         main {
             manifest.srcFile 'AndroidManifest.xml'
index 3abf790..b7cabdd 100644 (file)
@@ -8,6 +8,6 @@
 # project structure.
 
 # Project target.
 # project structure.
 
 # Project target.
-target=android-19
+target=android-22
 android.library.reference.1=owncloud-android-library
 android.library.reference.2=libs/android-support-appcompat-v7-exploded-aar
 android.library.reference.1=owncloud-android-library
 android.library.reference.2=libs/android-support-appcompat-v7-exploded-aar
diff --git a/res/drawable-xxhdpi/ic_action_create_dir.png b/res/drawable-xxhdpi/ic_action_create_dir.png
new file mode 100644 (file)
index 0000000..7bd3c8f
Binary files /dev/null and b/res/drawable-xxhdpi/ic_action_create_dir.png differ
diff --git a/res/drawable-xxhdpi/ic_action_download.png b/res/drawable-xxhdpi/ic_action_download.png
new file mode 100644 (file)
index 0000000..95502de
Binary files /dev/null and b/res/drawable-xxhdpi/ic_action_download.png differ
diff --git a/res/drawable-xxhdpi/ic_action_upload.png b/res/drawable-xxhdpi/ic_action_upload.png
new file mode 100644 (file)
index 0000000..a6c31e9
Binary files /dev/null and b/res/drawable-xxhdpi/ic_action_upload.png differ
diff --git a/res/drawable-xxhdpi/ic_cancel.png b/res/drawable-xxhdpi/ic_cancel.png
new file mode 100644 (file)
index 0000000..f6f7844
Binary files /dev/null and b/res/drawable-xxhdpi/ic_cancel.png differ
diff --git a/res/drawable-xxhdpi/ic_folder_open.png b/res/drawable-xxhdpi/ic_folder_open.png
new file mode 100644 (file)
index 0000000..bc826f4
Binary files /dev/null and b/res/drawable-xxhdpi/ic_folder_open.png differ
diff --git a/res/drawable-xxhdpi/ic_hide.png b/res/drawable-xxhdpi/ic_hide.png
new file mode 100644 (file)
index 0000000..394b85e
Binary files /dev/null and b/res/drawable-xxhdpi/ic_hide.png differ
diff --git a/res/drawable-xxhdpi/ic_log.png b/res/drawable-xxhdpi/ic_log.png
new file mode 100644 (file)
index 0000000..50f854e
Binary files /dev/null and b/res/drawable-xxhdpi/ic_log.png differ
diff --git a/res/drawable-xxhdpi/ic_ok.png b/res/drawable-xxhdpi/ic_ok.png
new file mode 100644 (file)
index 0000000..6e03d54
Binary files /dev/null and b/res/drawable-xxhdpi/ic_ok.png differ
diff --git a/res/drawable-xxhdpi/ic_settings.png b/res/drawable-xxhdpi/ic_settings.png
new file mode 100644 (file)
index 0000000..6a70402
Binary files /dev/null and b/res/drawable-xxhdpi/ic_settings.png differ
diff --git a/res/drawable-xxhdpi/ic_view.png b/res/drawable-xxhdpi/ic_view.png
new file mode 100644 (file)
index 0000000..36c10e7
Binary files /dev/null and b/res/drawable-xxhdpi/ic_view.png differ
diff --git a/res/drawable-xxhdpi/no_network.png b/res/drawable-xxhdpi/no_network.png
new file mode 100644 (file)
index 0000000..1ffec0d
Binary files /dev/null and b/res/drawable-xxhdpi/no_network.png differ
index 6b9ce79..45d821c 100644 (file)
@@ -40,7 +40,6 @@
             android:layout_height="wrap_content"\r
             android:layout_marginBottom="10dp"\r
             android:layout_marginTop="10dp"\r
             android:layout_height="wrap_content"\r
             android:layout_marginBottom="10dp"\r
             android:layout_marginTop="10dp"\r
-            android:background="@color/login_logo_background_color"\r
             android:src="@drawable/logo"\r
             android:contentDescription="@string/app_name"/>\r
 \r
             android:src="@drawable/logo"\r
             android:contentDescription="@string/app_name"/>\r
 \r
@@ -63,6 +62,8 @@
             android:text="@string/auth_expired_basic_auth_toast"\r
             android:visibility="gone"\r
             android:layout_marginBottom="10dp"\r
             android:text="@string/auth_expired_basic_auth_toast"\r
             android:visibility="gone"\r
             android:layout_marginBottom="10dp"\r
+            android:textColor="#AAAAAA"\r
+            android:textColorHint="#AAAAAA"\r
             android:contentDescription="@string/auth_expired_basic_auth_toast"/>\r
 \r
            <FrameLayout \r
             android:contentDescription="@string/auth_expired_basic_auth_toast"/>\r
 \r
            <FrameLayout \r
@@ -80,6 +81,8 @@
                                android:inputType="textUri"\r
                                android:drawablePadding="5dp"\r
                                android:paddingRight="55dp"\r
                                android:inputType="textUri"\r
                                android:drawablePadding="5dp"\r
                                android:paddingRight="55dp"\r
+                android:textColor="#AAAAAA"\r
+                android:textColorHint="#AAAAAA"\r
                                android:contentDescription="@string/auth_host_address"\r
                 >\r
                                <requestFocus />\r
                                android:contentDescription="@string/auth_host_address"\r
                 >\r
                                <requestFocus />\r
             android:drawableLeft="@android:drawable/stat_notify_sync"\r
             android:drawablePadding="5dp"\r
             android:gravity="center_vertical"\r
             android:drawableLeft="@android:drawable/stat_notify_sync"\r
             android:drawablePadding="5dp"\r
             android:gravity="center_vertical"\r
+            android:textColor="#AAAAAA"\r
+            android:textColorHint="#AAAAAA"\r
             android:text="@string/auth_testing_connection"\r
             android:contentDescription="@string/auth_testing_connection"/>\r
 \r
             android:text="@string/auth_testing_connection"\r
             android:contentDescription="@string/auth_testing_connection"/>\r
 \r
             android:onClick="onCheckClick"\r
             android:text="@string/oauth_check_onoff"\r
             android:textAppearance="?android:attr/textAppearanceSmall"\r
             android:onClick="onCheckClick"\r
             android:text="@string/oauth_check_onoff"\r
             android:textAppearance="?android:attr/textAppearanceSmall"\r
+            android:textColor="#AAAAAA"\r
+            android:textColorHint="#AAAAAA"\r
             android:contentDescription="@string/oauth_check_onoff"\r
             />\r
 \r
             android:contentDescription="@string/oauth_check_onoff"\r
             />\r
 \r
             android:layout_height="wrap_content"\r
             android:ems="10"\r
                        android:enabled="false"\r
             android:layout_height="wrap_content"\r
             android:ems="10"\r
                        android:enabled="false"\r
+            android:textColor="#AAAAAA"\r
+            android:textColorHint="#AAAAAA"\r
             android:text="@string/oauth2_url_endpoint_auth"\r
             android:singleLine="true"\r
             android:inputType="textUri"\r
             android:text="@string/oauth2_url_endpoint_auth"\r
             android:singleLine="true"\r
             android:inputType="textUri"\r
             android:text="@string/oauth2_url_endpoint_access"\r
             android:singleLine="true"\r
             android:inputType="textUri"\r
             android:text="@string/oauth2_url_endpoint_access"\r
             android:singleLine="true"\r
             android:inputType="textUri"\r
+            android:textColor="#AAAAAA"\r
+            android:textColorHint="#AAAAAA"\r
             android:visibility="gone"/>\r
 \r
         <EditText\r
             android:visibility="gone"/>\r
 \r
         <EditText\r
             android:ems="10"\r
             android:hint="@string/auth_username"\r
             android:inputType="textNoSuggestions"\r
             android:ems="10"\r
             android:hint="@string/auth_username"\r
             android:inputType="textNoSuggestions"\r
+            android:textColor="#AAAAAA"\r
+            android:textColorHint="#AAAAAA"\r
             android:contentDescription="@string/auth_username"\r
             />\r
 \r
             android:contentDescription="@string/auth_username"\r
             />\r
 \r
                    android:ems="10"\r
                    android:hint="@string/auth_password"\r
                    android:inputType="textPassword"\r
                    android:ems="10"\r
                    android:hint="@string/auth_password"\r
                    android:inputType="textPassword"\r
+            android:textColor="#AAAAAA"\r
+            android:textColorHint="#AAAAAA"\r
                    android:contentDescription="@string/auth_password"\r
             />\r
         \r
                    android:contentDescription="@string/auth_password"\r
             />\r
         \r
             android:drawablePadding="5dp"\r
             android:gravity="center_vertical"\r
             android:text="@string/auth_unauthorized"\r
             android:drawablePadding="5dp"\r
             android:gravity="center_vertical"\r
             android:text="@string/auth_unauthorized"\r
+            android:textColor="#AAAAAA"\r
+            android:textColorHint="#AAAAAA"\r
             android:contentDescription="@string/auth_unauthorized"/>\r
 \r
         <Button\r
             android:contentDescription="@string/auth_unauthorized"/>\r
 \r
         <Button\r
             android:paddingBottom="5dp"\r
             android:paddingTop="5dp"\r
             android:text="@string/auth_register"\r
             android:paddingBottom="5dp"\r
             android:paddingTop="5dp"\r
             android:text="@string/auth_register"\r
-            android:textColor="#0000FF"\r
+            android:textColor="#AAAAAA"\r
+            android:textColorHint="#AAAAAA"\r
             android:contentDescription="@string/auth_register"/>\r
 \r
     </LinearLayout>\r
             android:contentDescription="@string/auth_register"/>\r
 \r
     </LinearLayout>\r
index 07ad5ee..2c54ad1 100644 (file)
   You should have received a copy of the GNU General Public License
   along with this program.  If not, see <http://www.gnu.org/licenses/>.
   -->
   You should have received a copy of the GNU General Public License
   along with this program.  If not, see <http://www.gnu.org/licenses/>.
   -->
-<LinearLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/left_drawer"
-    android:layout_width="240dp"
-    android:layout_height="match_parent"
-    android:layout_gravity="start"
-    android:background="@color/background_color"
-    android:baselineAligned="false"
-    android:clickable="true"
-    android:orientation="vertical"
-    android:fitsSystemWindows="true">
+<merge xmlns:android="http://schemas.android.com/apk/res/android">
+    <RelativeLayout
+        android:id="@+id/left_drawer"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:layout_gravity="start"
+        android:gravity="center"
+        android:orientation="vertical"
+        android:fitsSystemWindows="true"
+        android:background="@color/background_color"
+        >
 
 
-    <!--TODO re-enable when "Accounts" is available in Navigation Drawer-->
-    <!--<LinearLayout-->
-        <!--android:layout_width="match_parent"-->
-        <!--android:layout_height="wrap_content"-->
-        <!--android:layout_margin="5dp">-->
+        <!--TODO re-enable when "Accounts" is available in Navigation Drawer-->
+        <!--<LinearLayout-->
+            <!--android:layout_width="match_parent"-->
+            <!--android:layout_height="wrap_content"-->
+            <!--android:layout_margin="5dp">-->
 
 
-        <!--<ImageView-->
-            <!--android:id="@+id/drawer_userIcon"-->
-            <!--android:layout_width="40dp"-->
-            <!--android:layout_height="40dp"-->
-            <!--android:src="@drawable/abc_ab_bottom_solid_dark_holo" />-->
+            <!--<ImageView-->
+                <!--android:id="@+id/drawer_userIcon"-->
+                <!--android:layout_width="40dp"-->
+                <!--android:layout_height="40dp"-->
+                <!--android:src="@drawable/abc_ab_bottom_solid_dark_holo" />-->
 
 
-        <!--<TextView-->
-            <!--android:id="@+id/drawer_username"-->
-            <!--android:layout_width="wrap_content"-->
-            <!--android:layout_height="wrap_content"-->
-            <!--android:layout_gravity="center_vertical"-->
-            <!--android:layout_marginLeft="5dp"-->
-            <!--android:layout_marginStart="5dp"-->
-            <!--android:textAppearance="?android:attr/textAppearanceLarge" />-->
+            <!--<TextView-->
+                <!--android:id="@+id/drawer_username"-->
+                <!--android:layout_width="wrap_content"-->
+                <!--android:layout_height="wrap_content"-->
+                <!--android:layout_gravity="center_vertical"-->
+                <!--android:layout_marginLeft="5dp"-->
+                <!--android:layout_marginStart="5dp"-->
+                <!--android:textAppearance="?android:attr/textAppearanceLarge" />-->
 
 
-    <!--</LinearLayout>-->
+        <!--</LinearLayout>-->
 
 
-    <!--<TextView-->
-        <!--android:layout_width="fill_parent"-->
-        <!--android:layout_height="2dip"-->
-        <!--android:background="@color/list_item_lastmod_and_filesize_text" />-->
+        <!--<TextView-->
+            <!--android:layout_width="fill_parent"-->
+            <!--android:layout_height="2dip"-->
+            <!--android:background="@color/list_item_lastmod_and_filesize_text" />-->
 
 
-    <ListView
-        android:id="@+id/drawer_list"
-        android:layout_width="fill_parent"
-        android:layout_height="match_parent"
-        android:background="@color/background_color"
-        android:choiceMode="singleChoice"
-        />
-</LinearLayout>
\ No newline at end of file
+        <ListView
+            android:id="@+id/drawer_list"
+            android:choiceMode="singleChoice"
+            android:layout_width="fill_parent"
+            android:layout_height="match_parent"
+            android:background="@color/background_color"
+            android:divider="#eee"
+            android:dividerHeight="1dp"
+            android:paddingTop="100dp" />
+
+        <TextView
+            android:id="@+id/tv_header"
+            android:layout_width="fill_parent"
+            android:layout_height="100dp"
+            android:layout_alignParentTop="true"
+            android:layout_centerHorizontal="true"
+            android:background="@color/owncloud_blue"
+            android:gravity="bottom"
+            android:orientation="vertical"
+            android:text="@string/app_name"
+            android:textColor="#FFF"
+            android:textStyle="bold"
+            android:padding="10dp"
+            android:textSize="24sp" />
+    </RelativeLayout>
+</merge>
\ No newline at end of file
index 30f3843..9b6c182 100644 (file)
     android:layout_alignParentLeft="true"
     android:orientation="horizontal"
     android:background="@color/background_color"
     android:layout_alignParentLeft="true"
     android:orientation="horizontal"
     android:background="@color/background_color"
-    android:layout_marginTop="10dp"
-    android:layout_marginBottom="10dp">
+    android:layout_marginTop="16dp"
+    android:layout_marginBottom="16dp"
+    android:minHeight="?android:attr/listPreferredItemHeight">
+
+    <ImageView
+        android:id="@+id/itemIcon"
+        android:layout_width="24sp"
+        android:layout_height="24sp"
+        android:layout_marginLeft="16sp"
+        android:layout_gravity="center_vertical"
+        />
 
     <TextView xmlns:android="http://schemas.android.com/apk/res/android"
         android:id="@+id/itemTitle"
         android:layout_width="wrap_content"
 
     <TextView xmlns:android="http://schemas.android.com/apk/res/android"
         android:id="@+id/itemTitle"
         android:layout_width="wrap_content"
-        android:layout_height="match_parent"
-        android:gravity="center_vertical"
+        android:layout_height="wrap_content"
         android:paddingLeft="16dp"
         android:paddingRight="16dp"
         android:paddingLeft="16dp"
         android:paddingRight="16dp"
-        android:textColor="@color/textColor"
+        android:textColor="@color/drawerMenuTextColor"
         android:text="@string/app_name"
         android:text="@string/app_name"
-        android:textAppearance="?android:attr/textAppearanceListItemSmall"
-        android:minHeight="?android:attr/listPreferredItemHeightSmall"/>
+        android:layout_gravity="center_vertical"
+        android:textAppearance="?android:attr/textAppearanceListItem"
+        />
 </LinearLayout>
 
 </LinearLayout>
 
index b42538f..633ff24 100644 (file)
     <color name="list_item_lastmod_and_filesize_text">#989898</color>
     <color name="black">#000000</color>
     <color name="textColor">#303030</color>
     <color name="list_item_lastmod_and_filesize_text">#989898</color>
     <color name="black">#000000</color>
     <color name="textColor">#303030</color>
+    <color name="drawerMenuTextColor">#757575</color>
     <color name="list_divider_background">#fff0f0f0</color>
     <color name="list_divider_background">#fff0f0f0</color>
-    
+    <color name="owncloud_blue">#1D2D44</color>
+    <color name="login_text_color">#AAAAAA</color>
+
+    <!-- Colors -->
+    <color name="color_accent">@color/owncloud_blue_bright</color>
+
+    <!-- standard material color definitions -->
+    <color name="primary">@color/owncloud_blue</color>
+    <color name="primary_dark">#162233</color>
 </resources>
\ No newline at end of file
 </resources>
\ No newline at end of file
index 22cf669..44346d3 100644 (file)
@@ -28,6 +28,7 @@
     <string name="drawer_item_settings">Settings</string>
     <string name="drawer_item_logs">Logs</string>
        <string name="drawer_close">Close</string>
     <string name="drawer_item_settings">Settings</string>
     <string name="drawer_item_logs">Logs</string>
        <string name="drawer_close">Close</string>
+    <string name="drawer_open">Open</string>
     <string name="prefs_category_general">General</string>
     <string name="prefs_category_more">More</string>
     <string name="prefs_accounts">Accounts</string>
     <string name="prefs_category_general">General</string>
     <string name="prefs_category_more">More</string>
     <string name="prefs_accounts">Accounts</string>
index 0d3f14d..de8a0ab 100644 (file)
        <item name="android:actionBarStyle">@style/Theme.ownCloud.Widget.ActionBar</item>
        <item name="actionBarStyle">@style/Theme.ownCloud.Widget.ActionBar</item>
        <item name="android:buttonStyle">@style/Theme.ownCloud.ButtonStyle</item>
        <item name="android:actionBarStyle">@style/Theme.ownCloud.Widget.ActionBar</item>
        <item name="actionBarStyle">@style/Theme.ownCloud.Widget.ActionBar</item>
        <item name="android:buttonStyle">@style/Theme.ownCloud.ButtonStyle</item>
+               <item name="colorPrimary">@color/primary</item>
+               <item name="colorPrimaryDark">@color/primary_dark</item>
+               <item name="colorAccent">@color/color_accent</item>
        </style>
        
        </style>
        
-       <style name="Theme.ownCloud.noActionBar" parent="style/Theme.AppCompat.Light">
-        <item name="android:buttonStyle">@style/Theme.ownCloud.ButtonStyle</item>
+       <style name="Theme.ownCloud.noActionBar" parent="style/Theme.AppCompat.Light.DarkActionBar">
+               <item name="android:buttonStyle">@style/Theme.ownCloud.ButtonStyle</item>
+               <item name="windowNoTitle">true</item>
+               <item name="windowActionBar">false</item>
+               <item name="colorPrimary">@color/primary</item>
+               <item name="colorPrimaryDark">@color/primary_dark</item>
+               <item name="colorAccent">@color/color_accent</item>
     </style>
 
        <style name="Theme.ownCloud.Fullscreen" parent="style/Theme.AppCompat">
     </style>
 
        <style name="Theme.ownCloud.Fullscreen" parent="style/Theme.AppCompat">
@@ -38,7 +46,7 @@
        
        <style name="Theme.ownCloud.Widget.ActionBar"
                parent="style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
        
        <style name="Theme.ownCloud.Widget.ActionBar"
                parent="style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
-       <item name="android:background">@drawable/main_header_bg</item>
+       <item name="android:background">@color/owncloud_blue</item>
        <item name="background">@drawable/main_header_bg</item>
        <item name="android:textColor">#ffffff</item>
        <item name="android:shadowColor">#222222</item>
        <item name="background">@drawable/main_header_bg</item>
        <item name="android:textColor">#ffffff</item>
        <item name="android:shadowColor">#222222</item>
index 44ed3ec..0dad197 100644 (file)
@@ -24,6 +24,7 @@ public class NavigationDrawerItem {
 
     private String mTitle;
     private String mContentDescription;
 
     private String mTitle;
     private String mContentDescription;
+    private int mIcon;
 
     // Constructors
     public NavigationDrawerItem(){}
 
     // Constructors
     public NavigationDrawerItem(){}
@@ -32,9 +33,10 @@ public class NavigationDrawerItem {
         mTitle = title;
     }
 
         mTitle = title;
     }
 
-    public NavigationDrawerItem(String title, String contentDescription){
+    public NavigationDrawerItem(String title, String contentDescription, int icon){
         mTitle = title;
         mContentDescription = contentDescription;
         mTitle = title;
         mContentDescription = contentDescription;
+        mIcon = icon;
     }
 
     // Getters and Setters
     }
 
     // Getters and Setters
@@ -53,4 +55,12 @@ public class NavigationDrawerItem {
     public void setContentDescription(String contentDescription) {
         this.mContentDescription = contentDescription;
     }
     public void setContentDescription(String contentDescription) {
         this.mContentDescription = contentDescription;
     }
+
+    public int getIcon() {
+        return mIcon;
+    }
+
+    public void setIcon(int icon) {
+        this.mIcon = icon;
+    }
 }
 }
index fa3eea6..aef1de1 100644 (file)
 
 package com.owncloud.android.ui.activity;
 
 
 package com.owncloud.android.ui.activity;
 
+import android.content.Intent;
+import android.os.Bundle;
+
 import com.owncloud.android.datamodel.OCFile;
 import com.owncloud.android.files.services.FileUploader;
 import com.owncloud.android.lib.common.utils.Log_OC;
 import com.owncloud.android.ui.dialog.ConflictsResolveDialog;
 import com.owncloud.android.ui.dialog.ConflictsResolveDialog.Decision;
 import com.owncloud.android.ui.dialog.ConflictsResolveDialog.OnConflictDecisionMadeListener;
 import com.owncloud.android.datamodel.OCFile;
 import com.owncloud.android.files.services.FileUploader;
 import com.owncloud.android.lib.common.utils.Log_OC;
 import com.owncloud.android.ui.dialog.ConflictsResolveDialog;
 import com.owncloud.android.ui.dialog.ConflictsResolveDialog.Decision;
 import com.owncloud.android.ui.dialog.ConflictsResolveDialog.OnConflictDecisionMadeListener;
-import com.owncloud.android.utils.DisplayUtils;
-
-import android.app.ActionBar;
-import android.content.Intent;
-import android.os.Bundle;
 
 /**
  * Wrapper activity which will be launched if keep-in-sync file will be modified by external
 
 /**
  * Wrapper activity which will be launched if keep-in-sync file will be modified by external
@@ -45,8 +43,6 @@ public class ConflictsResolveActivity extends FileActivity implements OnConflict
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
-        ActionBar actionBar = getActionBar();
-        actionBar.setIcon(DisplayUtils.getSeasonalIconId());
     }
 
     @Override
     }
 
     @Override
index b38e77b..516daa1 100644 (file)
@@ -35,18 +35,18 @@ import android.content.res.Configuration;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.IBinder;
 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.view.GravityCompat;
 import android.support.v4.widget.DrawerLayout;
 import android.support.v7.app.ActionBar;
 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.support.v7.app.ActionBarActivity;
+import android.support.v7.app.ActionBarDrawerToggle;
+import android.support.v7.app.AppCompatActivity;
 import android.view.View;
 import android.widget.AdapterView;
 import android.view.View;
 import android.widget.AdapterView;
-import android.widget.LinearLayout;
 import android.widget.ListView;
 import android.widget.ListView;
+import android.widget.RelativeLayout;
 import android.widget.Toast;
 
 import com.owncloud.android.BuildConfig;
 import android.widget.Toast;
 
 import com.owncloud.android.BuildConfig;
@@ -76,8 +76,6 @@ 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.ui.adapter.NavigationDrawerListAdapter;
 import com.owncloud.android.ui.dialog.LoadingDialog;
 import com.owncloud.android.ui.dialog.SharePasswordDialogFragment;
-import com.owncloud.android.ui.fragment.FileDetailFragment;
-import com.owncloud.android.ui.fragment.FileFragment;
 import com.owncloud.android.utils.ErrorMessageAdapter;
 
 import java.util.ArrayList;
 import com.owncloud.android.utils.ErrorMessageAdapter;
 
 import java.util.ArrayList;
@@ -87,7 +85,7 @@ import java.util.ArrayList;
  * Activity with common behaviour for activities handling {@link OCFile}s in ownCloud
  * {@link Account}s .
  */
  * Activity with common behaviour for activities handling {@link OCFile}s in ownCloud
  * {@link Account}s .
  */
-public class FileActivity extends ActionBarActivity
+public class FileActivity extends AppCompatActivity
         implements OnRemoteOperationListener, ComponentsGetter {
 
     public static final String EXTRA_FILE = "com.owncloud.android.ui.activity.FILE";
         implements OnRemoteOperationListener, ComponentsGetter {
 
     public static final String EXTRA_FILE = "com.owncloud.android.ui.activity.FILE";
@@ -313,7 +311,7 @@ public class FileActivity extends ActionBarActivity
 
         mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
         // Notification Drawer
 
         mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
         // Notification Drawer
-        LinearLayout navigationDrawerLayout = (LinearLayout) findViewById(R.id.left_drawer);
+        RelativeLayout navigationDrawerLayout = (RelativeLayout) findViewById(R.id.left_drawer);
         mDrawerList = (ListView) navigationDrawerLayout.findViewById(R.id.drawer_list);
 
         // TODO re-enable when "Accounts" is available in Navigation Drawer
         mDrawerList = (ListView) navigationDrawerLayout.findViewById(R.id.drawer_list);
 
         // TODO re-enable when "Accounts" is available in Navigation Drawer
@@ -346,7 +344,8 @@ public class FileActivity extends ActionBarActivity
         // mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[0],
         // mDrawerContentDescriptions[0]));
         // All Files
         // mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[0],
         // mDrawerContentDescriptions[0]));
         // All Files
-        mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[0], mDrawerContentDescriptions[0]));
+        mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[0], mDrawerContentDescriptions[0],
+                R.drawable.ic_folder_open));
 
         // TODO Enable when "On Device" is recovered
         // On Device
 
         // TODO Enable when "On Device" is recovered
         // On Device
@@ -354,11 +353,12 @@ public class FileActivity extends ActionBarActivity
         //        mDrawerContentDescriptions[2]));
 
         // Settings
         //        mDrawerContentDescriptions[2]));
 
         // Settings
-        mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[1], mDrawerContentDescriptions[1]));
+        mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[1], mDrawerContentDescriptions[1],
+                R.drawable.ic_settings));
         // Logs
         if (BuildConfig.DEBUG) {
             mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[2],
         // Logs
         if (BuildConfig.DEBUG) {
             mDrawerItems.add(new NavigationDrawerItem(mDrawerTitles[2],
-                    mDrawerContentDescriptions[2]));
+                    mDrawerContentDescriptions[2],R.drawable.ic_log));
         }
 
         // setting the nav drawer list adapter
         }
 
         // setting the nav drawer list adapter
@@ -366,12 +366,15 @@ public class FileActivity extends ActionBarActivity
                 mDrawerItems);
         mDrawerList.setAdapter(mNavigationDrawerAdapter);
 
                 mDrawerItems);
         mDrawerList.setAdapter(mNavigationDrawerAdapter);
 
-        mDrawerToggle = new ActionBarDrawerToggle(
-                this,
-                mDrawerLayout,
-                R.drawable.ic_drawer,
-                R.string.app_name,
-                R.string.drawer_close) {
+
+        mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout,R.string.drawer_open,R.string.drawer_close) {
+
+            //new ActionBarDrawerToggle(
+            //this,
+            //  mDrawerLayout,
+            //  R.drawable.ic_drawer,
+            //  R.string.app_name,
+            //  R.string.drawer_close) {
 
             /** Called when a drawer has settled in a completely closed state. */
             public void onDrawerClosed(View view) {
 
             /** Called when a drawer has settled in a completely closed state. */
             public void onDrawerClosed(View view) {
@@ -395,6 +398,7 @@ public class FileActivity extends ActionBarActivity
 
         // Set the drawer toggle as the DrawerListener
         mDrawerLayout.setDrawerListener(mDrawerToggle);
 
         // Set the drawer toggle as the DrawerListener
         mDrawerLayout.setDrawerListener(mDrawerToggle);
+
     }
 
     /**
     }
 
     /**
index cfeb541..f7d28bd 100644 (file)
@@ -196,9 +196,15 @@ public class FileDisplayActivity extends HookActivity
                                                                 // according to the official
                                                                 // documentation
 
                                                                 // according to the official
                                                                 // documentation
 
+        // enable ActionBar app icon to behave as action to toggle nav drawer
+        //getSupportActionBar().setDisplayHomeAsUpEnabled(true);
+        getSupportActionBar().setHomeButtonEnabled(true);
+
         setSupportProgressBarIndeterminateVisibility(mSyncInProgress
         /*|| mRefreshSharesInProgress*/);
         // always AFTER setContentView(...) ; to work around bug in its implementation
         setSupportProgressBarIndeterminateVisibility(mSyncInProgress
         /*|| mRefreshSharesInProgress*/);
         // always AFTER setContentView(...) ; to work around bug in its implementation
+
+        initDrawer();
         
         setBackgroundText();
 
         
         setBackgroundText();
 
@@ -209,7 +215,6 @@ public class FileDisplayActivity extends HookActivity
     protected void onStart() {
         Log_OC.v(TAG, "onStart() start");
         super.onStart();
     protected void onStart() {
         Log_OC.v(TAG, "onStart() start");
         super.onStart();
-        getSupportActionBar().setIcon(DisplayUtils.getSeasonalIconId());
         Log_OC.v(TAG, "onStart() end");
     }
 
         Log_OC.v(TAG, "onStart() end");
     }
 
@@ -1028,7 +1033,9 @@ public class FileDisplayActivity extends HookActivity
                         startImagePreview(getFile());
                     } // TODO what about other kind of previews?
                 }
                         startImagePreview(getFile());
                     } // TODO what about other kind of previews?
                 }
-                
+
+                setSupportProgressBarIndeterminate(false);
+
             } finally {
                 if (intent != null) {
                     removeStickyBroadcast(intent);
             } finally {
                 if (intent != null) {
                     removeStickyBroadcast(intent);
@@ -1166,7 +1173,6 @@ public class FileDisplayActivity extends HookActivity
 
     }
 
 
     }
 
-
     @Override
     protected ServiceConnection newTransferenceServiceConnection() {
         return new ListServiceConnection();
     @Override
     protected ServiceConnection newTransferenceServiceConnection() {
         return new ListServiceConnection();
index a358f79..df067f0 100644 (file)
@@ -59,7 +59,6 @@ import com.owncloud.android.syncadapter.FileSyncAdapter;
 import com.owncloud.android.ui.dialog.CreateFolderDialogFragment;
 import com.owncloud.android.ui.fragment.FileFragment;
 import com.owncloud.android.ui.fragment.OCFileListFragment;
 import com.owncloud.android.ui.dialog.CreateFolderDialogFragment;
 import com.owncloud.android.ui.fragment.FileFragment;
 import com.owncloud.android.ui.fragment.OCFileListFragment;
-import com.owncloud.android.utils.DisplayUtils;
 import com.owncloud.android.utils.ErrorMessageAdapter;
 
 public class FolderPickerActivity extends FileActivity implements FileFragment.ContainerActivity, 
 import com.owncloud.android.utils.ErrorMessageAdapter;
 
 public class FolderPickerActivity extends FileActivity implements FileFragment.ContainerActivity, 
@@ -116,7 +115,6 @@ public class FolderPickerActivity extends FileActivity implements FileFragment.C
     @Override
     protected void onStart() {
         super.onStart();
     @Override
     protected void onStart() {
         super.onStart();
-        getSupportActionBar().setIcon(DisplayUtils.getSeasonalIconId());
     }
 
     /**
     }
 
     /**
index fab638d..28e1323 100644 (file)
@@ -81,9 +81,6 @@ public class GenericExplanationActivity  extends ActionBarActivity {
         } else {
             listView.setVisibility(View.GONE);
         }
         } else {
             listView.setVisibility(View.GONE);
         }
-        
-        ActionBar actionBar = getSupportActionBar();
-        actionBar.setIcon(DisplayUtils.getSeasonalIconId());
     }
     
     public class ExplanationListAdapterView extends ArrayAdapter<String> {
     }
     
     public class ExplanationListAdapterView extends ArrayAdapter<String> {
index 71b9d57..96e3c79 100644 (file)
@@ -72,9 +72,7 @@ public class LogHistoryActivity extends ActionBarActivity {
 
         setContentView(R.layout.log_send_file);
         setTitle(getText(R.string.actionbar_logger));
 
         setContentView(R.layout.log_send_file);
         setTitle(getText(R.string.actionbar_logger));
-        ActionBar actionBar = getSupportActionBar();
-        actionBar.setIcon(DisplayUtils.getSeasonalIconId());
-        actionBar.setDisplayHomeAsUpEnabled(true);
+        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
         Button deleteHistoryButton = (Button) findViewById(R.id.deleteLogHistoryButton);
         Button sendHistoryButton = (Button) findViewById(R.id.sendLogHistoryButton);
         TextView logTV = (TextView) findViewById(R.id.logTV);
         Button deleteHistoryButton = (Button) findViewById(R.id.deleteLogHistoryButton);
         Button sendHistoryButton = (Button) findViewById(R.id.sendLogHistoryButton);
         TextView logTV = (TextView) findViewById(R.id.logTV);
index 09a9630..39727dc 100644 (file)
@@ -128,9 +128,6 @@ public class PassCodeActivity extends ActionBarActivity {
         }
 
         setTextListeners();
         }
 
         setTextListeners();
-        
-        ActionBar actionBar = getSupportActionBar();
-        actionBar.setIcon(DisplayUtils.getSeasonalIconId());
     }
 
 
     }
 
 
index ca7f887..f0e7d85 100644 (file)
@@ -32,8 +32,8 @@ import android.content.ServiceConnection;
 import android.content.SharedPreferences;
 import android.content.pm.PackageInfo;
 import android.content.pm.PackageManager.NameNotFoundException;
 import android.content.SharedPreferences;
 import android.content.pm.PackageInfo;
 import android.content.pm.PackageManager.NameNotFoundException;
+import android.content.res.Configuration;
 import android.net.Uri;
 import android.net.Uri;
-import android.os.Build;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.IBinder;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.IBinder;
@@ -44,13 +44,18 @@ import android.preference.Preference.OnPreferenceClickListener;
 import android.preference.PreferenceActivity;
 import android.preference.PreferenceCategory;
 import android.preference.PreferenceManager;
 import android.preference.PreferenceActivity;
 import android.preference.PreferenceCategory;
 import android.preference.PreferenceManager;
-//import android.support.v7.app.ActionBar;
-import android.app.ActionBar;
+import android.support.annotation.LayoutRes;
+import android.support.annotation.Nullable;
+import android.support.v7.app.ActionBar;
+import android.support.v7.app.AppCompatDelegate;
+import android.support.v7.widget.Toolbar;
 import android.view.ContextMenu;
 import android.view.ContextMenu.ContextMenuInfo;
 import android.view.Menu;
 import android.view.ContextMenu;
 import android.view.ContextMenu.ContextMenuInfo;
 import android.view.Menu;
+import android.view.MenuInflater;
 import android.view.MenuItem;
 import android.view.View;
 import android.view.MenuItem;
 import android.view.View;
+import android.view.ViewGroup;
 import android.widget.AdapterView;
 import android.widget.AdapterView.OnItemLongClickListener;
 import android.widget.ListAdapter;
 import android.widget.AdapterView;
 import android.widget.AdapterView.OnItemLongClickListener;
 import android.widget.ListAdapter;
@@ -75,6 +80,9 @@ import com.owncloud.android.utils.DisplayUtils;
 
 /**
  * An Activity that allows the user to change the application's settings.
 
 /**
  * An Activity that allows the user to change the application's settings.
+ *
+ * It proxies the necessary calls via {@link android.support.v7.app.AppCompatDelegate} to be used
+ * with AppCompat.
  */
 public class Preferences extends PreferenceActivity
         implements AccountManagerCallback<Boolean>, ComponentsGetter {
  */
 public class Preferences extends PreferenceActivity
         implements AccountManagerCallback<Boolean>, ComponentsGetter {
@@ -87,6 +95,7 @@ public class Preferences extends PreferenceActivity
     private DbHandler mDbHandler;
     private CheckBoxPreference pCode;
     private Preference pAboutApp;
     private DbHandler mDbHandler;
     private CheckBoxPreference pCode;
     private Preference pAboutApp;
+    private AppCompatDelegate mDelegate;
 
     private PreferenceCategory mAccountsPrefCategory = null;
     private final Handler mHandler = new Handler();
 
     private PreferenceCategory mAccountsPrefCategory = null;
     private final Handler mHandler = new Handler();
@@ -109,23 +118,15 @@ public class Preferences extends PreferenceActivity
     @SuppressWarnings("deprecation")
     @Override
     public void onCreate(Bundle savedInstanceState) {
     @SuppressWarnings("deprecation")
     @Override
     public void onCreate(Bundle savedInstanceState) {
+        getDelegate().installViewFactory();
+        getDelegate().onCreate(savedInstanceState);
         super.onCreate(savedInstanceState);
         mDbHandler = new DbHandler(getBaseContext());
         addPreferencesFromResource(R.xml.preferences);
 
         super.onCreate(savedInstanceState);
         mDbHandler = new DbHandler(getBaseContext());
         addPreferencesFromResource(R.xml.preferences);
 
-        // Set properties of Action Bar in an ugly workaround to build correctly without
-        // upgrading minSdk
-        // TODO : increase minSdk; scheduled for next realease, don't wont to mix with this US
-        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
-            ActionBar actionBar = getActionBar();
-            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
-                actionBar.setIcon(DisplayUtils.getSeasonalIconId());
-            }
-            actionBar.setDisplayHomeAsUpEnabled(true);
-            actionBar.setTitle(R.string.actionbar_settings);
-        } else {
-            setTitle(R.string.actionbar_settings);
-        }
+        ActionBar actionBar = getSupportActionBar();
+        actionBar.setDisplayHomeAsUpEnabled(true);
+        actionBar.setTitle(R.string.actionbar_settings);
 
         // For adding content description tag to a title field in the action bar
         int actionBarTitleId = getResources().getIdentifier("action_bar_title", "id", "android");
 
         // For adding content description tag to a title field in the action bar
         int actionBarTitleId = getResources().getIdentifier("action_bar_title", "id", "android");
@@ -571,6 +572,61 @@ public class Preferences extends PreferenceActivity
         }
     }
 
         }
     }
 
+    public ActionBar getSupportActionBar() {
+        return getDelegate().getSupportActionBar();
+    }
+
+    public void setSupportActionBar(@Nullable Toolbar toolbar) {
+        getDelegate().setSupportActionBar(toolbar);
+    }
+
+    @Override
+    public MenuInflater getMenuInflater() {
+        return getDelegate().getMenuInflater();
+    }
+
+    @Override
+    public void setContentView(@LayoutRes int layoutResID) {
+        getDelegate().setContentView(layoutResID);
+    }
+    @Override
+    public void setContentView(View view) {
+        getDelegate().setContentView(view);
+    }
+    @Override
+    public void setContentView(View view, ViewGroup.LayoutParams params) {
+        getDelegate().setContentView(view, params);
+    }
+
+    @Override
+    public void addContentView(View view, ViewGroup.LayoutParams params) {
+        getDelegate().addContentView(view, params);
+    }
+
+    @Override
+    protected void onPostResume() {
+        super.onPostResume();
+        getDelegate().onPostResume();
+    }
+
+    @Override
+    protected void onTitleChanged(CharSequence title, int color) {
+        super.onTitleChanged(title, color);
+        getDelegate().setTitle(title);
+    }
+
+    @Override
+    public void onConfigurationChanged(Configuration newConfig) {
+        super.onConfigurationChanged(newConfig);
+        getDelegate().onConfigurationChanged(newConfig);
+    }
+
+    @Override
+    protected void onPostCreate(Bundle savedInstanceState) {
+        super.onPostCreate(savedInstanceState);
+        getDelegate().onPostCreate(savedInstanceState);
+    }
+
     @Override
     protected void onDestroy() {
         mDbHandler.close();
     @Override
     protected void onDestroy() {
         mDbHandler.close();
@@ -585,6 +641,24 @@ public class Preferences extends PreferenceActivity
         }
 
         super.onDestroy();
         }
 
         super.onDestroy();
+        getDelegate().onDestroy();
+    }
+
+    @Override
+    protected void onStop() {
+        super.onStop();
+        getDelegate().onStop();
+    }
+
+    public void invalidateOptionsMenu() {
+        getDelegate().invalidateOptionsMenu();
+    }
+
+    private AppCompatDelegate getDelegate() {
+        if (mDelegate == null) {
+            mDelegate = AppCompatDelegate.create(this, null);
+        }
+        return mDelegate;
     }
 
     /**
     }
 
     /**
index 7a7f8e5..1509797 100644 (file)
@@ -117,7 +117,6 @@ public class UploadFilesActivity extends FileActivity implements
             
         // Action bar setup
         ActionBar actionBar = getSupportActionBar();
             
         // Action bar setup
         ActionBar actionBar = getSupportActionBar();
-        actionBar.setIcon(DisplayUtils.getSeasonalIconId());
         actionBar.setHomeButtonEnabled(true);   // mandatory since Android ICS, according to the
                                                 // official documentation
         actionBar.setDisplayHomeAsUpEnabled(mCurrentDir != null && mCurrentDir.getName() != null);
         actionBar.setHomeButtonEnabled(true);   // mandatory since Android ICS, according to the
                                                 // official documentation
         actionBar.setDisplayHomeAsUpEnabled(mCurrentDir != null && mCurrentDir.getName() != null);
index f0e0695..3a55cdc 100644 (file)
@@ -146,11 +146,6 @@ public class Uploader extends FileActivity
         if (mAccountSelected) {
             setAccount((Account) savedInstanceState.getParcelable(FileActivity.EXTRA_ACCOUNT));
         }
         if (mAccountSelected) {
             setAccount((Account) savedInstanceState.getParcelable(FileActivity.EXTRA_ACCOUNT));
         }
-
-
-        ActionBar actionBar = getSupportActionBar();
-        actionBar.setIcon(DisplayUtils.getSeasonalIconId());
-
     }
 
     @Override
     }
 
     @Override
index 78d0693..a8a6027 100644 (file)
@@ -28,6 +28,7 @@ import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.BaseAdapter;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.BaseAdapter;
+import android.widget.ImageView;
 import android.widget.LinearLayout;
 import android.widget.TextView;
 
 import android.widget.LinearLayout;
 import android.widget.TextView;
 
@@ -102,12 +103,18 @@ public class NavigationDrawerListAdapter extends BaseAdapter {
                 NavigationDrawerItem navItem = (NavigationDrawerItem) mAll.get(position);
 
                 View view = inflator.inflate(R.layout.drawer_list_item, null);
                 NavigationDrawerItem navItem = (NavigationDrawerItem) mAll.get(position);
 
                 View view = inflator.inflate(R.layout.drawer_list_item, null);
-                view.setMinimumHeight(40);
+
                 LinearLayout itemLayout = (LinearLayout) view.findViewById(R.id.itemLayout);
                 itemLayout.setContentDescription(navItem.getContentDescription());
                 LinearLayout itemLayout = (LinearLayout) view.findViewById(R.id.itemLayout);
                 itemLayout.setContentDescription(navItem.getContentDescription());
+
                 TextView itemText = (TextView) view.findViewById(R.id.itemTitle);
                 itemText.setText(navItem.getTitle());
 
                 TextView itemText = (TextView) view.findViewById(R.id.itemTitle);
                 itemText.setText(navItem.getTitle());
 
+                if(navItem.getIcon()!=0) {
+                    ImageView itemImage = (ImageView) view.findViewById(R.id.itemIcon);
+                    itemImage.setImageResource(navItem.getIcon());
+                }
+
                 return view;
             }
             // TODO re-enable when "Accounts" is available in Navigation Drawer
                 return view;
             }
             // TODO re-enable when "Accounts" is available in Navigation Drawer
index d322a8e..6ddc0e2 100644 (file)
@@ -28,7 +28,7 @@ import android.os.Bundle;
 import android.support.v4.app.DialogFragment;
 import android.support.v4.app.Fragment;
 import android.support.v4.app.FragmentTransaction;
 import android.support.v4.app.DialogFragment;
 import android.support.v4.app.Fragment;
 import android.support.v4.app.FragmentTransaction;
-import android.support.v7.app.ActionBarActivity;
+import android.support.v7.app.AppCompatActivity;
 
 import com.owncloud.android.R;
 import com.owncloud.android.utils.DisplayUtils;
 
 import com.owncloud.android.R;
 import com.owncloud.android.utils.DisplayUtils;
@@ -91,7 +91,7 @@ public class ConflictsResolveDialog extends DialogFragment {
                    .create();
     }
     
                    .create();
     }
     
-    public void showDialog(ActionBarActivity activity) {
+    public void showDialog(AppCompatActivity activity) {
         Fragment prev = activity.getSupportFragmentManager().findFragmentByTag("dialog");
         FragmentTransaction ft = activity.getSupportFragmentManager().beginTransaction();
         if (prev != null) {
         Fragment prev = activity.getSupportFragmentManager().findFragmentByTag("dialog");
         FragmentTransaction ft = activity.getSupportFragmentManager().beginTransaction();
         if (prev != null) {
@@ -102,7 +102,7 @@ public class ConflictsResolveDialog extends DialogFragment {
         this.show(ft, "dialog");
     }
 
         this.show(ft, "dialog");
     }
 
-    public void dismissDialog(ActionBarActivity activity) {
+    public void dismissDialog(AppCompatActivity activity) {
         Fragment prev = activity.getSupportFragmentManager().findFragmentByTag(getTag());
         if (prev != null) {
             FragmentTransaction ft = activity.getSupportFragmentManager().beginTransaction();
         Fragment prev = activity.getSupportFragmentManager().findFragmentByTag(getTag());
         if (prev != null) {
             FragmentTransaction ft = activity.getSupportFragmentManager().beginTransaction();