Skip to content

Commit 39cac1a

Browse files
committed
extract layouts
Signed-off-by: alperozturk <[email protected]>
1 parent 5ca2f60 commit 39cac1a

File tree

8 files changed

+81
-46
lines changed

8 files changed

+81
-46
lines changed

app/src/main/java/com/owncloud/android/ui/fragment/FileDetailSharingFragment.java

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
import android.view.ViewGroup;
3333
import android.view.animation.Animation;
3434
import android.view.animation.AnimationUtils;
35+
import android.widget.LinearLayout;
3536

3637
import com.nextcloud.client.account.User;
3738
import com.nextcloud.client.account.UserAccountManager;
@@ -156,8 +157,12 @@ public void onCreate(@Nullable Bundle savedInstanceState) {
156157
}
157158

158159
fileDataStorageManager = fileActivity.getStorageManager();
160+
fetchSharees();
161+
}
162+
163+
private void fetchSharees() {
159164
ShareRepository shareRepository = new RemoteShareRepository(fileActivity.getClientRepository(), fileActivity, fileDataStorageManager);
160-
shareRepository.refreshSharesForFile(file.getRemotePath(), () -> {
165+
shareRepository.fetchSharees(file.getRemotePath(), () -> {
161166
refreshCapabilitiesFromDB();
162167
refreshSharesFromDB();
163168
showShareContainer();
@@ -174,8 +179,10 @@ private void showShareContainer() {
174179
return;
175180
}
176181

177-
binding.shimmerLayout.clearAnimation();
178-
binding.shimmerLayout.setVisibility(View.GONE);
182+
final LinearLayout shimmerLayout = binding.shimmerLayout.getRoot();
183+
shimmerLayout.clearAnimation();
184+
shimmerLayout.setVisibility(View.GONE);
185+
179186
binding.shareContainer.setVisibility(View.VISIBLE);
180187
}
181188

@@ -184,7 +191,7 @@ public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container,
184191
binding = FileDetailsSharingFragmentBinding.inflate(inflater, container, false);
185192

186193
final Animation blinkAnimation = AnimationUtils.loadAnimation(requireContext(), R.anim.blink);
187-
binding.shimmerLayout.startAnimation(blinkAnimation);
194+
binding.shimmerLayout.getRoot().startAnimation(blinkAnimation);
188195

189196
fileOperationsHelper = fileActivity.getFileOperationsHelper();
190197

app/src/main/java/com/owncloud/android/ui/fragment/share/RemoteShareRepository.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ class RemoteShareRepository(
2525
private val tag = "RemoteShareRepository"
2626
private val scope = lifecycleOwner.lifecycleScope
2727

28-
override fun refreshSharesForFile(remotePath: String, onCompleted: () -> Unit, onError: () -> Unit) {
28+
override fun fetchSharees(remotePath: String, onCompleted: () -> Unit, onError: () -> Unit) {
2929
scope.launch(Dispatchers.IO) {
3030
val client = clientRepository.getOwncloudClient() ?: return@launch
3131
val operation =

app/src/main/java/com/owncloud/android/ui/fragment/share/ShareRepository.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,5 @@
88
package com.owncloud.android.ui.fragment.share
99

1010
interface ShareRepository {
11-
fun refreshSharesForFile(remotePath: String, onCompleted: () -> Unit, onError: () -> Unit)
11+
fun fetchSharees(remotePath: String, onCompleted: () -> Unit, onError: () -> Unit)
1212
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<!--
3+
~ Nextcloud - Android Client
4+
~
5+
~ SPDX-FileCopyrightText: 2025 Alper Ozturk <[email protected]>
6+
~ SPDX-License-Identifier: AGPL-3.0-or-later
7+
-->
8+
<com.elyeproj.loaderviewlibrary.LoaderImageView
9+
xmlns:android="http://schemas.android.com/apk/res/android"
10+
android:layout_width="@dimen/share_icon_size"
11+
android:layout_height="@dimen/share_icon_size"
12+
xmlns:app="http://schemas.android.com/apk/res-auto"
13+
android:layout_marginStart="@dimen/standard_margin"
14+
android:layout_marginEnd="@dimen/standard_margin"
15+
android:padding="@dimen/standard_half_padding"
16+
android:scaleType="centerCrop"
17+
app:corners="100" />

app/src/main/res/layout/file_details_sharing_fragment.xml

Lines changed: 4 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
android:layout_width="match_parent"
2323
android:layout_height="wrap_content"
2424
android:visibility="gone"
25+
tools:visibility="visible"
2526
android:orientation="vertical">
2627

2728
<LinearLayout
@@ -53,7 +54,6 @@
5354
android:id="@+id/shared_with_you_username"
5455
android:layout_width="match_parent"
5556
android:layout_height="wrap_content"
56-
android:text="@string/shared_with_you_by"
5757
android:textSize="@dimen/two_line_primary_text_size" />
5858

5959
<LinearLayout
@@ -196,35 +196,10 @@
196196
android:text="@string/show_all" />
197197
</LinearLayout>
198198

199-
<LinearLayout
200-
android:id="@+id/shimmer_layout"
201-
android:visibility="visible"
202-
android:layout_width="match_parent"
203-
android:layout_height="wrap_content"
204-
android:orientation="vertical">
199+
<include
200+
layout="@layout/file_details_sharing_shimmer"
201+
android:id="@+id/shimmer_layout"/>
205202

206-
<include layout="@layout/share_list_item_shimmer" />
207-
208-
<include layout="@layout/share_list_item_shimmer" />
209-
210-
<TextView
211-
android:id="@+id/empty_list_view_headline"
212-
android:layout_width="match_parent"
213-
android:layout_height="wrap_content"
214-
android:layout_gravity="center_horizontal"
215-
android:ellipsize="end"
216-
android:gravity="center"
217-
android:maxLines="2"
218-
android:paddingTop="@dimen/standard_padding"
219-
android:paddingBottom="@dimen/standard_half_padding"
220-
android:text="@string/file_list_loading"
221-
android:textSize="26sp" />
222-
223-
<include layout="@layout/share_list_item_shimmer" />
224-
225-
<include layout="@layout/share_list_item_shimmer" />
226-
227-
</LinearLayout>
228203
</FrameLayout>
229204

230205

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<!--
3+
~ Nextcloud - Android Client
4+
~
5+
~ SPDX-FileCopyrightText: 2025 Alper Ozturk <[email protected]>
6+
~ SPDX-License-Identifier: AGPL-3.0-or-later
7+
-->
8+
<LinearLayout
9+
xmlns:android="http://schemas.android.com/apk/res/android"
10+
android:visibility="visible"
11+
android:layout_width="match_parent"
12+
android:layout_height="wrap_content"
13+
android:orientation="vertical">
14+
15+
<include layout="@layout/share_list_item_shimmer" />
16+
17+
<include layout="@layout/share_list_item_shimmer" />
18+
19+
<include layout="@layout/loading_text_shimmer" />
20+
21+
<include layout="@layout/share_list_item_shimmer" />
22+
23+
<include layout="@layout/share_list_item_shimmer" />
24+
25+
</LinearLayout>
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<!--
3+
~ Nextcloud - Android Client
4+
~
5+
~ SPDX-FileCopyrightText: 2025 Alper Ozturk <[email protected]>
6+
~ SPDX-License-Identifier: AGPL-3.0-or-later
7+
-->
8+
<TextView
9+
xmlns:android="http://schemas.android.com/apk/res/android"
10+
android:layout_width="match_parent"
11+
android:layout_height="wrap_content"
12+
android:layout_gravity="center_horizontal"
13+
android:ellipsize="end"
14+
android:gravity="center"
15+
android:maxLines="2"
16+
android:paddingTop="@dimen/standard_padding"
17+
android:paddingBottom="@dimen/standard_half_padding"
18+
android:text="@string/file_list_loading"
19+
android:textSize="26sp" />

app/src/main/res/layout/share_list_item_shimmer.xml

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
~ SPDX-FileCopyrightText: 2025 Alper Ozturk <[email protected]>
55
~ SPDX-License-Identifier: AGPL-3.0-or-later
66
-->
7-
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
8-
xmlns:app="http://schemas.android.com/apk/res-auto"
7+
<LinearLayout
8+
xmlns:android="http://schemas.android.com/apk/res/android"
99
android:layout_width="match_parent"
1010
android:layout_height="wrap_content"
1111
android:orientation="horizontal"
@@ -15,15 +15,7 @@
1515
android:paddingTop="@dimen/standard_half_padding"
1616
android:layout_weight="1">
1717

18-
<com.elyeproj.loaderviewlibrary.LoaderImageView
19-
android:id="@+id/copy_internal_link_icon_loader"
20-
android:layout_width="@dimen/share_icon_size"
21-
android:layout_height="@dimen/share_icon_size"
22-
android:layout_marginStart="@dimen/standard_margin"
23-
android:layout_marginEnd="@dimen/standard_margin"
24-
android:padding="@dimen/standard_half_padding"
25-
android:scaleType="centerCrop"
26-
app:corners="100" />
18+
<include layout="@layout/circle_shimmer" />
2719

2820
<LinearLayout
2921
android:layout_width="match_parent"

0 commit comments

Comments
 (0)