Skip to content

Commit 0cb4626

Browse files
author
Seth
committed
Merge branch 'release/1.3.1'
2 parents 1b2c69f + 3747f54 commit 0cb4626

378 files changed

Lines changed: 1615 additions & 1555 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/android.yml

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
name: Android CI
2+
3+
on:
4+
push:
5+
branches:
6+
- 'develop'
7+
- 'release/*'
8+
9+
jobs:
10+
apk:
11+
name: Generate APK
12+
runs-on: ubuntu-18.04
13+
14+
steps:
15+
- uses: actions/checkout@v1
16+
17+
- name: Update Run Number in properties
18+
uses: christian-draeger/write-properties@1.0.1
19+
with:
20+
path: gradle.properties
21+
property: RUN_NUMBER
22+
value: ${{ github.run_number }}
23+
24+
- name: set up JDK 1.8
25+
uses: actions/setup-java@v1
26+
with:
27+
java-version: 1.8
28+
29+
- name: Make .android folder
30+
run: mkdir /home/runner/.android
31+
32+
- name: Create debug keystore
33+
run: |
34+
echo "${{ secrets.CI_KEYSTORE }}" > debug.keystore.asc
35+
gpg -d --passphrase "${{ secrets.CI_KEYSTORE_DECRYPT }}" --batch debug.keystore.asc > /home/runner/.android/debug.keystore
36+
- name: Build debug APK
37+
run: bash ./gradlew assembleCi --stacktrace
38+
39+
- name: set apk name env
40+
run: echo ::set-env name=APK_NAME::$(basename app/build/outputs/apk/ci/*.apk .apk)
41+
42+
- name: Upload APK
43+
uses: actions/upload-artifact@v1
44+
with:
45+
name: ${{ env.APK_NAME }}
46+
path: app/build/outputs/apk/ci/${{ env.APK_NAME }}.apk
47+
48+
- name: Upload to Discord
49+
uses: sinshutu/upload-to-discord@v2.0.0
50+
env:
51+
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
52+
with:
53+
args: app/build/outputs/apk/ci/${{ env.APK_NAME }}.apk

README.md

Lines changed: 8 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -1,52 +1,11 @@
1-
# OpenBoard
2-
<a href='https://f-droid.org/packages/org.dslul.openboard.inputmethod.latin'><img src='https://fdroid.gitlab.io/artwork/badge/get-it-on.png' alt='Get it on F-Droid' height='80'></a>
3-
<a href='https://play.google.com/store/apps/details?id=org.dslul.openboard.inputmethod.latin&pcampaignid=pcampaignidMKT-Other-global-all-co-prtnr-py-PartBadge-Mar2515-1'><img alt='Get it on Google Play' src='https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png' height='80px'/></a>
1+
100% FOSS keyboard, forked from [OpenBoard](https://github.com/dslul/openboard), which is forked from the AOSP keyboard.
42

5-
![](images/feature.png)
3+
A huge thank you to [@dslul](https://github.com/dslul), who made this project possible! 😁 Otherwise,
4+
I would have had to spend a long time figuring out how to make the AOSP keyboard compile out of tree and make
5+
dictionaries work.
66

7-
100% FOSS keyboard, based on AOSP.
7+
## Contributing
8+
Contribute to the [OpenBoard](https://github.com/dslul/openboard) project if it isn't a fix for the Key Mapper integration.
89

9-
## Permissions
10-
* **Read Contacts**: Used to add your contact list to suggestions. Disabled by default.
11-
12-
## Contribute
13-
14-
### How to create a dictionary
15-
You can use [this tool](https://github.com/remi0s/aosp-dictionary-tools) to create a dictionary. You need a wordlist, as described [here](https://github.com/dslul/openboard/blob/master/dictionaries/sample.combined). The output .dict file must be put in [res/raw](https://github.com/dslul/openboard/tree/master/app/src/main/res/raw).
16-
17-
### APK Development
18-
19-
#### Linux
20-
21-
Install java:
22-
```sh
23-
sudo pacman -S jdk8-openjdk jre8-openjdk jre8-openjdk-headless
24-
```
25-
26-
Install Android SDK:
27-
```sh
28-
sudo pacman -S snapd
29-
sudo snap install androidsdk
30-
```
31-
32-
Configure your SDK location in your `~/.bash_profile` or `~/.bashrc`:
33-
```bash
34-
export ANDROID_SDK_ROOT=~/snap/androidsdk/current/AndroidSDK/
35-
```
36-
37-
Install the platform tools for your target android version:
38-
```sh
39-
androidsdk "platform-tools" "platforms;android-28"
40-
```
41-
42-
Compile the project. This will install all dependencies, make sure to accept
43-
licenses when prompted.
44-
45-
```sh
46-
./gradlew assembleDebug
47-
```
48-
49-
Connect your phone and install the debug APK
50-
```sh
51-
adb install ./app/build/outputs/apk/debug/app-debug.apk
52-
```
10+
I will make any bug fixes or add features that are useful to people who don't use Key Mapper pull requests in
11+
OpenBoard.

app/build.gradle

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,32 @@
11
apply plugin: 'com.android.application'
2-
apply plugin: 'kotlin-android-extensions'
32
apply plugin: 'kotlin-android'
3+
apply plugin: 'kotlin-android-extensions'
44

55
android {
66
compileSdkVersion 29
77

88
defaultConfig {
9-
applicationId "org.dslul.openboard.inputmethod.latin"
9+
applicationId "io.github.sds100.keymapper.inputmethod.latin"
1010
minSdkVersion 19
1111
targetSdkVersion 29
12-
versionCode 10
13-
versionName "1.3"
12+
versionCode 11
13+
versionName "1.3.1"
1414
}
1515

1616
buildTypes {
1717
release {
1818
minifyEnabled false
1919
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
2020
}
21+
debug {
22+
versionNameSuffix "-debug"
23+
}
24+
ci {
25+
debuggable = true
26+
27+
versionNameSuffix "-ci.$RUN_NUMBER"
28+
signingConfig signingConfigs.debug
29+
}
2130
}
2231

2332
aaptOptions {
@@ -35,12 +44,19 @@ android {
3544
}
3645
}
3746

47+
android.applicationVariants.all { variant ->
48+
variant.outputs.all {
49+
outputFileName = "keymapper-gui-keyboard-${variant.versionName}.apk"
50+
}
51+
}
52+
3853
dependencies {
3954
implementation 'com.google.code.findbugs:jsr305:3.0.2'
4055
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
4156
implementation "androidx.core:core-ktx:1.1.0"
4257
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
4358
}
59+
4460
repositories {
4561
mavenCentral()
4662
}

app/src/main/AndroidManifest.xml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
1818
coreApp="true"
19-
package="org.dslul.openboard.inputmethod.latin">
19+
package="io.github.sds100.keymapper.inputmethod.latin">
2020

2121
<uses-permission android:name="android.permission.READ_CONTACTS" />
2222
<uses-permission android:name="android.permission.READ_USER_DICTIONARY" />
@@ -28,17 +28,17 @@
2828
To use this, add the following line into calling application's AndroidManifest.xml
2929
<pre>
3030
{@code
31-
<uses-permission android:name="org.dslul.openboard.inputmethod.latin.HIDE_SOFT_INPUT"/>
31+
<uses-permission android:name="io.github.sds100.keymapper.inputmethod.latin.HIDE_SOFT_INPUT"/>
3232
}
3333
</pre>
3434
then call {@link android.content.Context#sendBroadcast(Intent)} as follows:
3535
<pre>
3636
{@code
37-
sendBroadcast(new Intent("org.dslul.openboard.inputmethod.latin.HIDE_SOFT_INPUT")
38-
.setPackage("org.dslul.openboard.inputmethod.latin"));
37+
sendBroadcast(new Intent("io.github.sds100.keymapper.inputmethod.latin.HIDE_SOFT_INPUT")
38+
.setPackage("io.github.sds100.keymapper.inputmethod.latin"));
3939
}
4040
</pre> -->
41-
<permission android:name="org.dslul.openboard.inputmethod.latin.HIDE_SOFT_INPUT"
41+
<permission android:name="io.github.sds100.keymapper.inputmethod.latin.HIDE_SOFT_INPUT"
4242
android:protectionLevel="signature" />
4343

4444
<application android:label="@string/english_ime_name"
@@ -131,12 +131,12 @@
131131

132132
<receiver android:name="DictionaryPackInstallBroadcastReceiver" android:exported="false">
133133
<intent-filter>
134-
<action android:name="org.dslul.openboard.inputmethod.dictionarypack.aosp.UNKNOWN_CLIENT" />
134+
<action android:name="io.github.sds100.keymapper.inputmethod.dictionarypack.aosp.UNKNOWN_CLIENT" />
135135
</intent-filter>
136136
</receiver>
137137

138138
<!-- Content providers -->
139-
<provider android:name="org.dslul.openboard.inputmethod.dictionarypack.DictionaryProvider"
139+
<provider android:name="io.github.sds100.keymapper.inputmethod.dictionarypack.DictionaryProvider"
140140
android:grantUriPermissions="true"
141141
android:exported="false"
142142
android:authorities="@string/authority"

app/src/main/java/org/dslul/openboard/inputmethod/accessibility/AccessibilityLongPressTimer.kt renamed to app/src/main/java/io/github/sds100/keymapper/inputmethod/accessibility/AccessibilityLongPressTimer.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
package org.dslul.openboard.inputmethod.accessibility
1+
package io.github.sds100.keymapper.inputmethod.accessibility
22

33
import android.content.Context
44
import android.os.Handler
55
import android.os.Message
6-
import org.dslul.openboard.inputmethod.keyboard.Key
7-
import org.dslul.openboard.inputmethod.latin.R
6+
import io.github.sds100.keymapper.inputmethod.keyboard.Key
7+
import io.github.sds100.keymapper.inputmethod.latin.R
88

99
// Handling long press timer to show a more keys keyboard.
1010
internal class AccessibilityLongPressTimer(private val mCallback: LongPressTimerCallback,

app/src/main/java/org/dslul/openboard/inputmethod/accessibility/AccessibilityUtils.kt renamed to app/src/main/java/io/github/sds100/keymapper/inputmethod/accessibility/AccessibilityUtils.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.dslul.openboard.inputmethod.accessibility
1+
package io.github.sds100.keymapper.inputmethod.accessibility
22

33
import android.content.Context
44
import android.media.AudioManager
@@ -13,9 +13,9 @@ import android.view.accessibility.AccessibilityEvent
1313
import android.view.accessibility.AccessibilityManager
1414
import android.view.inputmethod.EditorInfo
1515
import androidx.core.view.accessibility.AccessibilityEventCompat
16-
import org.dslul.openboard.inputmethod.latin.R
17-
import org.dslul.openboard.inputmethod.latin.SuggestedWords
18-
import org.dslul.openboard.inputmethod.latin.utils.InputTypeUtils
16+
import io.github.sds100.keymapper.inputmethod.latin.R
17+
import io.github.sds100.keymapper.inputmethod.latin.SuggestedWords
18+
import io.github.sds100.keymapper.inputmethod.latin.utils.InputTypeUtils
1919

2020
class AccessibilityUtils private constructor() {
2121
private var mContext: Context? = null

app/src/main/java/org/dslul/openboard/inputmethod/accessibility/KeyCodeDescriptionMapper.kt renamed to app/src/main/java/io/github/sds100/keymapper/inputmethod/accessibility/KeyCodeDescriptionMapper.kt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
package org.dslul.openboard.inputmethod.accessibility
1+
package io.github.sds100.keymapper.inputmethod.accessibility
22

33
import android.content.Context
44
import android.text.TextUtils
55
import android.util.Log
66
import android.util.SparseIntArray
77
import android.view.inputmethod.EditorInfo
8-
import org.dslul.openboard.inputmethod.keyboard.Key
9-
import org.dslul.openboard.inputmethod.keyboard.Keyboard
10-
import org.dslul.openboard.inputmethod.keyboard.KeyboardId
11-
import org.dslul.openboard.inputmethod.latin.R
12-
import org.dslul.openboard.inputmethod.latin.common.Constants
13-
import org.dslul.openboard.inputmethod.latin.common.StringUtils
8+
import io.github.sds100.keymapper.inputmethod.keyboard.Key
9+
import io.github.sds100.keymapper.inputmethod.keyboard.Keyboard
10+
import io.github.sds100.keymapper.inputmethod.keyboard.KeyboardId
11+
import io.github.sds100.keymapper.inputmethod.latin.R
12+
import io.github.sds100.keymapper.inputmethod.latin.common.Constants
13+
import io.github.sds100.keymapper.inputmethod.latin.common.StringUtils
1414
import java.util.*
1515

1616
internal class KeyCodeDescriptionMapper private constructor() {

app/src/main/java/org/dslul/openboard/inputmethod/accessibility/KeyboardAccessibilityDelegate.kt renamed to app/src/main/java/io/github/sds100/keymapper/inputmethod/accessibility/KeyboardAccessibilityDelegate.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.dslul.openboard.inputmethod.accessibility
1+
package io.github.sds100.keymapper.inputmethod.accessibility
22

33
import android.os.SystemClock
44
import android.util.Log
@@ -8,10 +8,10 @@ import android.view.accessibility.AccessibilityEvent
88
import androidx.core.view.AccessibilityDelegateCompat
99
import androidx.core.view.ViewCompat
1010
import androidx.core.view.accessibility.AccessibilityNodeInfoCompat
11-
import org.dslul.openboard.inputmethod.keyboard.Key
12-
import org.dslul.openboard.inputmethod.keyboard.KeyDetector
13-
import org.dslul.openboard.inputmethod.keyboard.Keyboard
14-
import org.dslul.openboard.inputmethod.keyboard.KeyboardView
11+
import io.github.sds100.keymapper.inputmethod.keyboard.Key
12+
import io.github.sds100.keymapper.inputmethod.keyboard.KeyDetector
13+
import io.github.sds100.keymapper.inputmethod.keyboard.Keyboard
14+
import io.github.sds100.keymapper.inputmethod.keyboard.KeyboardView
1515

1616
/**
1717
* This class represents a delegate that can be registered in a class that extends

app/src/main/java/org/dslul/openboard/inputmethod/accessibility/KeyboardAccessibilityNodeProvider.kt renamed to app/src/main/java/io/github/sds100/keymapper/inputmethod/accessibility/KeyboardAccessibilityNodeProvider.kt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.dslul.openboard.inputmethod.accessibility
1+
package io.github.sds100.keymapper.inputmethod.accessibility
22

33
import android.graphics.Rect
44
import android.os.Bundle
@@ -9,11 +9,11 @@ import androidx.core.view.ViewCompat
99
import androidx.core.view.accessibility.AccessibilityEventCompat
1010
import androidx.core.view.accessibility.AccessibilityNodeInfoCompat
1111
import androidx.core.view.accessibility.AccessibilityNodeProviderCompat
12-
import org.dslul.openboard.inputmethod.keyboard.Key
13-
import org.dslul.openboard.inputmethod.keyboard.Keyboard
14-
import org.dslul.openboard.inputmethod.keyboard.KeyboardView
15-
import org.dslul.openboard.inputmethod.latin.common.CoordinateUtils
16-
import org.dslul.openboard.inputmethod.latin.settings.Settings
12+
import io.github.sds100.keymapper.inputmethod.keyboard.Key
13+
import io.github.sds100.keymapper.inputmethod.keyboard.Keyboard
14+
import io.github.sds100.keymapper.inputmethod.keyboard.KeyboardView
15+
import io.github.sds100.keymapper.inputmethod.latin.common.CoordinateUtils
16+
import io.github.sds100.keymapper.inputmethod.latin.settings.Settings
1717

1818
/**
1919
* Exposes a virtual view sub-tree for [KeyboardView] and generates

app/src/main/java/org/dslul/openboard/inputmethod/accessibility/MainKeyboardAccessibilityDelegate.kt renamed to app/src/main/java/io/github/sds100/keymapper/inputmethod/accessibility/MainKeyboardAccessibilityDelegate.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
1-
package org.dslul.openboard.inputmethod.accessibility
1+
package io.github.sds100.keymapper.inputmethod.accessibility
22

33
import android.graphics.Rect
44
import android.os.SystemClock
55
import android.util.Log
66
import android.util.SparseIntArray
77
import android.view.MotionEvent
8-
import org.dslul.openboard.inputmethod.accessibility.AccessibilityLongPressTimer.LongPressTimerCallback
9-
import org.dslul.openboard.inputmethod.keyboard.*
10-
import org.dslul.openboard.inputmethod.latin.R
11-
import org.dslul.openboard.inputmethod.latin.utils.SubtypeLocaleUtils
8+
import io.github.sds100.keymapper.inputmethod.accessibility.AccessibilityLongPressTimer.LongPressTimerCallback
9+
import io.github.sds100.keymapper.inputmethod.keyboard.*
10+
import io.github.sds100.keymapper.inputmethod.latin.R
11+
import io.github.sds100.keymapper.inputmethod.latin.utils.SubtypeLocaleUtils
1212

1313
/**
1414
* This class represents a delegate that can be registered in [MainKeyboardView] to enhance

0 commit comments

Comments
 (0)