Skip to content

Commit f61a14d

Browse files
committed
fix list
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
1 parent cc96746 commit f61a14d

3 files changed

Lines changed: 45 additions & 16 deletions

File tree

app/src/main/java/com/owncloud/android/ui/adapter/OCFileListAdapter.java

Lines changed: 25 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -549,8 +549,10 @@ private void setFilenameAndExtension(ListGridItemViewHolder holder, OCFile file)
549549

550550
if (holder instanceof OCFileListGridItemViewHolder gridItemViewHolder) {
551551
handleGridMode(filename, gridItemViewHolder, pair, file);
552+
} else if (holder instanceof OCFileListItemViewHolder itemViewHolder) {
553+
handleListMode(itemViewHolder, filename, pair);
552554
} else {
553-
handleListMode(holder, filename, pair, isFolder);
555+
handleRecommendedMode(holder, pair, isFolder);
554556
}
555557
}
556558

@@ -575,23 +577,34 @@ private void handleGridMode(String filename, OCFileListGridItemViewHolder holder
575577
}
576578
}
577579

578-
private void handleListMode(ListGridItemViewHolder holder,
580+
private void handleListMode(OCFileListItemViewHolder holder,
579581
String filename,
580-
Pair<String, String> filenamePair,
581-
boolean isFolder) {
582-
final var extension = holder.getExtension();
583-
final boolean useSeparateExtension = !isFolder && FileStorageUtils.containsBidiControlCharacters(filename);
582+
Pair<String, String> filenamePair) {
583+
final boolean containsBidiControlCharacters = FileStorageUtils.containsBidiControlCharacters(filename);
584+
ViewExtensionsKt.setVisibleIf(holder.getFileName(), !containsBidiControlCharacters);
585+
ViewExtensionsKt.setVisibleIf(holder.getBidiFilenameContainer(), containsBidiControlCharacters);
584586

585-
if (!useSeparateExtension) {
587+
if (containsBidiControlCharacters) {
588+
holder.getBidiFilename().setText(filenamePair.getFirst());
589+
holder.getExtension().setText(filenamePair.getSecond());
590+
} else {
586591
holder.getFileName().setText(filename);
587-
if (extension != null) {
588-
extension.setVisibility(View.GONE);
589-
}
590-
return;
591592
}
593+
}
592594

595+
private void handleRecommendedMode(ListGridItemViewHolder holder,
596+
Pair<String, String> filenamePair,
597+
boolean isFolder) {
593598
holder.getFileName().setText(filenamePair.getFirst());
594-
if (extension != null) {
599+
600+
final var extension = holder.getExtension();
601+
if (extension == null) {
602+
return;
603+
}
604+
605+
if (isFolder) {
606+
extension.setVisibility(View.GONE);
607+
} else {
595608
extension.setVisibility(View.VISIBLE);
596609
extension.setText(filenamePair.getSecond());
597610
}

app/src/main/java/com/owncloud/android/ui/adapter/OCFileListItemViewHolder.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,10 @@ class OCFileListItemViewHolder(private var binding: ListItemBinding) :
4747
get() = binding.Filename
4848
override val extension: TextView
4949
get() = binding.extension
50+
val bidiFilename: TextView
51+
get() = binding.bidiFilename
52+
val bidiFilenameContainer: LinearLayout
53+
get() = binding.bidiFilenameContainer
5054
override val thumbnail: ImageView
5155
get() = binding.thumbnailLayout.thumbnail
5256
override val tagsGroup: ChipGroup

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

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -77,13 +77,26 @@
7777
android:orientation="vertical"
7878
android:paddingTop="@dimen/standard_half_padding">
7979

80+
<TextView
81+
android:id="@+id/Filename"
82+
android:layout_width="match_parent"
83+
android:layout_height="wrap_content"
84+
android:ellipsize="middle"
85+
android:singleLine="true"
86+
android:textColor="@color/text_color"
87+
android:textSize="@dimen/two_line_primary_text_size"
88+
tools:text="@string/placeholder_filename" />
89+
8090
<LinearLayout
81-
android:layout_width="wrap_content"
91+
android:id="@+id/bidi_filename_container"
92+
android:layout_width="match_parent"
8293
android:layout_height="wrap_content"
83-
android:orientation="horizontal">
94+
android:orientation="horizontal"
95+
android:visibility="gone"
96+
tools:visibility="visible">
8497

8598
<TextView
86-
android:id="@+id/Filename"
99+
android:id="@+id/bidi_filename"
87100
android:layout_width="0dp"
88101
android:layout_height="wrap_content"
89102
android:layout_weight="1"
@@ -97,7 +110,6 @@
97110
android:id="@+id/extension"
98111
android:layout_width="wrap_content"
99112
android:layout_height="wrap_content"
100-
android:ellipsize="middle"
101113
android:singleLine="true"
102114
android:textColor="@color/text_color"
103115
android:textSize="@dimen/two_line_primary_text_size"

0 commit comments

Comments
 (0)