Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: merge master into kmc-convert #12254

Merged
merged 91 commits into from
Aug 22, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
91 commits
Select commit Hold shift + click to select a range
3ee7115
fix(windows): Don't translate "Keyman" in some Windows strings
darcywong00 Aug 6, 2024
4335f19
fix(developer): remove redundant check in linter
srl295 Jun 24, 2024
88c5381
chore(deps-dev): bump @75lb/deep-merge from 1.1.1 to 1.1.2
dependabot[bot] Aug 7, 2024
0c6f8d6
Merge remote-tracking branch 'upstream/master' into feat/developer/11…
srl295 Aug 7, 2024
4c87a16
feat(android/engine): Add special handling for ENTER key
darcywong00 Aug 5, 2024
ea2b062
fix(android/engine): Separate DONE from NEWLINE action
darcywong00 Aug 7, 2024
cb7adbf
Merge branch 'master' into feat/developer/11054-improve-linter
mcdurdin Aug 8, 2024
74011e2
Merge remote-tracking branch 'origin/master' into feat/android/enter-…
darcywong00 Aug 9, 2024
786a106
fix(android): Add SEND, NEXT, PREVIOUS actions
darcywong00 Aug 9, 2024
e4ad115
Merge remote-tracking branch 'origin/master' into feat/android/enter-…
darcywong00 Aug 9, 2024
b8e961b
fix(windows): splash screen useses new start keyman string
rc-swag Aug 12, 2024
fe289e4
feat(android): Add menu to customize longpress delay time
darcywong00 Aug 9, 2024
2437084
feat(android): Start menu for adjusting longpress delay
darcywong00 Aug 9, 2024
9d058c0
feat(android): Add hooks for KeymanWeb call
darcywong00 Aug 14, 2024
6a2c15d
chore(android): Cleanup logging
darcywong00 Aug 14, 2024
83b9426
Merge remote-tracking branch 'origin/master' into feat/android/longpr…
darcywong00 Aug 14, 2024
0e78494
Merge remote-tracking branch 'origin/master' into feat/android/longpr…
darcywong00 Aug 14, 2024
d728b33
fix(android): Pass longpress delay to KeymanWeb
darcywong00 Aug 14, 2024
6fad148
chore(deps): bump semver from 7.5.4 to 7.6.0
dependabot[bot] Aug 14, 2024
4509805
fix(web): restore flick functionality
jahorton Aug 15, 2024
f9e7390
fix(windows): add translatable=false flag
rc-swag Aug 15, 2024
2938ee1
refactor(web): remove engine/interfaces dependency on engine/js-proce…
jahorton Aug 15, 2024
8af1765
docs(web): doc tweak
jahorton Aug 15, 2024
8814532
docs(web): drops doc-reference to hidden field
jahorton Aug 15, 2024
de0b2b5
fix(windows): remove incorrect translatable false tag
rc-swag Aug 15, 2024
9c9d10d
refactor(android): Split setLongpressDelay and applyLongpressDelay
darcywong00 Aug 15, 2024
36b42c4
Merge branch 'refactor/web/12110_keyboard' into refactor/web/drop-int…
jahorton Aug 15, 2024
686cfe0
fix(android): Advance cursor on newline
darcywong00 Aug 15, 2024
c434054
fix(web): patch up newly-merged-in automated test
jahorton Aug 15, 2024
170ac4b
refactor(web): rename `package-cache` → `keyboard-storage`
ermshiperete Aug 8, 2024
b9aa9cc
refactor(web): move `predictive-text` → `worker-main`
ermshiperete Aug 9, 2024
43153ad
Merge pull request #12135 from keymanapp/refactor/web/12132_keyboard-…
ermshiperete Aug 15, 2024
55ed18b
auto: increment master version to 18.0.91
keyman-server Aug 15, 2024
3d6fc99
Merge pull request #12195 from keymanapp/auto/version-master-18.0.91
keyman-server Aug 15, 2024
c3e3cba
fix(web): fix malformed reversion display strings
jahorton Aug 16, 2024
e52937f
Apply suggestions from code review
ermshiperete Aug 16, 2024
50d0107
fix(developer): enforce presence of kps Info.Description field in inf…
mcdurdin Aug 16, 2024
34dddf6
Merge pull request #12146 from keymanapp/refactor/web/12134_worker-main
ermshiperete Aug 16, 2024
ba96d26
fix(developer): enforce presence of Version field when FollowKeyboard…
mcdurdin Aug 16, 2024
78857d9
refactor(web): move `lm-message-types` → `predictive-text/types`
ermshiperete Aug 9, 2024
ea62ac2
refactor(web): move `lm-worker` → `worker-thread`
ermshiperete Aug 9, 2024
1cbd061
chore(developer): remove impossible test for missing version
mcdurdin Aug 16, 2024
e136724
Merge pull request #12187 from keymanapp/fix/web/fix-flicks
jahorton Aug 16, 2024
d2662ff
Merge pull request #12149 from keymanapp/refactor/web/12147_types
ermshiperete Aug 16, 2024
5b8a05c
Merge pull request #12204 from keymanapp/fix/developer/12202-info-com…
mcdurdin Aug 16, 2024
2a21231
Merge pull request #12205 from keymanapp/fix/developer/12193-enforce-…
mcdurdin Aug 16, 2024
1550db1
auto: increment master version to 18.0.92
keyman-server Aug 16, 2024
8376671
Merge pull request #12212 from keymanapp/auto/version-master-18.0.92
keyman-server Aug 16, 2024
d835194
Merge branch 'master' into feat/android/kmea-set-longpress-delay
darcywong00 Aug 19, 2024
8cc506e
fix(android): Address review comments
darcywong00 Aug 19, 2024
40d5cb9
Merge pull request #12118 from keymanapp/dependabot/npm_and_yarn/75lb…
mcdurdin Aug 19, 2024
402b196
Merge pull request #12119 from keymanapp/dependabot/npm_and_yarn/semv…
mcdurdin Aug 19, 2024
cd17ffb
Merge pull request #12162 from keymanapp/fix/windows/crowdin-hide-str…
rc-swag Aug 19, 2024
98d5322
fix(web): disable fat-finger data use when mayCorrect = false
jahorton Aug 19, 2024
79ebbfa
Merge pull request #12125 from keymanapp/feat/android/enter-mode
darcywong00 Aug 19, 2024
ac0f4f6
refactor(web): run npm install
ermshiperete Aug 19, 2024
3c14a6e
Merge pull request #12150 from keymanapp/refactor/web/12148_worker-th…
ermshiperete Aug 19, 2024
fb3bee1
Merge pull request #11858 from keymanapp/feat/developer/11054-improve…
srl295 Aug 19, 2024
7c0f51c
fix(core): set mac build version for meson cli build to 10.13
srl295 Aug 19, 2024
6e7fcba
auto: increment master version to 18.0.93
keyman-server Aug 19, 2024
3d29108
Merge pull request #12224 from keymanapp/auto/version-master-18.0.93
keyman-server Aug 19, 2024
e303cdf
chore(android): Replace paddingLeft/Right with Start/End
darcywong00 Aug 19, 2024
eae19a8
Merge branch 'master' into feat/android/longpress-delay-menu
darcywong00 Aug 19, 2024
6a831ef
Merge branch 'feat/android/longpress-delay-menu' into feat/android/km…
darcywong00 Aug 19, 2024
9d9a091
Merge pull request #12188 from keymanapp/refactor/web/drop-interface-…
jahorton Aug 20, 2024
a5682dc
chore(web): Merge branch 'master' into fix/web/malformed-reversion-di…
jahorton Aug 20, 2024
c9bc396
fix(android): Auto-mirror back and forward arrows for RTL support
darcywong00 Aug 20, 2024
5bf42c5
Merge pull request #12201 from keymanapp/fix/web/malformed-reversion-…
jahorton Aug 20, 2024
5f134fe
feat(android): Add localization for Arabic
darcywong00 Aug 20, 2024
9227569
fix(web): improve tokenization output when wordbreaker breaks spec fo…
jahorton Aug 20, 2024
ec32e21
feat(web): adds extra assertion to 'mitigation' test
jahorton Aug 20, 2024
93b1881
fix(android): Auto-mirror increment and decrement arrows
darcywong00 Aug 20, 2024
ab3722e
fix(core): look for `emcc` instead of `emcc.py` on Linux and Mac
ermshiperete Aug 20, 2024
36b2a98
Update android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/Adj…
darcywong00 Aug 20, 2024
a31aded
Merge pull request #12170 from keymanapp/feat/android/longpress-delay…
darcywong00 Aug 20, 2024
947bf19
Merge pull request #12185 from keymanapp/feat/android/kmea-set-longpr…
darcywong00 Aug 20, 2024
49eb3bf
Merge pull request #12223 from keymanapp/fix/core/11423-fix-mac-build…
srl295 Aug 20, 2024
ac87fc4
auto: increment master version to 18.0.94
keyman-server Aug 20, 2024
bfad108
Merge pull request #12238 from keymanapp/auto/version-master-18.0.94
keyman-server Aug 20, 2024
a98ee70
Merge pull request #12235 from keymanapp/fix/core/emcc_detect
ermshiperete Aug 20, 2024
28ccfe1
Merge pull request #12229 from keymanapp/fix/web/mitigate-malformed-w…
jahorton Aug 21, 2024
84ede94
Merge pull request #12225 from keymanapp/chore/android/padding-rtl
darcywong00 Aug 21, 2024
f6c2187
Merge pull request #12220 from keymanapp/fix/web/disabling-fatfinger-…
jahorton Aug 21, 2024
25b21bc
Merge pull request #12227 from keymanapp/fix/android/mirror-arrows
darcywong00 Aug 21, 2024
8be539d
Merge pull request #12228 from keymanapp/chore/android/crowdin-ar
darcywong00 Aug 21, 2024
1d42c6e
Merge pull request #12230 from keymanapp/fix/android/texti-size-arrows
darcywong00 Aug 21, 2024
a0ebe13
chore(developer): enable build for emscripten 3.1.60+
mcdurdin Aug 21, 2024
b0bd95d
chore(common): allow build agents to automatically select emsdk version
mcdurdin Aug 21, 2024
98409dc
auto: increment master version to 18.0.95
keyman-server Aug 21, 2024
6b06ef5
Merge pull request #12249 from keymanapp/auto/version-master-18.0.95
keyman-server Aug 21, 2024
62babbb
Merge pull request #12243 from keymanapp/chore/developer/emscripten-3…
mcdurdin Aug 22, 2024
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
43 changes: 43 additions & 0 deletions HISTORY.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,48 @@
# Keyman Version History

## 18.0.94 alpha 2024-08-21

* fix(core): look for `emcc` instead of `emcc.py` (#12235)
* fix(web): improve tokenization output when wordbreaker breaks spec for span properties in output (#12229)
* chore(android): Use RTL-aware alignment and padding for layouts (#12225)
* fix(web): disable fat-finger data use when mayCorrect = false (#12220)
* fix(android): Auto-mirror back and forward arrows for RTL support (#12227)
* feat(android): Add localization for Arabic (#12228)
* fix(android): Auto-mirror increment and decrement arrows for RTL support (#12230)

## 18.0.93 alpha 2024-08-20

* (#12188)
* fix(web): fix malformed reversion display strings (#12201)
* feat(android): Add menu to specify long-press delay (#12170)
* feat(android): Pass longpress delay to KeymanWeb (#12185)
* (#12223)

## 18.0.92 alpha 2024-08-19

* chore(deps-dev): bump @75lb/deep-merge from 1.1.1 to 1.1.2 (#12118)
* chore(deps): bump semver from 7.5.4 to 7.6.0 (#12119)
* fix(windows): "Keyman" is not localized in UI strings (#12162)
* feat(android): Enhance how ENTER key is handled in apps (#12125)
* refactor(web): move `lm-worker` → `worker-thread` (#12150)
* fix(developer): remove redundant check in LdmlKeyboardCompiler.validate() (#11858)

## 18.0.91 alpha 2024-08-16

* refactor(web): move `predictive-text` → `worker-main` (#12146)
* fix(web): restore flick functionality (#12187)
* refactor(web): move `lm-message-types` → `predictive-text/types` (#12149)
* fix(developer): enforce presence of kps Info.Description field in info compilers (#12204)
* fix(developer): enforce presence of Version field when FollowKeyboardVersion is not set, in package compiler (#12205)

## 18.0.90 alpha 2024-08-15

* refactor(web): move parts of `keyboard-processor` → `js-processor` (#12111)
* fix(web): allow `lm-worker` to build on Linux (#12181)
* refactor(web): move remaining parts of `keyboard-processor` → `keyboard` (#12131)
* docs: update .kmx documentation around bitmaps, modifier state (#12183)
* refactor(web): rename `package-cache` → `keyboard-storage` (#12135)

## 18.0.89 alpha 2024-08-14

* feat(web): test skipped prediction round handling (#12169)
Expand Down
2 changes: 1 addition & 1 deletion VERSION.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
18.0.90
18.0.95
5 changes: 5 additions & 0 deletions android/KMAPro/kMAPro/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -297,6 +297,11 @@
android:configChanges="orientation"
android:label="@string/app_name"
android:theme="@style/AppTheme.Base" />
<activity
android:name=".AdjustLongpressDelayActivity"
android:configChanges="orientation"
android:label="@string/app_name"
android:theme="@style/AppTheme.Base" />

<!-- Put other WebViewActivities in a separate process so the Keyboard WebView doesn't lag.
Ref https://stackoverflow.com/questions/40650643/timed-out-waiting-on-iinputcontextcallback-with-custom-keyboard-on-android -->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

package com.keyman.android;

import com.tavultesoft.kmapro.AdjustLongpressDelayActivity;
import com.tavultesoft.kmapro.BuildConfig;
import com.tavultesoft.kmapro.DefaultLanguageResource;
import com.tavultesoft.kmapro.KeymanSettingsActivity;
Expand Down Expand Up @@ -175,6 +176,9 @@ public void onStartInput(EditorInfo attribute, boolean restarting) {
}
}

// Determine special handling for ENTER key
KMManager.setEnterMode(attribute.imeOptions, inputType);

InputConnection ic = getCurrentInputConnection();
if (ic != null) {
ExtractedText icText = ic.getExtractedText(new ExtractedTextRequest(), 0);
Expand Down Expand Up @@ -244,6 +248,8 @@ public void onKeyboardLoaded(KeyboardType keyboardType) {
if (exText != null)
exText = null;
}
// Initialize keyboard options
KMManager.sendOptionsToKeyboard();
}

@Override
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,149 @@
/*
* Keyman is copyright (C) SIL International. MIT License.
*
* (Optional description of this file)
*/
package com.tavultesoft.kmapro;

import android.content.Context;
import android.content.SharedPreferences;
import android.graphics.drawable.ColorDrawable;
import android.os.Bundle;
import android.view.View;
import android.widget.SeekBar;
import android.widget.TextView;

import androidx.appcompat.app.ActionBar;
import androidx.appcompat.widget.Toolbar;
import androidx.core.content.ContextCompat;

import com.keyman.engine.BaseActivity;
import com.keyman.engine.KMManager;

/**
* Settings menu for adjusting the longpress delay time. The value for the current longpress delay time
* is saved in shared preferences as an integer (milliseconds).
*/
public class AdjustLongpressDelayActivity extends BaseActivity {
private static final String TAG = "AdjustLongpressDelay";
public static final String adjustLongpressDelayKey = "AdjustLongpressDelay";

// Keeps track of the adjusted longpress delay time for saving.
// Internally use milliseconds, but GUI displays seconds
private static int currentDelayTimeMS = KMManager.KMDefault_LongpressDelay; // ms
private static int minLongpressTime = 300; // ms
private static int maxLongpressTime = 1500; // ms
private static int delayTimeIncrement = 200; // ms

/**
* Convert currentDelayTimeMS to progress
* @return int
*/
private int delayTimeToProgress() {
return (currentDelayTimeMS / delayTimeIncrement) - 1;
}

/**
* Convert progress to currentDelayTimeMS
* @param progress
* @return int (milliseconds)
*/
private int progressToDelayTime(int progress) {
return (progress + 1) * delayTimeIncrement + 100;
}

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

final Context context = this;

setContentView(R.layout.activity_adjust_longpress_delay);
Toolbar toolbar = (Toolbar) findViewById(R.id.titlebar);
setSupportActionBar(toolbar);
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
actionBar.setTitle(null);
actionBar.setDisplayUseLogoEnabled(false);
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setDisplayShowHomeEnabled(true);
actionBar.setDisplayShowTitleEnabled(false);
actionBar.setDisplayShowCustomEnabled(true);
actionBar.setBackgroundDrawable(new ColorDrawable(ContextCompat.getColor(this, R.color.keyman_blue)));
}

TextView adjustLongpressDelayActivityTitle = (TextView) findViewById(R.id.bar_title);

String titleStr = getString(R.string.adjust_longpress_delay);
adjustLongpressDelayActivityTitle.setTextColor(ContextCompat.getColor(this, R.color.ms_white));
adjustLongpressDelayActivityTitle.setText(titleStr);

currentDelayTimeMS = KMManager.getLongpressDelay();

TextView adjustLongpressDelayText = (TextView) findViewById(R.id.delayTimeText);
String longpressDelayTextSeconds = String.format(getString(R.string.longpress_delay_time), (float)(currentDelayTimeMS/1000.0));
adjustLongpressDelayText.setTextAlignment(View.TEXT_ALIGNMENT_CENTER);
adjustLongpressDelayText.setText(longpressDelayTextSeconds);

final SeekBar seekBar = (SeekBar) findViewById(R.id.seekBar);
seekBar.setProgress(delayTimeToProgress());
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {

@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// Do nothing
}

@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// Do nothing
}

@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
// Update the text field.
// The keyboard options will be saved and sent to KeymanWeb when exiting the menu
currentDelayTimeMS = progressToDelayTime(progress);
String longpressDelayTextSeconds = String.format(getString(R.string.longpress_delay_time), (float)(currentDelayTimeMS/1000.0));
adjustLongpressDelayText.setText(longpressDelayTextSeconds);
}
});

findViewById(R.id.delayTimeDownButton).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (currentDelayTimeMS > minLongpressTime) {
currentDelayTimeMS -= delayTimeIncrement;
seekBar.setProgress(delayTimeToProgress());
}
}
});

findViewById(R.id.delayTimeUpButton).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (currentDelayTimeMS < maxLongpressTime) {
currentDelayTimeMS += delayTimeIncrement;
seekBar.setProgress(delayTimeToProgress());
}
}
});
}

@Override
public void onBackPressed() {
// Store the longpress delay as a reference
// and then update KeymanWeb with the longpress delay
KMManager.setLongpressDelay(currentDelayTimeMS);
KMManager.sendOptionsToKeyboard();

super.onBackPressed();
}

@Override
public boolean onSupportNavigateUp() {
onBackPressed();
return true;
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ public void onCreate(Bundle savedInstanceState) {
hashMap = new HashMap<>();
final String customHelpLink = kbd.getHelpLink();
// Check if app declared FileProvider
icon = String.valueOf(R.drawable.ic_arrow_forward);
icon = String.valueOf(R.drawable.ic_action_forward);
// Don't show help link arrow if File Provider unavailable, or custom help doesn't exist
if ( (customHelpLink != null && !FileProviderUtils.exists(context)) ||
(customHelpLink == null && !packageID.equals(KMManager.KMDefault_UndefinedPackageID)) ) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ public class KeymanSettingsFragment extends PreferenceFragmentCompat {
private static Context context;

private Preference languagesPreference, installKeyboardOrDictionary, displayLanguagePreference,
adjustKeyboardHeight;
adjustKeyboardHeight, adjustLongpressDelay;
private ListPreference spacebarTextPreference;
private CheckBoxPreference setSystemKeyboardPreference;
private CheckBoxPreference setDefaultKeyboardPreference;
Expand Down Expand Up @@ -99,13 +99,21 @@ public boolean onPreferenceClick(Preference preference) {
});

setDefaultKeyboardPreference.setOnPreferenceChangeListener(checkBlocker);

adjustKeyboardHeight = new Preference(context);
adjustKeyboardHeight.setKey(AdjustKeyboardHeightActivity.adjustKeyboardHeightKey);
adjustKeyboardHeight.setTitle(getString(R.string.adjust_keyboard_height));
adjustKeyboardHeight.setWidgetLayoutResource(R.layout.preference_height_icon_layout);
Intent adjustKeyboardHeightIntent = new Intent(context, AdjustKeyboardHeightActivity.class);
adjustKeyboardHeight.setIntent(adjustKeyboardHeightIntent);

adjustLongpressDelay = new Preference(context);
adjustLongpressDelay.setKey(AdjustLongpressDelayActivity.adjustLongpressDelayKey);
adjustLongpressDelay.setTitle(getString(R.string.adjust_longpress_delay));
adjustLongpressDelay.setWidgetLayoutResource(R.layout.preference_duration_icon_layout);
Intent adjustLongpressDelayIntent = new Intent(context, AdjustLongpressDelayActivity.class);
adjustLongpressDelay.setIntent(adjustLongpressDelayIntent);

/* Spacebar Caption Preference */

spacebarTextPreference = new ListPreference(context);
Expand Down Expand Up @@ -188,15 +196,14 @@ as part of the default onClick() used by SwitchPreference.
sendCrashReportPreference.setSummaryOff(getString(R.string.show_send_crash_report_off));
sendCrashReportPreference.setDefaultValue(true);



screen.addPreference(languagesPreference);
screen.addPreference(installKeyboardOrDictionary);
screen.addPreference(displayLanguagePreference);
screen.addPreference(setSystemKeyboardPreference);
screen.addPreference(setDefaultKeyboardPreference);

screen.addPreference(adjustKeyboardHeight);
screen.addPreference(adjustLongpressDelay);
screen.addPreference(spacebarTextPreference);

screen.addPreference(hapticFeedbackPreference);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,7 @@ public void onCreate(Bundle savedInstanceState) {
updateActiveLexicalModel();

ImageView imageView = (ImageView) layout.findViewById(R.id.image1);
imageView.setImageResource(R.drawable.ic_arrow_forward);
imageView.setImageResource(R.drawable.ic_action_forward);
layout.setEnabled(true);
layout.setOnClickListener(new View.OnClickListener() {
@Override
Expand All @@ -198,7 +198,7 @@ public void onClick(View v) {
* textView = (TextView) layout.findViewById(R.id.text1);
* textView.setText(getString(R.string.manage_dictionary));
* imageView = (ImageView) layout.findViewById(R.id.image1);
* imageView.setImageResource(R.drawable.ic_arrow_forward);
* imageView.setImageResource(R.drawable.ic_action_forward);
*/

listView.setAdapter(adapter);
Expand Down Expand Up @@ -346,7 +346,7 @@ public View getView(int position, View convertView, ViewGroup parent) {
}

holder.text.setText(kbd.getResourceName());
holder.img.setImageResource(R.drawable.ic_arrow_forward);
holder.img.setImageResource(R.drawable.ic_action_forward);

return convertView;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -203,7 +203,7 @@ public View getView(int position, View convertView, ViewGroup parent) {
}

holder.textLang.setText(data.name);
holder.img.setImageResource(R.drawable.ic_arrow_forward);
holder.img.setImageResource(R.drawable.ic_action_forward);

holder.textCount.setText(getContext().getResources().getQuantityString(R.plurals.keyboard_count, data.keyboards.size(), data.keyboards.size()));

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -472,7 +472,8 @@ public boolean onKeyUp(int keycode, KeyEvent e) {

@Override
public void onKeyboardLoaded(KeyboardType keyboardType) {
// Do nothing
// Initialize keyboard options
KMManager.sendOptionsToKeyboard();
}

@Override
Expand Down Expand Up @@ -646,7 +647,7 @@ private void showTextSizeDialog() {
final View textSizeController = inflater.inflate(R.layout.text_size_controller, null);
final AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(MainActivity.this);
dialogBuilder.setIcon(R.drawable.ic_light_action_textsize);
dialogBuilder.setTitle(String.format(getString(R.string.text_size), textSize));
dialogBuilder.setTitle(getTextSizeString());
dialogBuilder.setView(textSizeController);
dialogBuilder.setPositiveButton(getString(R.string.label_ok), new DialogInterface.OnClickListener() {
@Override
Expand Down Expand Up @@ -677,7 +678,7 @@ public void onStartTrackingTouch(SeekBar seekBar) {
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
textSize = progress + minTextSize;
textView.setTextSize((float) textSize);
dialog.setTitle(String.format(getString(R.string.text_size), textSize));
dialog.setTitle(getTextSizeString());
}
});

Expand All @@ -702,6 +703,16 @@ public void onClick(View v) {
});
}

/**
* Combine a localized string for "Text Size" plus Arabic numerals
* @return String
*/
private String getTextSizeString() {
// Instead of formatting the number, will truncate formatting and concat the actual textSize
String label = getString(R.string.text_size).replace("%1$d", "");
return label + KMString.format(" %d", textSize);
}

private void showClearTextDialog() {
AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(MainActivity.this);
dialogBuilder.setIcon(R.drawable.ic_light_action_trash);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ public void onCreate(Bundle savedInstanceState) {
HashMap<String, String> hashMap = new HashMap<>();
hashMap.put(titleKey, keyboardName);
hashMap.put(subtitleKey, pkgID);
String icon = String.valueOf(R.drawable.ic_arrow_forward);
String icon = String.valueOf(R.drawable.ic_action_forward);
hashMap.put(iconKey, icon);
list.add(hashMap);
}
Expand Down

This file was deleted.

Loading
Loading