diff options
Diffstat (limited to 'app/src/main/res')
| -rw-r--r-- | app/src/main/res/drawable/badge_marker.xml | 9 | ||||
| -rw-r--r-- | app/src/main/res/drawable/bg_record_active.xml | 8 | ||||
| -rw-r--r-- | app/src/main/res/drawable/bg_record_idle.xml | 8 | ||||
| -rw-r--r-- | app/src/main/res/layout/activity_main.xml | 98 | ||||
| -rw-r--r-- | app/src/main/res/layout/activity_player.xml | 31 | ||||
| -rw-r--r-- | app/src/main/res/layout/activity_recordings.xml | 1 | ||||
| -rw-r--r-- | app/src/main/res/values/strings.xml | 15 |
7 files changed, 131 insertions, 39 deletions
diff --git a/app/src/main/res/drawable/badge_marker.xml b/app/src/main/res/drawable/badge_marker.xml new file mode 100644 index 0000000..267ee7e --- /dev/null +++ b/app/src/main/res/drawable/badge_marker.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<shape xmlns:android="http://schemas.android.com/apk/res/android" + android:shape="rectangle"> + <corners android:radius="14dp" /> + <solid android:color="#2A3442" /> + <stroke + android:width="1dp" + android:color="#3A4A5E" /> +</shape> diff --git a/app/src/main/res/drawable/bg_record_active.xml b/app/src/main/res/drawable/bg_record_active.xml index e218a37..4034b8c 100644 --- a/app/src/main/res/drawable/bg_record_active.xml +++ b/app/src/main/res/drawable/bg_record_active.xml @@ -9,10 +9,10 @@ </shape> </item> <item - android:bottom="62dp" - android:left="62dp" - android:right="62dp" - android:top="62dp"> + android:bottom="46dp" + android:left="46dp" + android:right="46dp" + android:top="46dp"> <shape android:shape="rectangle"> <corners android:radius="14dp" /> <solid android:color="@color/accent" /> diff --git a/app/src/main/res/drawable/bg_record_idle.xml b/app/src/main/res/drawable/bg_record_idle.xml index c9f776a..0a6be67 100644 --- a/app/src/main/res/drawable/bg_record_idle.xml +++ b/app/src/main/res/drawable/bg_record_idle.xml @@ -9,10 +9,10 @@ </shape> </item> <item - android:bottom="56dp" - android:left="56dp" - android:right="56dp" - android:top="56dp"> + android:bottom="42dp" + android:left="42dp" + android:right="42dp" + android:top="42dp"> <shape android:shape="oval"> <solid android:color="@color/accent" /> </shape> diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index f7f2ac6..8bda7d3 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -2,21 +2,22 @@ <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" + android:id="@+id/root" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/background" - android:paddingLeft="24dp" - android:paddingRight="24dp"> + android:paddingLeft="20dp" + android:paddingRight="20dp"> <TextView android:id="@+id/titleText" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginTop="24dp" + android:layout_marginTop="16dp" android:letterSpacing="0.04" android:text="@string/app_name" android:textColor="@color/text_primary" - android:textSize="32sp" + android:textSize="30sp" android:textStyle="bold" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -26,7 +27,7 @@ android:id="@+id/libraryButton" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginTop="16dp" + android:layout_marginTop="8dp" android:layout_marginEnd="4dp" android:background="?android:attr/selectableItemBackground" android:padding="8dp" @@ -40,19 +41,18 @@ android:id="@+id/subtitleText" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginTop="2dp" android:text="@string/subtitle" android:textColor="@color/text_secondary" - android:textSize="13sp" + android:textSize="12sp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/titleText" /> <ImageView android:id="@+id/recIndicator" - android:layout_width="14dp" - android:layout_height="14dp" - android:layout_marginBottom="8dp" + android:layout_width="12dp" + android:layout_height="12dp" + android:layout_marginBottom="6dp" android:contentDescription="@null" android:src="@drawable/ic_rec_dot" android:visibility="invisible" @@ -64,11 +64,11 @@ android:id="@+id/timerText" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginBottom="14dp" + android:layout_marginBottom="10dp" android:fontFamily="monospace" android:text="@string/timer_zero" android:textColor="@color/text_primary" - android:textSize="52sp" + android:textSize="46sp" android:textStyle="bold" app:layout_constraintBottom_toTopOf="@id/recordButton" app:layout_constraintEnd_toEndOf="parent" @@ -76,8 +76,8 @@ <ImageButton android:id="@+id/recordButton" - android:layout_width="180dp" - android:layout_height="180dp" + android:layout_width="148dp" + android:layout_height="148dp" android:background="@drawable/bg_record_idle" android:contentDescription="@string/cd_record" android:scaleType="centerInside" @@ -86,51 +86,91 @@ app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" - app:layout_constraintVertical_bias="0.42" /> + app:layout_constraintVertical_bias="0.34" /> + + <com.wuhei.reccoon.WaveformView + android:id="@+id/waveformView" + android:layout_width="0dp" + android:layout_height="64dp" + android:layout_marginTop="16dp" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@id/recordButton" /> <com.wuhei.reccoon.LevelMeterView android:id="@+id/levelMeter" android:layout_width="0dp" - android:layout_height="46dp" - android:layout_marginTop="22dp" + android:layout_height="38dp" + android:layout_marginTop="10dp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@id/recordButton" /> + app:layout_constraintTop_toBottomOf="@id/waveformView" /> - <androidx.appcompat.widget.AppCompatCheckBox - android:id="@+id/silenceCheckbox" + <Button + android:id="@+id/markButton" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginTop="10dp" - android:text="@string/silence_recording" - android:textColor="@color/text_secondary" - android:textSize="13sp" + android:layout_marginTop="6dp" + android:enabled="false" + android:minWidth="140dp" + android:text="@string/mark_action" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/levelMeter" /> + <LinearLayout + android:id="@+id/optionsRow" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="2dp" + android:gravity="center" + android:orientation="horizontal" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toBottomOf="@id/markButton"> + + <androidx.appcompat.widget.AppCompatCheckBox + android:id="@+id/monoCheckbox" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:contentDescription="@string/mono_recording" + android:text="@string/mono_short" + android:textColor="@color/text_secondary" + android:textSize="13sp" /> + + <androidx.appcompat.widget.AppCompatCheckBox + android:id="@+id/silenceCheckbox" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginStart="10dp" + android:contentDescription="@string/silence_recording" + android:text="@string/silence_short" + android:textColor="@color/text_secondary" + android:textSize="13sp" /> + </LinearLayout> + <TextView android:id="@+id/statusText" android:layout_width="0dp" android:layout_height="wrap_content" - android:layout_marginTop="14dp" + android:layout_marginTop="8dp" android:gravity="center" android:text="@string/status_idle" android:textColor="@color/text_secondary" - android:textSize="15sp" + android:textSize="14sp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@id/silenceCheckbox" /> + app:layout_constraintTop_toBottomOf="@id/optionsRow" /> <TextView android:id="@+id/footerText" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginBottom="12dp" + android:layout_marginBottom="10dp" android:alpha="0.6" android:text="@string/footer" android:textColor="@color/text_secondary" - android:textSize="12sp" + android:textSize="11sp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" /> diff --git a/app/src/main/res/layout/activity_player.xml b/app/src/main/res/layout/activity_player.xml index 479efa9..67f5284 100644 --- a/app/src/main/res/layout/activity_player.xml +++ b/app/src/main/res/layout/activity_player.xml @@ -1,5 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/root" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/background" @@ -74,6 +75,36 @@ android:text="@string/player_speed_1x" /> </LinearLayout> + <LinearLayout + android:id="@+id/markersSection" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="14dp" + android:orientation="vertical" + android:visibility="gone"> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="@string/markers_title" + android:textColor="@color/text_primary" + android:textSize="15sp" + android:textStyle="bold" /> + + <HorizontalScrollView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="6dp" + android:scrollbars="none"> + + <LinearLayout + android:id="@+id/markersContainer" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:orientation="horizontal" /> + </HorizontalScrollView> + </LinearLayout> + <View android:layout_width="match_parent" android:layout_height="1dp" diff --git a/app/src/main/res/layout/activity_recordings.xml b/app/src/main/res/layout/activity_recordings.xml index c0ad20a..aff2088 100644 --- a/app/src/main/res/layout/activity_recordings.xml +++ b/app/src/main/res/layout/activity_recordings.xml @@ -1,5 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/root" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/background" diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index b08c3f7..54a69d9 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,9 +1,9 @@ <?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">RECCoon</string> - <string name="subtitle">by wuhei · v1.2.0-alpha</string> + <string name="subtitle">by wuhei · v1.3.0-alpha</string> <string name="timer_zero">00:00</string> - <string name="footer">44.1 kHz · 16-bit · stereo PCM (WAV)</string> + <string name="footer">44.1 kHz · 16-bit · PCM (WAV) · cue markers</string> <string name="status_idle">Tap the button to start recording</string> <string name="status_recording">Recording… tap again to stop and save</string> @@ -12,6 +12,17 @@ <string name="cd_record">Start recording</string> <string name="cd_stop">Stop and save</string> + <string name="mark_action">Mark</string> + <string name="marker_title">Add marker</string> + <string name="marker_hint">Marker label</string> + <string name="marker_add">Add</string> + <string name="marker_fmt">Marker %1$d</string> + <string name="marker_added_fmt">Marker %1$d added</string> + <string name="markers_title">Markers</string> + + <string name="mono_short">Mono</string> + <string name="mono_recording">Record in mono (half file size)</string> + <string name="silence_short">Silence alerts</string> <string name="silence_recording">Silence notifications & vibrations while recording</string> <string name="dnd_title">Allow Do Not Disturb</string> <string name="dnd_message">To silence notifications and vibrations while recording, allow RECCoon access to Do Not Disturb.</string> |
