mirror of
https://github.com/anyproto/anytype-kotlin.git
synced 2025-06-08 05:47:05 +09:00
DROID-108 Editor | Pre-open object loading state (#2473)
* DROID-108 added loading state blocks * DROID-108 add loading layouts * DROID-108 loading blocks * DROID-108 revert * DROID-108 revert * DROID-108 loading gradient * DROID-108 show loading state on object start * DROID-108 loading design * DROID-108 update colors * DROID-108 clear loading state * DROID-108 delete legacy Co-authored-by: konstantiniiv <ki@anytype.io>
This commit is contained in:
parent
e1707d461a
commit
40e2a8a878
7 changed files with 131 additions and 0 deletions
|
@ -1195,10 +1195,12 @@ open class EditorFragment : NavigationFragment<FragmentEditorBinding>(R.layout.f
|
|||
when (state) {
|
||||
is ViewState.Success -> {
|
||||
blockAdapter.updateWithDiffUtil(state.blocks)
|
||||
binding.recycler.visible()
|
||||
binding.recycler.invalidateItemDecorations()
|
||||
val isLocked = vm.mode is Editor.Mode.Locked
|
||||
binding.topToolbar.setIsLocked(isLocked)
|
||||
resetDocumentTitle(state)
|
||||
binding.loadingContainer.root.gone()
|
||||
}
|
||||
is ViewState.OpenLinkScreen -> {
|
||||
if (childFragmentManager.findFragmentByTag(TAG_LINK) == null) {
|
||||
|
|
|
@ -16,6 +16,10 @@
|
|||
android:focusable="true"
|
||||
android:focusableInTouchMode="true" />
|
||||
|
||||
<include
|
||||
android:id="@+id/loading_container"
|
||||
layout="@layout/object_loading_state"/>
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/sheet"
|
||||
android:layout_width="match_parent"
|
||||
|
@ -32,6 +36,7 @@
|
|||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:itemCount="1"
|
||||
android:visibility="gone"
|
||||
tools:listitem="@layout/item_block_title" />
|
||||
|
||||
<com.anytypeio.anytype.core_ui.widgets.toolbar.ObjectTopToolbar
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
<gradient
|
||||
android:angle="90"
|
||||
android:endColor="@color/object_loading_state_gradient_start_color"
|
||||
android:startColor="@color/object_loading_state_gradient_end_color"
|
||||
android:type="linear" />
|
||||
<stroke
|
||||
android:width="4dp"
|
||||
android:color="@color/background_primary" />
|
||||
<corners android:radius="18dp" />
|
||||
</shape>
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item>
|
||||
<shape>
|
||||
<gradient android:angle="90" android:endColor="@color/object_loading_state_gradient_end_color" android:startColor="@color/object_loading_state_gradient_start_color" android:type="linear" />
|
||||
</shape>
|
||||
</item>
|
||||
</selector>
|
100
core-ui/src/main/res/layout/object_loading_state.xml
Normal file
100
core-ui/src/main/res/layout/object_loading_state.xml
Normal file
|
@ -0,0 +1,100 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<com.facebook.shimmer.ShimmerFrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:id="@+id/shimmerLayout"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<View
|
||||
android:id="@+id/view8"
|
||||
android:layout_width="97dp"
|
||||
android:layout_height="14dp"
|
||||
android:layout_marginStart="17dp"
|
||||
android:layout_marginTop="14dp"
|
||||
android:background="@drawable/bg_object_loading_state"
|
||||
app:layout_constraintStart_toEndOf="@+id/view7"
|
||||
app:layout_constraintTop_toBottomOf="@+id/view5" />
|
||||
|
||||
<View
|
||||
android:id="@+id/view7"
|
||||
android:layout_width="30dp"
|
||||
android:layout_height="14dp"
|
||||
android:layout_marginStart="17dp"
|
||||
android:layout_marginTop="14dp"
|
||||
android:background="@drawable/bg_object_loading_state"
|
||||
app:layout_constraintStart_toEndOf="@+id/view6"
|
||||
app:layout_constraintTop_toBottomOf="@+id/view5" />
|
||||
|
||||
<View
|
||||
android:id="@+id/view6"
|
||||
android:layout_width="36dp"
|
||||
android:layout_height="14dp"
|
||||
android:layout_marginStart="20dp"
|
||||
android:layout_marginTop="14dp"
|
||||
android:background="@drawable/bg_object_loading_state"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/view5" />
|
||||
|
||||
<View
|
||||
android:id="@+id/view5"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="@dimen/dp_14"
|
||||
android:layout_marginStart="20dp"
|
||||
android:layout_marginTop="4dp"
|
||||
android:layout_marginEnd="26dp"
|
||||
android:background="@drawable/bg_object_loading_state"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/view4" />
|
||||
|
||||
<View
|
||||
android:id="@+id/view4"
|
||||
android:layout_width="282dp"
|
||||
android:layout_height="14dp"
|
||||
android:layout_marginStart="20dp"
|
||||
android:layout_marginTop="11dp"
|
||||
android:background="@drawable/bg_object_loading_state"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/view3" />
|
||||
|
||||
<View
|
||||
android:id="@+id/view3"
|
||||
android:layout_width="220dp"
|
||||
android:layout_height="30dp"
|
||||
android:layout_marginStart="20dp"
|
||||
android:layout_marginTop="20dp"
|
||||
android:background="@drawable/bg_object_loading_state"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="@+id/guideline2" />
|
||||
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/guideline2"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal"
|
||||
app:layout_constraintGuide_begin="216dp" />
|
||||
|
||||
<View
|
||||
android:id="@+id/view2"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="@dimen/default_cover_height"
|
||||
android:background="@drawable/bg_object_loading_state"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<FrameLayout
|
||||
android:id="@+id/docEmojiIconContainer"
|
||||
android:layout_width="72dp"
|
||||
android:layout_height="72dp"
|
||||
android:layout_gravity="bottom"
|
||||
android:layout_marginStart="16dp"
|
||||
android:background="@drawable/bg_object_icon_loading_state"
|
||||
app:layout_constraintBottom_toTopOf="@+id/guideline2"
|
||||
app:layout_constraintStart_toStartOf="parent" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
</com.facebook.shimmer.ShimmerFrameLayout>
|
|
@ -62,5 +62,6 @@
|
|||
<color name="palette_very_light_lime">#172A08</color>
|
||||
<color name="palette_very_light_grey">#1D1D1B</color>
|
||||
<color name="palette_system_red">#F55522</color>
|
||||
<color name="object_loading_state_gradient_end_color">#161615</color>
|
||||
|
||||
</resources>
|
||||
|
|
|
@ -181,5 +181,7 @@
|
|||
<color name="dashboard_tab_color">#CC0066C3</color>
|
||||
<color name="amber_80">#FFC532</color>
|
||||
<color name="table_row_header_background">#1A50491C</color>
|
||||
<color name="object_loading_state_gradient_start_color">@color/shape_tertiary</color>
|
||||
<color name="object_loading_state_gradient_end_color">#F1F0ED</color>
|
||||
|
||||
</resources>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue