diff --git a/.gitea/workflows/android.yml b/.gitea/workflows/android.yml
index 966b294..da46dfd 100644
--- a/.gitea/workflows/android.yml
+++ b/.gitea/workflows/android.yml
@@ -29,9 +29,6 @@ jobs:
- name: Lint and test
working-directory: android
run: ./gradlew --no-daemon lintDebug testDebugUnitTest
- - name: Build debug APK
- working-directory: android
- run: ./gradlew --no-daemon assembleDebug
- name: Build signed release APK
working-directory: android
env:
@@ -52,12 +49,13 @@ jobs:
working-directory: android
run: |
mkdir -p ../artifacts
- cp app/build/outputs/apk/debug/app-debug.apk ../artifacts/transui-android-debug.apk
if [ -f app/build/outputs/apk/release/app-release.apk ]; then
cp app/build/outputs/apk/release/app-release.apk ../artifacts/transui-android-release.apk
+ cd ../artifacts
+ sha256sum ./*.apk > SHA256SUMS-android
+ else
+ echo "No release APK to publish"
fi
- cd ../artifacts
- sha256sum ./*.apk > SHA256SUMS-android
- name: Attach APKs to the Gitea release
if: gitea.event_name == 'release'
env:
@@ -72,4 +70,4 @@ jobs:
with:
name: transui-android
path: artifacts/
- if-no-files-found: error
+ if-no-files-found: warn
diff --git a/android/app/src/main/java/io/github/transui/android/SpeechRecognitionActivity.java b/android/app/src/main/java/io/github/transui/android/SpeechRecognitionActivity.java
index d001519..58403c3 100644
--- a/android/app/src/main/java/io/github/transui/android/SpeechRecognitionActivity.java
+++ b/android/app/src/main/java/io/github/transui/android/SpeechRecognitionActivity.java
@@ -80,25 +80,29 @@ public final class SpeechRecognitionActivity extends Activity {
private void configureRecordButton() {
record.setAlpha(1);
- resizeRecordButton(config.pushToTalk ? 80 : 64, config.pushToTalk ? 23 : 19);
if (config.pushToTalk) {
- record.setImageResource(R.drawable.ic_mic);
+ record.setBackgroundResource(R.drawable.voice_pill_button);
+ resizeRecordButton(132, 64, 16);
+ record.setImageResource(R.drawable.ic_apps);
record.setContentDescription(getString(R.string.hold_to_talk));
record.setPushToTalkActions(this::startRecording, this::stopRecording);
} else {
+ record.setBackgroundResource(R.drawable.voice_primary_button);
+ resizeRecordButton(64, 64, 19);
record.setImageResource(R.drawable.ic_stop);
record.setContentDescription(getString(R.string.stop));
record.setOnClickListener(view -> stopRecording());
}
}
- private void resizeRecordButton(int sizeDp, int paddingDp) {
+ private void resizeRecordButton(int widthDp, int heightDp, int paddingDp) {
float density = getResources().getDisplayMetrics().density;
- int size = Math.round(sizeDp * density);
+ int width = Math.round(widthDp * density);
+ int height = Math.round(heightDp * density);
int padding = Math.round(paddingDp * density);
ViewGroup.LayoutParams parameters = record.getLayoutParams();
- parameters.width = size;
- parameters.height = size;
+ parameters.width = width;
+ parameters.height = height;
record.setLayoutParams(parameters);
record.setPadding(padding, padding, padding, padding);
}
diff --git a/android/app/src/main/java/io/github/transui/android/TransuiInputMethodService.java b/android/app/src/main/java/io/github/transui/android/TransuiInputMethodService.java
index 68a8856..56c0984 100644
--- a/android/app/src/main/java/io/github/transui/android/TransuiInputMethodService.java
+++ b/android/app/src/main/java/io/github/transui/android/TransuiInputMethodService.java
@@ -109,25 +109,29 @@ public final class TransuiInputMethodService extends InputMethodService {
record.setAlpha(1);
record.setOnClickListener(null);
record.setPushToTalkActions(null, null);
- resizeRecordButton(config.pushToTalk ? 76 : 64, config.pushToTalk ? 22 : 19);
if (config.pushToTalk) {
- record.setImageResource(R.drawable.ic_mic);
+ record.setBackgroundResource(R.drawable.voice_pill_button);
+ resizeRecordButton(132, 64, 16);
+ record.setImageResource(R.drawable.ic_apps);
record.setContentDescription(getString(R.string.hold_to_talk));
record.setPushToTalkActions(this::startRecording, this::stopRecording);
} else {
+ record.setBackgroundResource(R.drawable.voice_primary_button);
+ resizeRecordButton(64, 64, 19);
record.setImageResource(R.drawable.ic_stop);
record.setContentDescription(getString(R.string.stop));
record.setOnClickListener(view -> stopRecording());
}
}
- private void resizeRecordButton(int sizeDp, int paddingDp) {
+ private void resizeRecordButton(int widthDp, int heightDp, int paddingDp) {
float density = getResources().getDisplayMetrics().density;
- int size = Math.round(sizeDp * density);
+ int width = Math.round(widthDp * density);
+ int height = Math.round(heightDp * density);
int padding = Math.round(paddingDp * density);
ViewGroup.LayoutParams parameters = record.getLayoutParams();
- parameters.width = size;
- parameters.height = size;
+ parameters.width = width;
+ parameters.height = height;
record.setLayoutParams(parameters);
record.setPadding(padding, padding, padding, padding);
}
diff --git a/android/app/src/main/res/drawable/ic_apps.xml b/android/app/src/main/res/drawable/ic_apps.xml
new file mode 100644
index 0000000..c319fc7
--- /dev/null
+++ b/android/app/src/main/res/drawable/ic_apps.xml
@@ -0,0 +1,10 @@
+
+
+
+
diff --git a/android/app/src/main/res/drawable/ic_mic.xml b/android/app/src/main/res/drawable/ic_mic.xml
deleted file mode 100644
index c0e8e76..0000000
--- a/android/app/src/main/res/drawable/ic_mic.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
-
diff --git a/android/app/src/main/res/drawable/ic_stop.xml b/android/app/src/main/res/drawable/ic_stop.xml
index 8af5ca0..9f562dc 100644
--- a/android/app/src/main/res/drawable/ic_stop.xml
+++ b/android/app/src/main/res/drawable/ic_stop.xml
@@ -4,5 +4,8 @@
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
-
+
diff --git a/android/app/src/main/res/drawable/voice_pill_button.xml b/android/app/src/main/res/drawable/voice_pill_button.xml
new file mode 100644
index 0000000..ae61418
--- /dev/null
+++ b/android/app/src/main/res/drawable/voice_pill_button.xml
@@ -0,0 +1,10 @@
+
+
+ -
+
+
+
+
+
+
diff --git a/android/app/src/main/res/layout/recognition_panel.xml b/android/app/src/main/res/layout/recognition_panel.xml
index 527994f..ea74c37 100644
--- a/android/app/src/main/res/layout/recognition_panel.xml
+++ b/android/app/src/main/res/layout/recognition_panel.xml
@@ -61,8 +61,7 @@
android:background="@drawable/voice_primary_button"
android:contentDescription="@string/stop"
android:padding="16dp"
- android:src="@drawable/ic_stop"
- android:tint="@color/paper" />
+ android:src="@drawable/ic_stop" />
+ android:src="@drawable/ic_stop" />