Эх сурвалжийг харах

Merge pull request #6569 from nextcloud/fixToolbar

Fix toolbar
Tobias Kaminsky 4 жил өмнө
parent
commit
f7d886037a
15 өөрчлөгдсөн 151 нэмэгдсэн , 133 устгасан
  1. BIN
      screenshots/gplay/debug/com.nextcloud.client.FileDisplayActivityScreenshotIT_drawer.png
  2. BIN
      screenshots/gplay/debug/com.nextcloud.client.FileDisplayActivityScreenshotIT_open.png
  3. BIN
      screenshots/gplay/debug/com.nextcloud.client.NotificationsActivityIT_openDrawer.png
  4. BIN
      screenshots/gplay/debug/com.nextcloud.client.SyncedFoldersActivityIT_openDrawer.png
  5. BIN
      screenshots/gplay/debug/com.nextcloud.client.UploadListActivityActivityIT_openDrawer.png
  6. BIN
      screenshots/gplay/debug/com.owncloud.android.ui.activity.ManageAccountsActivityIT_open.png
  7. BIN
      screenshots/gplay/debug/com.owncloud.android.ui.activity.ManageAccountsActivityIT_userInfoDetail.png
  8. BIN
      screenshots/gplay/debug/com.owncloud.android.ui.activity.NotificationsActivityIT_empty.png
  9. BIN
      screenshots/gplay/debug/com.owncloud.android.ui.activity.NotificationsActivityIT_error.png
  10. BIN
      screenshots/gplay/debug/com.owncloud.android.ui.activity.NotificationsActivityIT_loading.png
  11. BIN
      screenshots/gplay/debug/com.owncloud.android.ui.activity.NotificationsActivityIT_showNotifications.png
  12. 2 0
      src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java
  13. 1 1
      src/main/java/com/owncloud/android/ui/activity/ToolbarActivity.java
  14. 5 0
      src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java
  15. 143 132
      src/main/res/layout/toolbar_standard.xml

BIN
screenshots/gplay/debug/com.nextcloud.client.FileDisplayActivityScreenshotIT_drawer.png


BIN
screenshots/gplay/debug/com.nextcloud.client.FileDisplayActivityScreenshotIT_open.png


BIN
screenshots/gplay/debug/com.nextcloud.client.NotificationsActivityIT_openDrawer.png


BIN
screenshots/gplay/debug/com.nextcloud.client.SyncedFoldersActivityIT_openDrawer.png


BIN
screenshots/gplay/debug/com.nextcloud.client.UploadListActivityActivityIT_openDrawer.png


BIN
screenshots/gplay/debug/com.owncloud.android.ui.activity.ManageAccountsActivityIT_open.png


BIN
screenshots/gplay/debug/com.owncloud.android.ui.activity.ManageAccountsActivityIT_userInfoDetail.png


BIN
screenshots/gplay/debug/com.owncloud.android.ui.activity.NotificationsActivityIT_empty.png


BIN
screenshots/gplay/debug/com.owncloud.android.ui.activity.NotificationsActivityIT_error.png


BIN
screenshots/gplay/debug/com.owncloud.android.ui.activity.NotificationsActivityIT_loading.png


BIN
screenshots/gplay/debug/com.owncloud.android.ui.activity.NotificationsActivityIT_showNotifications.png


+ 2 - 0
src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java

@@ -2144,6 +2144,7 @@ public class FileDisplayActivity extends FileActivity
             return; // not reachable under normal conditions
         }
         if (showPreview && file.isDown() && !file.isDownloading() || streamMedia) {
+            showSortListGroup(false);
             Fragment mediaFragment = PreviewMediaFragment.newInstance(file, user.get(), startPlaybackPosition, autoplay);
             setSecondFragment(mediaFragment);
             updateFragmentsVisibility(true);
@@ -2197,6 +2198,7 @@ public class FileDisplayActivity extends FileActivity
      * @param folder {@link OCFile} to preview its rich workspace.
      */
     public void startRichWorkspacePreview(OCFile folder) {
+        showSortListGroup(false);
         Bundle args = new Bundle();
         args.putParcelable(EXTRA_FILE, folder);
         Fragment textPreviewFragment = Fragment.instantiate(getApplicationContext(),

+ 1 - 1
src/main/java/com/owncloud/android/ui/activity/ToolbarActivity.java

@@ -53,7 +53,7 @@ import androidx.core.content.ContextCompat;
 import androidx.core.view.ViewCompat;
 
 /**
- * Base class providing toolbar registration functionality, see {@link #setupToolbar(boolean)}.
+ * Base class providing toolbar registration functionality, see {@link #setupToolbar(boolean, boolean)}.
  */
 public abstract class ToolbarActivity extends BaseActivity {
     protected MaterialButton mMenuButton;

+ 5 - 0
src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java

@@ -1001,10 +1001,13 @@ public class OCFileListFragment extends ExtendedListFragment implements
                         ((FileDisplayActivity) mContainerActivity).startContactListFragment(file);
                     } else if (PreviewTextFileFragment.canBePreviewed(file)) {
                         setFabVisible(false);
+                        resetHeaderScrollingState();
                         ((FileDisplayActivity) mContainerActivity).startTextPreview(file, false);
                     } else if (file.isDown()) {
                         if (PreviewMediaFragment.canBePreviewed(file)) {
                             // media preview
+                            setFabVisible(false);
+                            resetHeaderScrollingState();
                             ((FileDisplayActivity) mContainerActivity).startMediaPreview(file, 0, true, true, false);
                         } else {
                             mContainerActivity.getFileOperationsHelper().openFile(file);
@@ -1018,6 +1021,8 @@ public class OCFileListFragment extends ExtendedListFragment implements
                         if (PreviewMediaFragment.canBePreviewed(file) && account.getServer().getVersion()
                             .isMediaStreamingSupported() && !file.isEncrypted()) {
                             // stream media preview on >= NC14
+                            setFabVisible(false);
+                            resetHeaderScrollingState();
                             ((FileDisplayActivity) mContainerActivity).startMediaPreview(file, 0, true, true, true);
                         } else if (FileMenuFilter.isEditorAvailable(requireContext().getContentResolver(),
                                                                     accountManager.getUser(),

+ 143 - 132
src/main/res/layout/toolbar_standard.xml

@@ -27,160 +27,171 @@
     android:background="@color/bg_default"
     tools:viewBindingIgnore="true">
 
-    <RelativeLayout
-        android:id="@+id/default_toolbar"
+    <FrameLayout
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         app:layout_scrollFlags="scroll|enterAlways">
 
-        <FrameLayout
-            android:id="@+id/preview_image_frame"
-            android:layout_width="match_parent"
-            android:layout_height="@dimen/nav_drawer_header_height"
-            android:visibility="gone">
-
-            <ImageView
-                android:id="@+id/preview_image"
-                android:layout_width="match_parent"
-                android:layout_height="@dimen/nav_drawer_header_height"
-                android:contentDescription="@string/preview_image_description"
-                android:scaleType="centerCrop" />
-
-            <View
-                android:layout_width="match_parent"
-                android:layout_height="@dimen/nav_drawer_header_height"
-                android:background="@drawable/preview_image_gradient_shape" />
-        </FrameLayout>
-
-        <androidx.appcompat.widget.Toolbar
-            android:id="@+id/toolbar"
-            android:layout_width="match_parent"
-            android:layout_height="62dp"
-            android:background="@color/appbar"
-            android:theme="@style/ThemeOverlay.MaterialComponents.Dark.ActionBar"
-            app:popupTheme="@style/Theme.AppCompat.DayNight.NoActionBar"
-            tools:visibility="gone">
-
-            <androidx.appcompat.widget.AppCompatSpinner
-                android:id="@+id/toolbar_spinner"
-                android:layout_width="wrap_content"
-                android:layout_height="match_parent"
-                android:visibility="gone"
-                app:backgroundTint="@color/fontAppbar"
-                app:popupTheme="@style/Theme.AppCompat.DayNight.NoActionBar" />
-        </androidx.appcompat.widget.Toolbar>
-
-    </RelativeLayout>
-
-    <com.google.android.material.card.MaterialCardView
-        android:id="@+id/home_toolbar"
-        android:layout_width="match_parent"
-        android:layout_height="50dp"
-        android:layout_marginStart="16dp"
-        android:layout_marginTop="8dp"
-        android:layout_marginEnd="16dp"
-        android:layout_marginBottom="4dp"
-        android:visibility="gone"
-        app:background="@color/appbar"
-        app:cardCornerRadius="8dp"
-        app:cardElevation="2dp"
-        app:strokeWidth="0dp"
-        tools:visibility="visible"
-        app:layout_scrollFlags="scroll|enterAlways">
-
+        <!-- sorting/layout bar -->
         <androidx.constraintlayout.widget.ConstraintLayout
+            android:id="@+id/sort_list_button_group"
             android:layout_width="match_parent"
-            android:layout_height="match_parent">
+            android:layout_height="wrap_content"
+            android:layout_marginTop="?attr/actionBarSize"
+            android:background="@color/bg_default"
+            android:paddingTop="@dimen/standard_eigth_padding"
+            android:visibility="gone"
+            tools:visibility="visible">
 
             <com.google.android.material.button.MaterialButton
-                android:id="@+id/menu_button"
-                style="@style/Widget.AppTheme.Button.IconButton"
-                android:layout_width="38dp"
-                android:layout_height="38dp"
+                android:id="@+id/sort_button"
+                style="@style/Widget.MaterialComponents.Button.TextButton"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
                 android:layout_marginStart="8dp"
-                android:contentDescription="@string/action_switch_grid_view"
-                app:cornerRadius="@dimen/button_corner_radius"
-                app:icon="@drawable/ic_menu"
+                android:contentDescription="@string/actionbar_sort"
+                android:minWidth="0dp"
+                android:text="@string/menu_item_sort_by_date_newest_first"
+                android:textAlignment="textStart"
+                android:textAllCaps="false"
+                android:textColor="@color/fontAppbar"
+                android:textSize="14sp"
+                app:icon="@drawable/ic_keyboard_arrow_down"
+                app:iconGravity="textEnd"
+                app:iconSize="16dp"
                 app:iconTint="@color/fontAppbar"
                 app:layout_constraintBottom_toBottomOf="parent"
                 app:layout_constraintStart_toStartOf="parent"
                 app:layout_constraintTop_toTopOf="parent" />
 
-            <com.google.android.material.textview.MaterialTextView
-                android:id="@+id/search_text"
-                android:layout_width="0dp"
-                android:layout_height="wrap_content"
-                android:layout_marginStart="18dp"
-                android:layout_marginEnd="18dp"
-                android:ellipsize="end"
-                android:gravity="start"
-                android:lines="1"
-                android:textColor="@color/fontSecondaryAppbar"
-                android:textSize="16sp"
-                app:layout_constraintBottom_toBottomOf="parent"
-                app:layout_constraintLeft_toRightOf="@id/menu_button"
-                app:layout_constraintRight_toLeftOf="@id/switch_account_button"
-                app:layout_constraintTop_toTopOf="parent"
-                tools:text="Search in Nextcloud"/>
-
             <com.google.android.material.button.MaterialButton
-                android:id="@+id/switch_account_button"
+                android:id="@+id/switch_grid_view_button"
                 style="@style/Widget.AppTheme.Button.IconButton"
-                android:layout_width="42dp"
-                android:layout_height="42dp"
-                android:layout_marginEnd="6dp"
-                app:cornerRadius="@dimen/button_corner_radius"
-                app:iconSize="30dp"
+                android:layout_width="38dp"
+                android:layout_height="38dp"
+                android:layout_marginEnd="4dp"
+                android:contentDescription="@string/action_switch_grid_view"
+                app:cornerRadius="24dp"
+                app:icon="@drawable/ic_view_module"
+                app:iconTint="@color/fontAppbar"
                 app:layout_constraintBottom_toBottomOf="parent"
                 app:layout_constraintEnd_toEndOf="parent"
                 app:layout_constraintTop_toTopOf="parent" />
-
         </androidx.constraintlayout.widget.ConstraintLayout>
 
-    </com.google.android.material.card.MaterialCardView>
-
-    <androidx.constraintlayout.widget.ConstraintLayout
-        android:id="@+id/sort_list_button_group"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:visibility="gone"
-        app:layout_scrollFlags="scroll|enterAlways">
+        <!-- default toolbar -->
+        <RelativeLayout
+            android:id="@+id/default_toolbar"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content">
 
-        <com.google.android.material.button.MaterialButton
-            android:id="@+id/sort_button"
-            style="@style/Widget.MaterialComponents.Button.TextButton"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_marginStart="8dp"
-            android:contentDescription="@string/actionbar_sort"
-            android:minWidth="0dp"
-            android:text="@string/menu_item_sort_by_date_newest_first"
-            android:textAlignment="textStart"
-            android:textAllCaps="false"
-            android:textColor="@color/fontAppbar"
-            android:textSize="14sp"
-            app:icon="@drawable/ic_keyboard_arrow_down"
-            app:iconGravity="textEnd"
-            app:iconSize="16dp"
-            app:iconTint="@color/fontAppbar"
-            app:layout_constraintBottom_toBottomOf="parent"
-            app:layout_constraintStart_toStartOf="parent"
-            app:layout_constraintTop_toTopOf="parent" />
-
-        <com.google.android.material.button.MaterialButton
-            android:id="@+id/switch_grid_view_button"
-            style="@style/Widget.AppTheme.Button.IconButton"
-            android:layout_width="38dp"
-            android:layout_height="38dp"
-            android:layout_marginEnd="4dp"
-            android:contentDescription="@string/action_switch_grid_view"
-            app:cornerRadius="24dp"
-            app:icon="@drawable/ic_view_module"
-            app:iconTint="@color/fontAppbar"
-            app:layout_constraintBottom_toBottomOf="parent"
-            app:layout_constraintEnd_toEndOf="parent"
-            app:layout_constraintTop_toTopOf="parent" />
-    </androidx.constraintlayout.widget.ConstraintLayout>
+            <FrameLayout
+                android:id="@+id/preview_image_frame"
+                android:layout_width="match_parent"
+                android:layout_height="@dimen/nav_drawer_header_height"
+                android:visibility="gone">
+
+                <ImageView
+                    android:id="@+id/preview_image"
+                    android:layout_width="match_parent"
+                    android:layout_height="@dimen/nav_drawer_header_height"
+                    android:contentDescription="@string/preview_image_description"
+                    android:scaleType="centerCrop" />
+
+                <View
+                    android:layout_width="match_parent"
+                    android:layout_height="@dimen/nav_drawer_header_height"
+                    android:background="@drawable/preview_image_gradient_shape" />
+            </FrameLayout>
+
+            <androidx.appcompat.widget.Toolbar
+                android:id="@+id/toolbar"
+                android:layout_width="match_parent"
+                android:layout_height="?attr/actionBarSize"
+                android:background="@color/appbar"
+                android:theme="@style/ThemeOverlay.MaterialComponents.Dark.ActionBar"
+                app:popupTheme="@style/Theme.AppCompat.DayNight.NoActionBar"
+                tools:visibility="gone">
+
+                <androidx.appcompat.widget.AppCompatSpinner
+                    android:id="@+id/toolbar_spinner"
+                    android:layout_width="wrap_content"
+                    android:layout_height="match_parent"
+                    android:visibility="gone"
+                    app:backgroundTint="@color/fontAppbar"
+                    app:popupTheme="@style/Theme.AppCompat.DayNight.NoActionBar" />
+            </androidx.appcompat.widget.Toolbar>
+
+        </RelativeLayout>
+
+        <!-- home/search toolbar -->
+        <com.google.android.material.card.MaterialCardView
+            android:id="@+id/home_toolbar"
+            android:layout_width="match_parent"
+            android:layout_height="50dp"
+            android:layout_marginStart="16dp"
+            android:layout_marginTop="8dp"
+            android:layout_marginEnd="16dp"
+            android:layout_marginBottom="4dp"
+            android:visibility="gone"
+            app:background="@color/appbar"
+            app:cardCornerRadius="8dp"
+            app:cardElevation="2dp"
+            app:strokeWidth="0dp"
+            tools:visibility="visible">
+
+            <androidx.constraintlayout.widget.ConstraintLayout
+                android:layout_width="match_parent"
+                android:layout_height="match_parent">
+
+                <com.google.android.material.button.MaterialButton
+                    android:id="@+id/menu_button"
+                    style="@style/Widget.AppTheme.Button.IconButton"
+                    android:layout_width="38dp"
+                    android:layout_height="38dp"
+                    android:layout_marginStart="8dp"
+                    android:contentDescription="@string/action_switch_grid_view"
+                    app:cornerRadius="@dimen/button_corner_radius"
+                    app:icon="@drawable/ic_menu"
+                    app:iconTint="@color/fontAppbar"
+                    app:layout_constraintBottom_toBottomOf="parent"
+                    app:layout_constraintStart_toStartOf="parent"
+                    app:layout_constraintTop_toTopOf="parent" />
+
+                <com.google.android.material.textview.MaterialTextView
+                    android:id="@+id/search_text"
+                    android:layout_width="0dp"
+                    android:layout_height="wrap_content"
+                    android:layout_marginStart="18dp"
+                    android:layout_marginEnd="18dp"
+                    android:ellipsize="end"
+                    android:gravity="start"
+                    android:lines="1"
+                    android:textColor="@color/fontSecondaryAppbar"
+                    android:textSize="16sp"
+                    app:layout_constraintBottom_toBottomOf="parent"
+                    app:layout_constraintLeft_toRightOf="@id/menu_button"
+                    app:layout_constraintRight_toLeftOf="@id/switch_account_button"
+                    app:layout_constraintTop_toTopOf="parent"
+                    tools:text="Search in Nextcloud" />
+
+                <com.google.android.material.button.MaterialButton
+                    android:id="@+id/switch_account_button"
+                    style="@style/Widget.AppTheme.Button.IconButton"
+                    android:layout_width="42dp"
+                    android:layout_height="42dp"
+                    android:layout_marginEnd="6dp"
+                    app:cornerRadius="@dimen/button_corner_radius"
+                    app:iconSize="30dp"
+                    app:layout_constraintBottom_toBottomOf="parent"
+                    app:layout_constraintEnd_toEndOf="parent"
+                    app:layout_constraintTop_toTopOf="parent" />
+
+            </androidx.constraintlayout.widget.ConstraintLayout>
+
+        </com.google.android.material.card.MaterialCardView>
+
+    </FrameLayout>
 
     <include layout="@layout/info_box" />