diff options
| author | Tom Cooks <tommasogagliardi+github@gmail.com> | 2026-09-24 14:16:46 -0400 |
|---|---|---|
| committer | Tom Cooks <tommasogagliardi+github@gmail.com> | 2026-09-24 14:16:46 -0400 |
| commit | 68402ebbdacfc95e40bd856caa8c4cb83bef8342 (patch) | |
| tree | f08147f73013d79ad9eae09515f7f18e06f25134 /app/src/main/res/layout/activity_main.xml | |
| parent | 2aa5e790a1ec4d74204d4ae3643508b0ac6b0aa4 (diff) | |
| download | reccoon-68402ebbdacfc95e40bd856caa8c4cb83bef8342.tar.gz | |
Add mono switch, live waveform, and WAV cue markers (1.3.0-alpha)
- WavRecorder: optional mono, waveform envelope, cue/adtl marker chunks
- WaveformView: scrolling waveform with red clipped columns
- Marker + MarkerStore; Mark button with label dialog
- PlayerActivity: marker chips that seek; shared seekTo
- InsetsHelper: keep UI clear of status bar/notch and nav bar
- Bump to 1.3.0-alpha (versionCode 4)
Diffstat (limited to 'app/src/main/res/layout/activity_main.xml')
| -rw-r--r-- | app/src/main/res/layout/activity_main.xml | 98 |
1 files changed, 69 insertions, 29 deletions
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" /> |
