Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name: Build Android APK

on:
push:
branches: [ main, master ]
branches: [ main, master, dictator, dictator-* ]
workflow_dispatch:

permissions:
Expand Down Expand Up @@ -47,10 +47,17 @@ jobs:
run: |
chmod +x gradlew
chmod +x tools/fetch-sherpa-onnx.sh
chmod +x tools/bergamot/build-android.sh

- name: Fetch Sherpa ONNX Libraries
run: ./tools/fetch-sherpa-onnx.sh

- name: Build Bergamot Translation Engine
run: |
export ANDROID_HOME=$ANDROID_SDK_ROOT
echo "y" | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --install "cmake;4.1.2" "ndk;29.0.14206865"
./tools/bergamot/build-android.sh

- name: Build APK
run: ./gradlew assembleDebug

Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
<div align="center">

<img src="img/Icon_512x512_2_round.png" alt="Dictate Keyboard logo" width="120">
<img src="img/Icon_512x512_2_round.png" alt="Dictator Keyboard logo" width="120">

# Dictate Keyboard
# Dictator Keyboard

### Speak instead of type — in any app.

A powerful Whisper AI keyboard for dictation, real-time transcription and typing.
A powerful Whisper AI keyboard for dictation, real-time transcription and typing. Created by Mangoloads, with proportional credit to the original Dictate creators.

<p>
<a href="https://dictatekeyboard.com"><img alt="Website" src="https://img.shields.io/badge/website-dictatekeyboard.com-30B7E6?labelColor=1b1e2b&logo=googlechrome&logoColor=white"></a>
Expand Down
2 changes: 1 addition & 1 deletion app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ configure<ApplicationExtension> {
}

defaultConfig {
applicationId = "net.devemperor.dictate"
applicationId = "net.mangoloads.dictator"
minSdk = projectMinSdk.toInt()
targetSdk = projectTargetSdk.toInt()
versionCode = projectVersionCode.toInt()
Expand Down
25 changes: 2 additions & 23 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -73,18 +73,7 @@
<!-- Allow app to be profiled for benchmarking and baseline profile generation -->
<profileable android:shell="true"/>

<!-- IME service -->
<service
android:name="dev.patrickgold.florisboard.FlorisImeService"
android:label="@string/floris_app_name"
android:permission="android.permission.BIND_INPUT_METHOD"
android:directBootAware="true"
android:exported="true">
<intent-filter>
<action android:name="android.view.InputMethod"/>
</intent-filter>
<meta-data android:name="android.view.im" android:resource="@xml/method"/>
</service>
<!-- IME service removed -->

<!-- Dictate floating-overlay accessibility service (issue #88): optional, user-enabled. Detects
when a text field is focused in any app so the floating dictation button can appear, and
Expand All @@ -104,17 +93,7 @@
android:resource="@xml/accessibility_service_config"/>
</service>

<!-- Spellchecker service -->
<service
android:name="dev.patrickgold.florisboard.FlorisSpellCheckerService"
android:label="@string/floris_app_name"
android:permission="android.permission.BIND_TEXT_SERVICE"
android:exported="true">
<intent-filter>
<action android:name="android.service.textservice.SpellCheckerService"/>
</intent-filter>
<meta-data android:name="android.view.textservice.scs" android:resource="@xml/spellchecker"/>
</service>
<!-- Spellchecker service removed -->

<!-- Wear OS Data Layer endpoint (#106): answers settings-sync requests from the watch app. -->
<service
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,18 @@
"license": "apache-2.0"
},
"themes": [
{
"id": "liquid_glass",
"label": "Liquid Glass",
"authors": [ "Mangoloads" ],
"isNight": true
},
{
"id": "liquid_glass_indian",
"label": "Liquid Glass Indian",
"authors": [ "Mangoloads" ],
"isNight": true
},
{
"id": "dictate_glass",
"label": "Dictate Glass",
Expand Down
Loading
Loading