diff --git a/HISTORY.md b/HISTORY.md
index 2e40d22546..2191bb7a5f 100644
--- a/HISTORY.md
+++ b/HISTORY.md
@@ -1,5 +1,10 @@
# Keyman Version History
+## 15.0.104 alpha 2021-08-26
+
+* chore(linux): Update changelog files (#5637)
+* fix(web): Check keyboard before marking layout calibrated (#5630)
+
## 15.0.103 alpha 2021-08-25
* chore(linux): Improve debian package script (#5626)
diff --git a/VERSION.md b/VERSION.md
index b2bf812a1a..013d21645a 100644
--- a/VERSION.md
+++ b/VERSION.md
@@ -1 +1 @@
-15.0.104
\ No newline at end of file
+15.0.105
\ No newline at end of file
diff --git a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/InfoActivity.java b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/InfoActivity.java
index 18b2b118a8..25af3f9f77 100644
--- a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/InfoActivity.java
+++ b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/InfoActivity.java
@@ -14,6 +14,7 @@ import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
+import android.widget.ImageButton;
import android.widget.TextView;
import android.annotation.SuppressLint;
@@ -32,6 +33,33 @@ public class InfoActivity extends BaseActivity {
setContentView(R.layout.activity_info);
+ // Navigation buttons
+ final ImageButton backButton = (ImageButton) findViewById(R.id.back_button);
+ backButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ onBackPressed();
+ }
+ });
+
+ final ImageButton forwardButton = (ImageButton) findViewById(R.id.forward_button);
+ forwardButton.setEnabled(false);
+ forwardButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ if (webView != null && webView.canGoForward()) {
+ webView.goForward();
+ }
+ }
+ });
+
+ final ImageButton closeButton = (ImageButton) findViewById(R.id.close_button);
+ closeButton.setOnClickListener(new View.OnClickListener() {
+ public void onClick(View v) {
+ finish();
+ }
+ });
+
TextView version = findViewById(R.id.infoVersion);
// Parse app version string to create a version title (Not using KMManager.getVersion() because that's for KMEA)
@@ -72,6 +100,9 @@ public class InfoActivity extends BaseActivity {
@Override
public void onPageFinished(WebView view, String url) {
+ if (webView != null) {
+ forwardButton.setEnabled(webView.canGoForward());
+ }
}
});
@@ -81,7 +112,12 @@ public class InfoActivity extends BaseActivity {
@Override
public void onBackPressed() {
- finish();
- overridePendingTransition(0, android.R.anim.fade_out);
+ if (webView != null && webView.canGoBack()) {
+ webView.goBack();
+ } else {
+ super.onBackPressed();
+ finish();
+ overridePendingTransition(0, android.R.anim.fade_out);
+ }
}
}
\ No newline at end of file
diff --git a/android/KMAPro/kMAPro/src/main/res/color/image_button_color.xml b/android/KMAPro/kMAPro/src/main/res/color/image_button_color.xml
new file mode 100644
index 0000000000..b0ff1e7b9d
--- /dev/null
+++ b/android/KMAPro/kMAPro/src/main/res/color/image_button_color.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/android/KMAPro/kMAPro/src/main/res/layout/activity_info.xml b/android/KMAPro/kMAPro/src/main/res/layout/activity_info.xml
index 9c71720ce9..59de518535 100644
--- a/android/KMAPro/kMAPro/src/main/res/layout/activity_info.xml
+++ b/android/KMAPro/kMAPro/src/main/res/layout/activity_info.xml
@@ -1,16 +1,56 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
Close Keyman
+
+ Forward
+
Next Input Method
diff --git a/common/core/web/input-processor/package-lock.json b/common/core/web/input-processor/package-lock.json
index 9d68514579..a684a39030 100644
--- a/common/core/web/input-processor/package-lock.json
+++ b/common/core/web/input-processor/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/input-processor",
- "version": "15.0.104",
+ "version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {
diff --git a/common/core/web/input-processor/package.json b/common/core/web/input-processor/package.json
index ccb340600f..774cdbab7f 100644
--- a/common/core/web/input-processor/package.json
+++ b/common/core/web/input-processor/package.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/input-processor",
- "version": "15.0.104",
+ "version": "15.0.105",
"description": "The core text and prediction processing engine for KeymanWeb",
"repository": {
"type": "git",
@@ -18,8 +18,8 @@
},
"homepage": "https://github.com/keymanapp/keyman#readme",
"devDependencies": {
- "@keymanapp/lexical-model-compiler": "^15.0.104",
- "@keymanapp/resources-gosh": "^15.0.104",
+ "@keymanapp/lexical-model-compiler": "^15.0.105",
+ "@keymanapp/resources-gosh": "^15.0.105",
"@types/node": "^11.9.4",
"chai": "^4.3.4",
"mocha": "^8.4.0",
@@ -34,11 +34,11 @@
"mocha": "mocha"
},
"dependencies": {
- "@keymanapp/keyboard-processor": "^15.0.104",
- "@keymanapp/lexical-model-layer": "^15.0.104",
- "@keymanapp/models-types": "^15.0.104",
- "@keymanapp/web-environment": "^15.0.104",
- "@keymanapp/web-utils": "^15.0.104",
+ "@keymanapp/keyboard-processor": "^15.0.105",
+ "@keymanapp/lexical-model-layer": "^15.0.105",
+ "@keymanapp/models-types": "^15.0.105",
+ "@keymanapp/web-environment": "^15.0.105",
+ "@keymanapp/web-utils": "^15.0.105",
"eventemitter3": "^4.0.0"
}
}
diff --git a/common/core/web/keyboard-processor/package-lock.json b/common/core/web/keyboard-processor/package-lock.json
index cce49e4f71..a260815133 100644
--- a/common/core/web/keyboard-processor/package-lock.json
+++ b/common/core/web/keyboard-processor/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/keyboard-processor",
- "version": "15.0.104",
+ "version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {
diff --git a/common/core/web/keyboard-processor/package.json b/common/core/web/keyboard-processor/package.json
index 0302b3899b..432e254b00 100644
--- a/common/core/web/keyboard-processor/package.json
+++ b/common/core/web/keyboard-processor/package.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/keyboard-processor",
- "version": "15.0.104",
+ "version": "15.0.105",
"description": "Core module for Keyman keyboard support in KeymanWeb.",
"repository": {
"type": "git",
@@ -18,7 +18,7 @@
},
"homepage": "https://github.com/keymanapp/keyman#readme",
"devDependencies": {
- "@keymanapp/resources-gosh": "^15.0.104",
+ "@keymanapp/resources-gosh": "^15.0.105",
"chai": "^4.3.4",
"mocha": "^8.4.0",
"mocha-teamcity-reporter": "^4.0.0",
@@ -32,9 +32,9 @@
"mocha": "mocha"
},
"dependencies": {
- "@keymanapp/models-types": "^15.0.104",
- "@keymanapp/web-environment": "^15.0.104",
- "@keymanapp/web-utils": "^15.0.104",
+ "@keymanapp/models-types": "^15.0.105",
+ "@keymanapp/web-environment": "^15.0.105",
+ "@keymanapp/web-utils": "^15.0.105",
"@types/node": "^11.9.4"
}
}
diff --git a/common/core/web/tools/recorder/package-lock.json b/common/core/web/tools/recorder/package-lock.json
index 93b6b7d231..528a7c9eb1 100644
--- a/common/core/web/tools/recorder/package-lock.json
+++ b/common/core/web/tools/recorder/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/recorder-core",
- "version": "15.0.104",
+ "version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {
diff --git a/common/core/web/tools/recorder/package.json b/common/core/web/tools/recorder/package.json
index d1649dcf9e..50b53860ef 100644
--- a/common/core/web/tools/recorder/package.json
+++ b/common/core/web/tools/recorder/package.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/recorder-core",
- "version": "15.0.104",
+ "version": "15.0.105",
"description": "Core classes used to develop KeymanWeb test cases based on keystrokes",
"main": "index.js",
"scripts": {
@@ -17,10 +17,10 @@
},
"homepage": "https://github.com/keymanapp/keyman#readme",
"dependencies": {
- "@keymanapp/keyboard-processor": "^15.0.104",
- "@keymanapp/models-types": "^15.0.104",
- "@keymanapp/web-environment": "^15.0.104",
- "@keymanapp/web-utils": "^15.0.104",
+ "@keymanapp/keyboard-processor": "^15.0.105",
+ "@keymanapp/models-types": "^15.0.105",
+ "@keymanapp/web-environment": "^15.0.105",
+ "@keymanapp/web-utils": "^15.0.105",
"@types/node": "^11.9.4"
},
"devDependencies": {
diff --git a/common/core/web/tools/sentry-manager/package-lock.json b/common/core/web/tools/sentry-manager/package-lock.json
index 973f958777..25c0edd944 100644
--- a/common/core/web/tools/sentry-manager/package-lock.json
+++ b/common/core/web/tools/sentry-manager/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/web-sentry-manager",
- "version": "15.0.104",
+ "version": "15.0.105",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
diff --git a/common/core/web/tools/sentry-manager/package.json b/common/core/web/tools/sentry-manager/package.json
index 32112b9a65..01b9edcb7a 100644
--- a/common/core/web/tools/sentry-manager/package.json
+++ b/common/core/web/tools/sentry-manager/package.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/web-sentry-manager",
- "version": "15.0.104",
+ "version": "15.0.105",
"description": "Common setup for KeymanWeb's Sentry-based error reporting",
"main": "dist/index.js",
"scripts": {
@@ -20,7 +20,7 @@
"typescript": "^3.8.3"
},
"dependencies": {
- "@keymanapp/web-environment": "^15.0.104",
+ "@keymanapp/web-environment": "^15.0.105",
"@sentry/browser": "^5.27.4"
}
}
diff --git a/common/core/web/utils/package-lock.json b/common/core/web/utils/package-lock.json
index 2d9a3e429a..6d5f27aa32 100644
--- a/common/core/web/utils/package-lock.json
+++ b/common/core/web/utils/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/web-utils",
- "version": "15.0.104",
+ "version": "15.0.105",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
diff --git a/common/core/web/utils/package.json b/common/core/web/utils/package.json
index c673770afe..d16814ddd7 100644
--- a/common/core/web/utils/package.json
+++ b/common/core/web/utils/package.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/web-utils",
- "version": "15.0.104",
+ "version": "15.0.105",
"description": "Common utility functions used throughout other Keyman packages",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -20,8 +20,8 @@
},
"homepage": "https://github.com/keymanapp/keyman#readme",
"devDependencies": {
- "@keymanapp/resources-gosh": "^15.0.104",
- "@keymanapp/web-environment": "^15.0.104",
+ "@keymanapp/resources-gosh": "^15.0.105",
+ "@keymanapp/web-environment": "^15.0.105",
"@types/node": "^14.0.5",
"typescript": "^3.8.3"
}
diff --git a/common/models/templates/package-lock.json b/common/models/templates/package-lock.json
index 6e10878262..ccfb8db163 100644
--- a/common/models/templates/package-lock.json
+++ b/common/models/templates/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/models-templates",
- "version": "15.0.104",
+ "version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {
diff --git a/common/models/templates/package.json b/common/models/templates/package.json
index 7e70144ff6..61d0419e06 100644
--- a/common/models/templates/package.json
+++ b/common/models/templates/package.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/models-templates",
- "version": "15.0.104",
+ "version": "15.0.105",
"description": "Backing model implementations (templates) for Keyman's modelling layer",
"keywords": [
"lm",
@@ -42,8 +42,8 @@
"url": "https://github.com/keymanapp/keyman/issues"
},
"devDependencies": {
- "@keymanapp/models-types": "^15.0.104",
- "@keymanapp/web-utils": "^15.0.104",
+ "@keymanapp/models-types": "^15.0.105",
+ "@keymanapp/web-utils": "^15.0.105",
"@types/chai": "^4.2.11",
"@types/mocha": "^7.0.2",
"@types/node": "^14.0.4",
@@ -52,6 +52,6 @@
"typescript": "^3.8.3"
},
"dependencies": {
- "@keymanapp/models-wordbreakers": "^15.0.104"
+ "@keymanapp/models-wordbreakers": "^15.0.105"
}
}
diff --git a/common/models/types/package-lock.json b/common/models/types/package-lock.json
index 76e56cfa51..2e707e5a4a 100644
--- a/common/models/types/package-lock.json
+++ b/common/models/types/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/models-types",
- "version": "15.0.104",
+ "version": "15.0.105",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
diff --git a/common/models/types/package.json b/common/models/types/package.json
index 46df6ba0ff..3722c9e857 100644
--- a/common/models/types/package.json
+++ b/common/models/types/package.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/models-types",
- "version": "15.0.104",
+ "version": "15.0.105",
"description": "Type definitions in used in the modeling (lexical model/predictive text) component of Keyman.",
"types": "./index.d.ts",
"scripts": {
diff --git a/common/models/wordbreakers/package-lock.json b/common/models/wordbreakers/package-lock.json
index 01ba61ab8a..2efdfdb0c2 100644
--- a/common/models/wordbreakers/package-lock.json
+++ b/common/models/wordbreakers/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/models-wordbreakers",
- "version": "15.0.104",
+ "version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {
diff --git a/common/models/wordbreakers/package.json b/common/models/wordbreakers/package.json
index e1cd01be2c..ee78709efa 100644
--- a/common/models/wordbreakers/package.json
+++ b/common/models/wordbreakers/package.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/models-wordbreakers",
- "version": "15.0.104",
+ "version": "15.0.105",
"description": "Word breakers bundled in the modeling layer",
"keywords": [
"lexical model",
@@ -40,7 +40,7 @@
"url": "https://github.com/keymanapp/keyman/issues"
},
"devDependencies": {
- "@keymanapp/models-types": "^15.0.104",
+ "@keymanapp/models-types": "^15.0.105",
"@types/chai": "^4.2.11",
"@types/mocha": "^7.0.2",
"chai": "^4.3.4",
diff --git a/common/predictive-text/package-lock.json b/common/predictive-text/package-lock.json
index 345acc063c..9a256977de 100644
--- a/common/predictive-text/package-lock.json
+++ b/common/predictive-text/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/lexical-model-layer",
- "version": "15.0.104",
+ "version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {
diff --git a/common/predictive-text/package.json b/common/predictive-text/package.json
index d86ca43907..77d68e1fc2 100644
--- a/common/predictive-text/package.json
+++ b/common/predictive-text/package.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/lexical-model-layer",
- "version": "15.0.104",
+ "version": "15.0.105",
"description": "Keyman/Predictive Text integration layer",
"main": "build/index.js",
"scripts": {
@@ -21,8 +21,8 @@
},
"homepage": "https://github.com/keymanapp/keyman#readme",
"devDependencies": {
- "@keymanapp/models-types": "^15.0.104",
- "@keymanapp/resources-gosh": "^15.0.104",
+ "@keymanapp/models-types": "^15.0.105",
+ "@keymanapp/resources-gosh": "^15.0.105",
"@types/node": "^10.17.21",
"chai": "^4.3.4",
"karma": "^6.3.4",
@@ -46,10 +46,10 @@
"typescript": "^3.8.3"
},
"dependencies": {
- "@keymanapp/models-templates": "^15.0.104",
- "@keymanapp/models-wordbreakers": "^15.0.104",
- "@keymanapp/web-environment": "^15.0.104",
- "@keymanapp/web-utils": "^15.0.104",
+ "@keymanapp/models-templates": "^15.0.105",
+ "@keymanapp/models-wordbreakers": "^15.0.105",
+ "@keymanapp/web-environment": "^15.0.105",
+ "@keymanapp/web-utils": "^15.0.105",
"es6-shim": "^0.35.5",
"string.prototype.codepointat": "^0.2.1",
"string.prototype.startswith": "^0.2.0"
diff --git a/developer/js/package-lock.json b/developer/js/package-lock.json
index 82627fc516..2714ec2e49 100644
--- a/developer/js/package-lock.json
+++ b/developer/js/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/lexical-model-compiler",
- "version": "15.0.104",
+ "version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {
diff --git a/developer/js/package.json b/developer/js/package.json
index 0b42bf0d55..3221d63971 100644
--- a/developer/js/package.json
+++ b/developer/js/package.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/lexical-model-compiler",
- "version": "15.0.104",
+ "version": "15.0.105",
"description": "Keyman Developer lexical model compiler",
"keywords": [
"keyboard",
@@ -37,14 +37,14 @@
"node": ">=12.0.0"
},
"dependencies": {
- "@keymanapp/models-types": "^15.0.104",
+ "@keymanapp/models-types": "^15.0.105",
"commander": "^3.0.0",
"typescript": "^3.8.3",
"xml2js": "^0.4.19"
},
"devDependencies": {
- "@keymanapp/models-templates": "^15.0.104",
- "@keymanapp/models-wordbreakers": "^15.0.104",
+ "@keymanapp/models-templates": "^15.0.105",
+ "@keymanapp/models-wordbreakers": "^15.0.105",
"@types/chai": "^4.1.7",
"@types/mocha": "^5.2.7",
"@types/node": "^10.14.6",
diff --git a/lerna.json b/lerna.json
index bedb594afa..73c42a26ba 100644
--- a/lerna.json
+++ b/lerna.json
@@ -20,5 +20,5 @@
"ts-node",
"typescript"
],
- "version": "15.0.104"
+ "version": "15.0.105"
}
diff --git a/linux/debian/changelog b/linux/debian/changelog
index aefc4cabad..01dc0c99c6 100644
--- a/linux/debian/changelog
+++ b/linux/debian/changelog
@@ -4,6 +4,13 @@ keyman (15.0.90-1) UNRELEASED; urgency=medium
-- Eberhard Beilharz Mon, 02 Aug 2021 18:13:58 +0200
+keyman-config (14.0.280-1) unstable; urgency=medium
+
+ * New upstream release
+ * Re-release to Debian
+
+ -- Eberhard Beilharz Mon, 23 Aug 2021 17:38:22 +0200
+
keyman-config (14.0.276-2) experimental; urgency=medium
* Team upload
diff --git a/linux/legacy/ibus-kmfl/debian/changelog b/linux/legacy/ibus-kmfl/debian/changelog
index 3215f7792b..64439caafc 100644
--- a/linux/legacy/ibus-kmfl/debian/changelog
+++ b/linux/legacy/ibus-kmfl/debian/changelog
@@ -1,3 +1,10 @@
+ibus-kmfl (14.0.280-1) unstable; urgency=medium
+
+ * New upstream release
+ * Re-release to Debian
+
+ -- Eberhard Beilharz Mon, 23 Aug 2021 17:38:14 +0200
+
ibus-kmfl (14.0.276-1) experimental; urgency=medium
* New upstream release
diff --git a/linux/legacy/kmflcomp/debian/changelog b/linux/legacy/kmflcomp/debian/changelog
index e23e6ddf09..d29fa55c87 100644
--- a/linux/legacy/kmflcomp/debian/changelog
+++ b/linux/legacy/kmflcomp/debian/changelog
@@ -1,3 +1,10 @@
+kmflcomp (14.0.280-1) unstable; urgency=medium
+
+ * New upstream release
+ * Re-release to Debian
+
+ -- Eberhard Beilharz Mon, 23 Aug 2021 17:37:57 +0200
+
kmflcomp (14.0.276-1) experimental; urgency=medium
* New upstream release
diff --git a/linux/legacy/libkmfl/debian/changelog b/linux/legacy/libkmfl/debian/changelog
index 79b5a10698..3e6971bf86 100644
--- a/linux/legacy/libkmfl/debian/changelog
+++ b/linux/legacy/libkmfl/debian/changelog
@@ -1,3 +1,10 @@
+libkmfl (14.0.280-1) unstable; urgency=medium
+
+ * New upstream release
+ * Re-release to Debian
+
+ -- Eberhard Beilharz Mon, 23 Aug 2021 17:38:05 +0200
+
libkmfl (14.0.276-1) experimental; urgency=medium
* New upstream release
diff --git a/resources/gosh/package-lock.json b/resources/gosh/package-lock.json
index 258737c4d5..a499faa788 100644
--- a/resources/gosh/package-lock.json
+++ b/resources/gosh/package-lock.json
@@ -1,5 +1,5 @@
{
"name": "@keymanapp/resources-gosh",
- "version": "15.0.104",
+ "version": "15.0.105",
"lockfileVersion": 1
}
diff --git a/resources/gosh/package.json b/resources/gosh/package.json
index 13bcc85e13..b5314bd546 100644
--- a/resources/gosh/package.json
+++ b/resources/gosh/package.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/resources-gosh",
- "version": "15.0.104",
+ "version": "15.0.105",
"description": "Good Ol' Shell",
"author": "Marc Durdin (https://github.com/mcdurdin)",
"contributors": [
diff --git a/resources/web-environment/package-lock.json b/resources/web-environment/package-lock.json
index 28c0b5c818..22bc465817 100644
--- a/resources/web-environment/package-lock.json
+++ b/resources/web-environment/package-lock.json
@@ -1,5 +1,5 @@
{
"name": "@keymanapp/web-environment",
- "version": "15.0.104",
+ "version": "15.0.105",
"lockfileVersion": 1
}
diff --git a/resources/web-environment/package.json b/resources/web-environment/package.json
index 2b057e4343..e63f3bc4c3 100644
--- a/resources/web-environment/package.json
+++ b/resources/web-environment/package.json
@@ -1,6 +1,6 @@
{
"name": "@keymanapp/web-environment",
- "version": "15.0.104",
+ "version": "15.0.105",
"description": "A compilation utility for passing select environment variables into our TS builds",
"author": "Joshua Horton (https://github.com/jahorton)",
"homepage": "https://github.com/keymanapp/keyman",
@@ -17,6 +17,6 @@
"url": "https://github.com/keymanapp/keyman/issues"
},
"devDependencies": {
- "@keymanapp/resources-gosh": "^15.0.104"
+ "@keymanapp/resources-gosh": "^15.0.105"
}
}
diff --git a/web/package-lock.json b/web/package-lock.json
index ad7c7bc017..57b4a749cb 100644
--- a/web/package-lock.json
+++ b/web/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "keyman",
- "version": "15.0.104",
+ "version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {
diff --git a/web/package.json b/web/package.json
index 033e8e98d1..61c14caf7c 100644
--- a/web/package.json
+++ b/web/package.json
@@ -1,6 +1,6 @@
{
"name": "keyman",
- "version": "15.0.104",
+ "version": "15.0.105",
"description": "Facilitates text input in any language.",
"repository": {
"type": "git",
@@ -18,8 +18,8 @@
},
"homepage": "https://github.com/keymanapp/keyman#readme",
"devDependencies": {
- "@keymanapp/resources-gosh": "^15.0.104",
- "@keymanapp/web-sentry-manager": "^15.0.104",
+ "@keymanapp/resources-gosh": "^15.0.105",
+ "@keymanapp/web-sentry-manager": "^15.0.105",
"@sentry/cli": "^1.52.3",
"chai": "^4.3.4",
"google-closure-compiler-java": "^20200224.0.0",
@@ -52,13 +52,13 @@
"sentry-cli": "sentry-cli"
},
"dependencies": {
- "@keymanapp/input-processor": "^15.0.104",
- "@keymanapp/keyboard-processor": "^15.0.104",
- "@keymanapp/lexical-model-layer": "^15.0.104",
- "@keymanapp/models-types": "^15.0.104",
- "@keymanapp/recorder-core": "^15.0.104",
- "@keymanapp/web-environment": "^15.0.104",
- "@keymanapp/web-utils": "^15.0.104",
+ "@keymanapp/input-processor": "^15.0.105",
+ "@keymanapp/keyboard-processor": "^15.0.105",
+ "@keymanapp/lexical-model-layer": "^15.0.105",
+ "@keymanapp/models-types": "^15.0.105",
+ "@keymanapp/recorder-core": "^15.0.105",
+ "@keymanapp/web-environment": "^15.0.105",
+ "@keymanapp/web-utils": "^15.0.105",
"@types/node": "^11.9.4",
"es6-shim": "^0.35.5",
"eventemitter3": "^4.0.0"
diff --git a/web/source/osk/visualKeyboard.ts b/web/source/osk/visualKeyboard.ts
index 8ca0457b9d..38d58aa7e3 100644
--- a/web/source/osk/visualKeyboard.ts
+++ b/web/source/osk/visualKeyboard.ts
@@ -181,7 +181,9 @@ namespace com.keyman.osk {
// Now that we've properly processed the keyboard's layout, mark it as calibrated.
// TODO: drop the whole 'calibration' thing. The newer layout system supersedes the
// need for it. (Is no longer really used, so the drop ought be clean.)
- keyboard.markLayoutCalibrated(formFactor);
+ if (keyboard) {
+ keyboard.markLayoutCalibrated(formFactor);
+ }
// Append the OSK layer group container element to the containing element
//osk.keyMap = divLayerContainer;
diff --git a/windows/src/developer/TIKE/Makefile b/windows/src/developer/TIKE/Makefile
index cf466bc2f4..8de3a3160c 100644
--- a/windows/src/developer/TIKE/Makefile
+++ b/windows/src/developer/TIKE/Makefile
@@ -4,13 +4,14 @@
!include ..\..\Defines.mak
-build: version.res manifest.res icons dirs xml
+build: version.res manifest.res icons dirs xml pull-core
cd $(ROOT)\src\developer\tike
$(DELPHI_MSBUILD) tike.dproj /p:Platform=Win32
$(SENTRYTOOL_DELPHIPREP) $(WIN32_TARGET_PATH)\tike.exe -dpr tike.dpr
$(TDS2DBG) $(WIN32_TARGET_PATH)\tike.exe
$(COPY) $(WIN32_TARGET_PATH)\tike.exe $(PROGRAM)\developer
$(COPY) kmlmc.cmd $(PROGRAM)\developer
+ $(COPY) $(ROOT)\..\common\core\desktop\build\x86\$(TARGET_PATH)\src\kmnkbp0-0.dll $(PROGRAM)\developer
if exist $(WIN32_TARGET_PATH)\tike.dbg $(COPY) $(WIN32_TARGET_PATH)\tike.dbg $(DEBUGPATH)\developer
xml: pull-keymanweb pull-npm sentry-init.js
@@ -23,6 +24,22 @@ sentry-init.js:
cd $(ROOT)\src\developer\tike\xml\app\lib\sentry
$(MKVER_U) init.js.in init.js
+pull-core:
+ cd $(ROOT)\..\common\core\desktop
+!ifdef GIT_BASH_FOR_KEYMAN
+!ifdef DEBUG
+ $(GIT_BASH_FOR_KEYMAN) build.sh --debug
+!else
+ $(GIT_BASH_FOR_KEYMAN) build.sh
+!endif
+!else
+!ifdef DEBUG
+ start /wait ./build.sh --debug
+!else
+ start /wait ./build.sh
+!endif
+!endif
+
pull-npm:
#
# Grab the version of Monaco and any other node modules
@@ -71,6 +88,7 @@ clean: def-clean
signcode:
$(SIGNCODE) /d "Keyman Developer" $(PROGRAM)\developer\tike.exe
+ $(SIGNCODE) /d "Keyman Core" $(PROGRAM)\developer\kmnkbp0-0.dll
wrap-symbols:
$(SYMSTORE) $(PROGRAM)\developer\tike.exe /t keyman-developer
@@ -78,6 +96,7 @@ wrap-symbols:
install:
$(COPY) $(PROGRAM)\developer\tike.exe "$(INSTALLPATH_KEYMANDEVELOPER)\tike.exe"
+ $(COPY) $(PROGRAM)\developer\kmnkbp0-0.dll "$(INSTALLPATH_KEYMANDEVELOPER)\kmnkbp0-0.dll"
test-manifest:
# test that linked manifest exists and correct
diff --git a/windows/src/developer/inst/kmdev.wxs b/windows/src/developer/inst/kmdev.wxs
index 72993c88ba..3160aa086a 100644
--- a/windows/src/developer/inst/kmdev.wxs
+++ b/windows/src/developer/inst/kmdev.wxs
@@ -199,6 +199,10 @@
+
+
+
+
diff --git a/windows/src/developer/kmanalyze/Makefile b/windows/src/developer/kmanalyze/Makefile
index adda01501d..bb877561e8 100644
--- a/windows/src/developer/kmanalyze/Makefile
+++ b/windows/src/developer/kmanalyze/Makefile
@@ -22,7 +22,7 @@ wrap-symbols:
test-manifest:
@rem
-#install:
-# $(COPY) $(PROGRAM)\developer\kmanalyze.exe "$(INSTALLPATH_KEYMANDEVELOPER)\kmanalyze.exe"
+install:
+ $(COPY) $(PROGRAM)\developer\kmanalyze.exe "$(INSTALLPATH_KEYMANDEVELOPER)\kmanalyze.exe"
!include ..\..\Target.mak
diff --git a/windows/src/test/test_i3633/verify.dpr b/windows/src/test/test_i3633/verify.dpr
index b3707d8461..cafca217bd 100644
--- a/windows/src/test/test_i3633/verify.dpr
+++ b/windows/src/test/test_i3633/verify.dpr
@@ -62,6 +62,13 @@ begin
end;
end;
+ if str[0].ToLower.Contains('kmnkbp0-0') then
+ begin
+ // Keyman Core does not include version information
+ // TODO: this will be resolved in #5672
+ Exit('');
+ end;
+
if str[3] <> 'SIL International' then
begin
Exit('File has wrong company name');