Skip to content

Commit 282401c

Browse files
committed
Unify line of space and path info and extract it to a different component
1 parent cb40b38 commit 282401c

5 files changed

Lines changed: 73 additions & 99 deletions

File tree

owncloudApp/src/main/java/com/owncloud/android/presentation/files/filelist/FileListAdapter.kt

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -212,26 +212,26 @@ class FileListAdapter(
212212
it.fileListSize.text = DisplayUtils.bytesToHumanReadable(file.length, context)
213213
it.fileListLastMod.text = DisplayUtils.getRelativeTimestamp(context, file.modificationTimestamp)
214214
if (fileListOption.isAvailableOffline() || (fileListOption.isSharedByLink() && fileItem.space == null)) {
215-
it.fileListPath.apply {
215+
it.spacePathLine.path.apply {
216216
text = file.getParentRemotePath()
217217
isVisible = true
218218
}
219219
if (fileListOption.isAvailableOffline()) {
220220
fileItem.space?.let { space ->
221-
it.fileSpaceIcon.isVisible = true
222-
it.fileSpaceName.isVisible = true
221+
it.spacePathLine.spaceIcon.isVisible = true
222+
it.spacePathLine.spaceName.isVisible = true
223223
if (space.isPersonal) {
224-
it.fileSpaceIcon.setImageResource(R.drawable.ic_folder)
225-
it.fileSpaceName.setText(R.string.bottom_nav_personal)
224+
it.spacePathLine.spaceIcon.setImageResource(R.drawable.ic_folder)
225+
it.spacePathLine.spaceName.setText(R.string.bottom_nav_personal)
226226
} else {
227-
it.fileSpaceName.text = space.name
227+
it.spacePathLine.spaceName.text = space.name
228228
}
229229
}
230230
}
231231
} else {
232-
it.fileListPath.isVisible = false
233-
it.fileSpaceIcon.isVisible = false
234-
it.fileSpaceName.isVisible = false
232+
it.spacePathLine.path.isVisible = false
233+
it.spacePathLine.spaceIcon.isVisible = false
234+
it.spacePathLine.spaceName.isVisible = false
235235
}
236236
}
237237
}

owncloudApp/src/main/java/com/owncloud/android/presentation/transfers/TransfersAdapter.kt

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ import com.bumptech.glide.load.engine.DiskCacheStrategy
3333
import com.owncloud.android.R
3434
import com.owncloud.android.databinding.UploadListGroupBinding
3535
import com.owncloud.android.databinding.UploadListItemBinding
36+
import com.owncloud.android.domain.files.model.OCFile
3637
import com.owncloud.android.domain.spaces.model.OCSpace
3738
import com.owncloud.android.domain.transfers.model.OCTransfer
3839
import com.owncloud.android.domain.transfers.model.TransferStatus
@@ -86,17 +87,19 @@ class TransfersAdapter(
8687
uploadName.text = fileName
8788

8889
transferItem.space?.let {
89-
uploadSpaceName.isVisible = true
90-
spaceIcon.isVisible = true
90+
spacePathLine.spaceName.isVisible = true
91+
spacePathLine.spaceIcon.isVisible = true
9192
if (it.isPersonal) {
92-
spaceIcon.setImageResource(R.drawable.ic_folder)
93-
uploadSpaceName.setText(R.string.bottom_nav_personal)
93+
spacePathLine.spaceIcon.setImageResource(R.drawable.ic_folder)
94+
spacePathLine.spaceName.setText(R.string.bottom_nav_personal)
9495
} else {
95-
uploadSpaceName.text = it.name
96+
spacePathLine.spaceName.text = it.name
9697
}
9798
}
9899

99-
uploadRemotePath.text = remoteFile.parent
100+
remoteFile.parent?.let {
101+
spacePathLine.path.text = if (it.endsWith("${OCFile.PATH_SEPARATOR}")) it else "$it${OCFile.PATH_SEPARATOR}"
102+
}
100103

101104
uploadFileSize.text = DisplayUtils.bytesToHumanReadable(transferItem.transfer.fileSize, holder.itemView.context)
102105

owncloudApp/src/main/res/layout/item_file_list.xml

Lines changed: 6 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -95,50 +95,14 @@
9595
app:layout_constraintTop_toBottomOf="@id/Filename"
9696
tools:text="Mod Date" />
9797

98-
<ImageView
99-
android:id="@+id/file_space_icon"
100-
android:layout_width="16dp"
101-
android:layout_height="16dp"
102-
android:src="@drawable/ic_spaces"
103-
android:visibility="gone"
104-
app:layout_constraintBottom_toBottomOf="parent"
105-
app:layout_constraintStart_toStartOf="@+id/Filename"
106-
app:layout_constraintTop_toBottomOf="@+id/file_list_size"
107-
app:tint="@color/list_item_lastmod_and_filesize_text"
108-
tools:visibility="visible" />
109-
110-
<TextView
111-
android:id="@+id/file_space_name"
112-
android:layout_width="wrap_content"
98+
<include
99+
android:id="@+id/space_path_line"
100+
layout="@layout/space_path_line"
101+
android:layout_width="0dp"
113102
android:layout_height="wrap_content"
114-
android:layout_marginStart="2dp"
115-
android:layout_marginEnd="@dimen/standard_half_margin"
116-
android:paddingEnd="@dimen/standard_half_padding"
117-
android:ellipsize="middle"
118-
android:maxWidth="100dp"
119-
android:singleLine="true"
120-
android:textColor="@color/list_item_lastmod_and_filesize_text"
121-
android:textSize="@dimen/two_line_secondary_text_size"
122-
android:textStyle="bold"
123-
android:visibility="gone"
124-
app:layout_constraintStart_toEndOf="@id/file_space_icon"
125-
app:layout_constraintTop_toBottomOf="@+id/file_list_size"
126-
tools:text="Space name"
127-
tools:visibility="visible" />
103+
app:layout_constraintStart_toStartOf="@+id/Filename"
104+
app:layout_constraintTop_toBottomOf="@+id/file_list_size" />
128105

129-
<TextView
130-
android:id="@+id/file_list_path"
131-
android:layout_width="wrap_content"
132-
android:layout_height="wrap_content"
133-
android:ellipsize="middle"
134-
android:singleLine="true"
135-
android:textColor="@color/list_item_lastmod_and_filesize_text"
136-
android:textSize="@dimen/two_line_secondary_text_size"
137-
android:visibility="gone"
138-
app:layout_constraintStart_toEndOf="@+id/file_space_name"
139-
app:layout_constraintTop_toBottomOf="@+id/file_list_size"
140-
tools:text="/path/to/file"
141-
tools:visibility="visible"/>
142106
</androidx.constraintlayout.widget.ConstraintLayout>
143107

144108
<androidx.constraintlayout.widget.ConstraintLayout
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
3+
xmlns:app="http://schemas.android.com/apk/res-auto"
4+
xmlns:tools="http://schemas.android.com/tools"
5+
android:layout_width="match_parent"
6+
android:layout_height="wrap_content"
7+
android:gravity="center_vertical">
8+
9+
<ImageView
10+
android:id="@+id/space_icon"
11+
android:layout_width="15dp"
12+
android:layout_height="15dp"
13+
android:layout_marginEnd="2dp"
14+
android:src="@drawable/ic_spaces"
15+
android:visibility="gone"
16+
app:tint="@color/list_item_lastmod_and_filesize_text"
17+
tools:visibility="visible" />
18+
19+
<TextView
20+
android:id="@+id/space_name"
21+
android:layout_width="wrap_content"
22+
android:maxWidth="100dp"
23+
android:layout_height="wrap_content"
24+
android:layout_marginEnd="@dimen/standard_half_margin"
25+
android:textColor="@color/list_item_lastmod_and_filesize_text"
26+
android:textStyle="bold"
27+
android:ellipsize="middle"
28+
android:singleLine="true"
29+
android:textSize="12sp"
30+
android:visibility="gone"
31+
tools:text="Space name"
32+
tools:visibility="visible" />
33+
34+
<TextView
35+
android:id="@+id/path"
36+
android:layout_width="wrap_content"
37+
android:layout_height="wrap_content"
38+
android:textColor="@color/list_item_lastmod_and_filesize_text"
39+
android:ellipsize="middle"
40+
android:singleLine="true"
41+
android:textSize="12sp"
42+
tools:text="/path/to/file"
43+
tools:visibility="visible" />
44+
45+
</LinearLayout>

owncloudApp/src/main/res/layout/upload_list_item.xml

Lines changed: 4 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
33
xmlns:tools="http://schemas.android.com/tools"
4-
xmlns:app="http://schemas.android.com/apk/res-auto"
54
android:id="@+id/ListItemLayout"
65
android:layout_width="match_parent"
76
android:orientation="horizontal"
@@ -95,48 +94,11 @@
9594
tools:text="@string/auth_username"
9695
android:textSize="12sp" />
9796

98-
<LinearLayout
97+
<include
98+
android:id="@+id/space_path_line"
99+
layout="@layout/space_path_line"
99100
android:layout_width="match_parent"
100-
android:layout_height="wrap_content"
101-
android:gravity="center_vertical">
102-
103-
<ImageView
104-
android:id="@+id/space_icon"
105-
android:layout_width="15dp"
106-
android:layout_height="15dp"
107-
android:layout_marginEnd="2dp"
108-
android:src="@drawable/ic_spaces"
109-
android:visibility="gone"
110-
app:tint="@color/list_item_lastmod_and_filesize_text"
111-
tools:visibility="visible" />
112-
113-
<TextView
114-
android:id="@+id/upload_space_name"
115-
android:layout_width="wrap_content"
116-
android:maxWidth="100dp"
117-
android:layout_height="wrap_content"
118-
android:layout_marginEnd="@dimen/standard_half_margin"
119-
android:textColor="@color/list_item_lastmod_and_filesize_text"
120-
android:textStyle="bold"
121-
android:ellipsize="middle"
122-
android:singleLine="true"
123-
android:textSize="12sp"
124-
android:visibility="gone"
125-
tools:text="Space name"
126-
tools:visibility="visible" />
127-
128-
<TextView
129-
android:id="@+id/upload_remote_path"
130-
android:layout_width="wrap_content"
131-
android:layout_height="wrap_content"
132-
android:textColor="@color/list_item_lastmod_and_filesize_text"
133-
android:ellipsize="middle"
134-
android:singleLine="true"
135-
android:textSize="12sp"
136-
tools:text="/path/to/file"
137-
tools:visibility="visible" />
138-
139-
</LinearLayout>
101+
android:layout_height="wrap_content" />
140102

141103
</LinearLayout>
142104

0 commit comments

Comments
 (0)