Skip to content

Commit d8c2467

Browse files
committed
New model manager implementation pt. 3
1 parent 3d522ad commit d8c2467

7 files changed

Lines changed: 312 additions & 117 deletions

File tree

app/src/main/java/nie/translator/rtranslator/tools/gui/ResourceManagerView.java

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,12 @@ private void init(Context context, AttributeSet attrs) {
9191
titleResource.setText(a.getString(R.styleable.ResourceManagerView_modelTitle));
9292
}
9393
if (a.hasValue(R.styleable.ResourceManagerView_modelDescription)) {
94-
descriptionResource.setText(a.getString(R.styleable.ResourceManagerView_modelDescription));
94+
String descriptionText = a.getString(R.styleable.ResourceManagerView_modelDescription);
95+
if(descriptionText != null && !descriptionText.isEmpty()){
96+
descriptionResource.setText(descriptionText);
97+
}else{
98+
descriptionResource.setVisibility(GONE);
99+
}
95100
}
96101
if (a.hasValue(R.styleable.ResourceManagerView_modelSize)) {
97102
float sizeInMB = a.getInt(R.styleable.ResourceManagerView_modelSize, 0);
@@ -103,6 +108,12 @@ private void init(Context context, AttributeSet attrs) {
103108
textResource.setText(df.format(sizeInMB) + " MB");
104109
}
105110
}
111+
if (a.hasValue(R.styleable.ResourceManagerView_state)) {
112+
int stateIndex = a.getInt(R.styleable.ResourceManagerView_state, 0);
113+
if(stateIndex >= 0 && stateIndex < State.values().length) {
114+
setState(State.values()[stateIndex], false);
115+
}
116+
}
106117

107118
a.recycle();
108119
}
@@ -239,7 +250,7 @@ private void setButtonDeleteSize(boolean reduced){
239250
int buttonDeleteSize = ResourceManagerView.BUTTON_DELETE_SIZE_REDUCED_PX;
240251
ConstraintLayout.LayoutParams layoutParams = (ConstraintLayout.LayoutParams) buttonDelete.getLayoutParams();
241252
layoutParams.width = buttonDeleteSize;
242-
layoutParams.height = buttonDeleteSize;
253+
//layoutParams.height = buttonDeleteSize;
243254
layoutParams.rightMargin = buttonDeleteRightMargin;
244255
buttonDelete.setLayoutParams(layoutParams);
245256
ConstraintLayout.LayoutParams layoutParams2 = (ConstraintLayout.LayoutParams) progressBarDownload.getLayoutParams();
@@ -251,7 +262,7 @@ private void setButtonDeleteSize(boolean reduced){
251262
int buttonDeleteSize = Tools.convertDpToPixels(getContext(), ResourceManagerView.BUTTON_DELETE_SIZE);
252263
ConstraintLayout.LayoutParams layoutParams = (ConstraintLayout.LayoutParams) buttonDelete.getLayoutParams();
253264
layoutParams.width = buttonDeleteSize;
254-
layoutParams.height = buttonDeleteSize;
265+
//layoutParams.height = buttonDeleteSize;
255266
layoutParams.rightMargin = buttonDeleteRightMargin;
256267
buttonDelete.setLayoutParams(layoutParams);
257268
ConstraintLayout.LayoutParams layoutParams2 = (ConstraintLayout.LayoutParams) progressBarDownload.getLayoutParams();

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

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
android:layout_width="wrap_content"
1111
android:layout_height="wrap_content"
1212
android:layout_marginTop="20dp"
13-
android:layout_marginBottom="2dp"
13+
android:layout_marginBottom="20dp"
1414
android:text="HY-MT"
1515
android:textColor="@color/very_very_dark_gray"
1616
android:textSize="18sp"
@@ -73,13 +73,13 @@
7373
android:layout_width="8dp"
7474
android:layout_height="32dp"
7575
android:src="@drawable/delete_icon"
76+
android:tint="@color/very_very_dark_gray"
7677
android:visibility="invisible"
77-
app:layout_constraintBottom_toTopOf="@+id/descriptionResource"
78+
app:layout_constraintBottom_toBottomOf="@+id/titleResource"
7879
app:layout_constraintEnd_toEndOf="parent"
7980
app:layout_constraintHorizontal_bias="1.0"
8081
app:layout_constraintStart_toStartOf="@+id/titleResource"
81-
app:layout_constraintTop_toTopOf="parent"
82-
android:tint="@color/very_very_dark_gray" />
82+
app:layout_constraintTop_toTopOf="@+id/titleResource" />
8383

8484
<TextView
8585
android:id="@+id/textDownload"
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<androidx.constraintlayout.widget.ConstraintLayout
3+
android:layout_width="match_parent"
4+
android:layout_height="wrap_content"
5+
xmlns:android="http://schemas.android.com/apk/res/android"
6+
xmlns:app="http://schemas.android.com/apk/res-auto">
7+
8+
<TextView
9+
android:id="@+id/titleAvailable"
10+
android:layout_width="wrap_content"
11+
android:layout_height="wrap_content"
12+
android:layout_marginTop="32dp"
13+
android:layout_marginBottom="16dp"
14+
android:fontFamily="sans-serif-medium"
15+
android:text="Available"
16+
android:textColor="@color/accent"
17+
app:layout_constraintBottom_toBottomOf="parent"
18+
app:layout_constraintEnd_toEndOf="parent"
19+
app:layout_constraintHorizontal_bias="0.0"
20+
app:layout_constraintStart_toStartOf="parent"
21+
app:layout_constraintTop_toTopOf="parent"
22+
app:layout_constraintVertical_bias="0.0" />
23+
24+
<ImageView
25+
android:id="@+id/buttonDownloadAll"
26+
android:layout_width="42dp"
27+
android:layout_height="42dp"
28+
android:layout_marginEnd="8dp"
29+
android:padding="2dp"
30+
android:src="@drawable/download_icon"
31+
android:tint="@color/very_very_dark_gray"
32+
android:visibility="visible"
33+
app:layout_constraintBottom_toBottomOf="@+id/titleAvailable"
34+
app:layout_constraintEnd_toEndOf="parent"
35+
app:layout_constraintHorizontal_bias="1.0"
36+
app:layout_constraintStart_toStartOf="parent"
37+
app:layout_constraintTop_toTopOf="@+id/titleAvailable" />
38+
</androidx.constraintlayout.widget.ConstraintLayout>
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<androidx.constraintlayout.widget.ConstraintLayout
3+
android:layout_width="match_parent"
4+
android:layout_height="wrap_content"
5+
xmlns:android="http://schemas.android.com/apk/res/android"
6+
xmlns:app="http://schemas.android.com/apk/res-auto">
7+
8+
<TextView
9+
android:id="@+id/titleInstalled"
10+
android:layout_width="wrap_content"
11+
android:layout_height="wrap_content"
12+
android:layout_marginTop="16dp"
13+
android:layout_marginBottom="16dp"
14+
android:fontFamily="sans-serif-medium"
15+
android:text="Installed"
16+
android:textColor="@color/accent"
17+
app:layout_constraintBottom_toBottomOf="parent"
18+
app:layout_constraintEnd_toEndOf="parent"
19+
app:layout_constraintHorizontal_bias="0.0"
20+
app:layout_constraintStart_toStartOf="parent"
21+
app:layout_constraintTop_toTopOf="parent" />
22+
23+
<ImageView
24+
android:id="@+id/buttonDownload"
25+
android:layout_width="42dp"
26+
android:layout_height="42dp"
27+
android:layout_marginEnd="8dp"
28+
android:padding="8dp"
29+
android:src="@drawable/delete_icon"
30+
android:tint="@color/very_very_dark_gray"
31+
android:visibility="visible"
32+
app:layout_constraintBottom_toBottomOf="@+id/titleInstalled"
33+
app:layout_constraintEnd_toEndOf="parent"
34+
app:layout_constraintHorizontal_bias="1.0"
35+
app:layout_constraintStart_toStartOf="parent"
36+
app:layout_constraintTop_toTopOf="@+id/titleInstalled" />
37+
</androidx.constraintlayout.widget.ConstraintLayout>
Lines changed: 19 additions & 110 deletions
Original file line numberDiff line numberDiff line change
@@ -1,121 +1,30 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
33
xmlns:app="http://schemas.android.com/apk/res-auto"
4+
xmlns:tools="http://schemas.android.com/tools"
45
android:layout_width="match_parent"
56
android:layout_height="match_parent">
67

7-
<androidx.core.widget.NestedScrollView
8-
android:id="@+id/nestedScrollView"
9-
android:layout_width="match_parent"
10-
android:layout_height="match_parent"
8+
<androidx.recyclerview.widget.RecyclerView
9+
android:id="@+id/recycler_view"
10+
android:layout_width="0dp"
11+
android:layout_height="0dp"
12+
android:layout_marginStart="16dp"
13+
android:layout_marginEnd="8dp"
14+
android:clipToPadding="false"
15+
android:focusableInTouchMode="true"
16+
android:overScrollMode="never"
17+
android:paddingTop="@dimen/spacing_small"
18+
android:paddingBottom="@dimen/spacing_small"
19+
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
20+
app:layout_behavior="@string/appbar_scrolling_view_behavior"
1121
app:layout_constraintBottom_toBottomOf="parent"
1222
app:layout_constraintEnd_toEndOf="parent"
23+
app:layout_constraintHorizontal_bias="0.0"
1324
app:layout_constraintStart_toStartOf="parent"
14-
app:layout_constraintTop_toTopOf="parent">
15-
16-
<LinearLayout
17-
android:layout_width="match_parent"
18-
android:layout_height="wrap_content"
19-
android:orientation="vertical">
20-
21-
<androidx.constraintlayout.widget.ConstraintLayout
22-
android:layout_width="match_parent"
23-
android:layout_height="wrap_content">
24-
25-
<TextView
26-
android:id="@+id/titleInstalled"
27-
android:layout_width="wrap_content"
28-
android:layout_height="wrap_content"
29-
android:layout_marginStart="16dp"
30-
android:layout_marginTop="16dp"
31-
android:layout_marginBottom="16dp"
32-
android:fontFamily="sans-serif-medium"
33-
android:text="Installed"
34-
android:textColor="@color/accent"
35-
app:layout_constraintBottom_toBottomOf="parent"
36-
app:layout_constraintEnd_toEndOf="parent"
37-
app:layout_constraintHorizontal_bias="0.0"
38-
app:layout_constraintStart_toStartOf="parent"
39-
app:layout_constraintTop_toTopOf="parent" />
40-
41-
<ImageView
42-
android:id="@+id/buttonDownload"
43-
android:layout_width="42dp"
44-
android:layout_height="42dp"
45-
android:layout_marginEnd="8dp"
46-
android:src="@drawable/delete_icon"
47-
android:padding="8dp"
48-
android:tint="@color/very_very_dark_gray"
49-
android:visibility="visible"
50-
app:layout_constraintBottom_toBottomOf="parent"
51-
app:layout_constraintEnd_toEndOf="parent"
52-
app:layout_constraintHorizontal_bias="1.0"
53-
app:layout_constraintStart_toStartOf="parent"
54-
app:layout_constraintTop_toTopOf="parent" />
55-
</androidx.constraintlayout.widget.ConstraintLayout>
56-
57-
<ListView
58-
android:id="@+id/listInstalled"
59-
android:layout_width="match_parent"
60-
android:layout_height="wrap_content"
61-
android:animateLayoutChanges="false"
62-
android:childDivider="#00000000"
63-
android:divider="#00000000"
64-
android:visibility="visible" />
65-
66-
<androidx.constraintlayout.widget.ConstraintLayout
67-
android:layout_width="match_parent"
68-
android:layout_height="wrap_content">
69-
70-
<TextView
71-
android:id="@+id/titleAvailable"
72-
android:layout_width="wrap_content"
73-
android:layout_height="wrap_content"
74-
android:layout_marginStart="16dp"
75-
android:layout_marginTop="16dp"
76-
android:layout_marginBottom="16dp"
77-
android:fontFamily="sans-serif-medium"
78-
android:text="Available"
79-
android:textColor="@color/accent"
80-
app:layout_constraintBottom_toBottomOf="parent"
81-
app:layout_constraintEnd_toEndOf="parent"
82-
app:layout_constraintHorizontal_bias="0.0"
83-
app:layout_constraintStart_toStartOf="parent"
84-
app:layout_constraintTop_toTopOf="parent"
85-
app:layout_constraintVertical_bias="0.0" />
86-
87-
<ImageView
88-
android:id="@+id/buttonDownloadAll"
89-
android:layout_width="42dp"
90-
android:layout_height="42dp"
91-
android:layout_marginEnd="8dp"
92-
android:padding="2dp"
93-
android:src="@drawable/download_icon"
94-
android:tint="@color/very_very_dark_gray"
95-
android:visibility="visible"
96-
app:layout_constraintBottom_toBottomOf="@+id/titleAvailable"
97-
app:layout_constraintEnd_toEndOf="parent"
98-
app:layout_constraintHorizontal_bias="1.0"
99-
app:layout_constraintStart_toStartOf="parent"
100-
app:layout_constraintTop_toTopOf="@+id/titleAvailable" />
101-
102-
<ListView
103-
android:id="@+id/list_view"
104-
android:layout_width="match_parent"
105-
android:layout_height="wrap_content"
106-
android:animateLayoutChanges="false"
107-
android:childDivider="#00000000"
108-
android:divider="#00000000"
109-
android:visibility="visible"
110-
app:layout_constraintEnd_toEndOf="parent"
111-
app:layout_constraintStart_toStartOf="parent"
112-
app:layout_constraintTop_toBottomOf="@+id/buttonDownloadAll"
113-
app:layout_constraintBottom_toBottomOf="parent"/>
114-
</androidx.constraintlayout.widget.ConstraintLayout>
115-
116-
117-
118-
</LinearLayout>
119-
</androidx.core.widget.NestedScrollView>
25+
app:layout_constraintTop_toTopOf="parent"
26+
app:layout_constraintVertical_bias="0.0"
27+
tools:listitem="@layout/preview_mozilla_models"
28+
tools:visibility="visible" />
12029

12130
</androidx.constraintlayout.widget.ConstraintLayout>

0 commit comments

Comments
 (0)