chore(developer): Merge branch 'fix/developer/5648-debugger-include-keyman-core' into feat/developer/debugger-platform-option

This commit is contained in:
Marc Durdin 2021-09-10 10:43:44 +10:00
commit f022a121df
42 changed files with 229 additions and 80 deletions

View file

@ -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)

View file

@ -1 +1 @@
15.0.104
15.0.105

View file

@ -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);
}
}
}

View file

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="false" android:color="@color/neutral_4" />
<item android:color="@color/ms_black" />
</selector>

View file

@ -1,16 +1,56 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@color/ms_white"
tools:context=".InfoActivity" >
<WebView
android:id="@+id/infoWebView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="@dimen/info_label_height"/>
<androidx.appcompat.widget.Toolbar
android:id="@+id/titlebar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:layout_alignParentTop="true"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light">
<!-- Navigation buttons -->
<ImageButton
android:id="@+id/back_button"
style="?android:attr/actionButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="start"
android:contentDescription="@string/label_back"
android:src="@drawable/ic_navigation_back" />
<ImageButton
android:id="@+id/forward_button"
style="?android:attr/actionButtonStyle"
app:tint="@color/image_button_color"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/label_forward"
android:src="@drawable/ic_navigation_forward" />
<ImageButton
android:id="@+id/close_button"
style="?android:attr/actionButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:contentDescription="@string/label_close"
android:src="@drawable/ic_action_close" />
</androidx.appcompat.widget.Toolbar>
<WebView
android:id="@+id/infoWebView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/titlebar"
android:layout_marginBottom="@dimen/info_label_height" />
<!-- Version string on the bottom of the page -->
<TextView

View file

@ -38,6 +38,9 @@
<!-- Context: Button label -->
<string name="label_close_keyman" comment="Close the Keyman application">Close Keyman</string>
<!-- Context: Button label -->
<string name="label_forward" comment="Button to go forward">Forward</string>
<!-- Context: Button label -->
<string name="label_next_input_method" comment="Switch to next input method (replaces label_close_keyman)">Next Input Method</string>

View file

@ -1,6 +1,6 @@
{
"name": "@keymanapp/input-processor",
"version": "15.0.104",
"version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {

View file

@ -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"
}
}

View file

@ -1,6 +1,6 @@
{
"name": "@keymanapp/keyboard-processor",
"version": "15.0.104",
"version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {

View file

@ -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"
}
}

View file

@ -1,6 +1,6 @@
{
"name": "@keymanapp/recorder-core",
"version": "15.0.104",
"version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {

View file

@ -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": {

View file

@ -1,6 +1,6 @@
{
"name": "@keymanapp/web-sentry-manager",
"version": "15.0.104",
"version": "15.0.105",
"lockfileVersion": 1,
"requires": true,
"dependencies": {

View file

@ -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"
}
}

View file

@ -1,6 +1,6 @@
{
"name": "@keymanapp/web-utils",
"version": "15.0.104",
"version": "15.0.105",
"lockfileVersion": 1,
"requires": true,
"dependencies": {

View file

@ -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"
}

View file

@ -1,6 +1,6 @@
{
"name": "@keymanapp/models-templates",
"version": "15.0.104",
"version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {

View file

@ -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"
}
}

View file

@ -1,6 +1,6 @@
{
"name": "@keymanapp/models-types",
"version": "15.0.104",
"version": "15.0.105",
"lockfileVersion": 1,
"requires": true,
"dependencies": {

View file

@ -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": {

View file

@ -1,6 +1,6 @@
{
"name": "@keymanapp/models-wordbreakers",
"version": "15.0.104",
"version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {

View file

@ -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",

View file

@ -1,6 +1,6 @@
{
"name": "@keymanapp/lexical-model-layer",
"version": "15.0.104",
"version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {

View file

@ -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"

View file

@ -1,6 +1,6 @@
{
"name": "@keymanapp/lexical-model-compiler",
"version": "15.0.104",
"version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {

View file

@ -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",

View file

@ -20,5 +20,5 @@
"ts-node",
"typescript"
],
"version": "15.0.104"
"version": "15.0.105"
}

View file

@ -4,6 +4,13 @@ keyman (15.0.90-1) UNRELEASED; urgency=medium
-- Eberhard Beilharz <eb1@sil.org> 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 <eb1@sil.org> Mon, 23 Aug 2021 17:38:22 +0200
keyman-config (14.0.276-2) experimental; urgency=medium
* Team upload

View file

@ -1,3 +1,10 @@
ibus-kmfl (14.0.280-1) unstable; urgency=medium
* New upstream release
* Re-release to Debian
-- Eberhard Beilharz <eb1@sil.org> Mon, 23 Aug 2021 17:38:14 +0200
ibus-kmfl (14.0.276-1) experimental; urgency=medium
* New upstream release

View file

@ -1,3 +1,10 @@
kmflcomp (14.0.280-1) unstable; urgency=medium
* New upstream release
* Re-release to Debian
-- Eberhard Beilharz <eb1@sil.org> Mon, 23 Aug 2021 17:37:57 +0200
kmflcomp (14.0.276-1) experimental; urgency=medium
* New upstream release

View file

@ -1,3 +1,10 @@
libkmfl (14.0.280-1) unstable; urgency=medium
* New upstream release
* Re-release to Debian
-- Eberhard Beilharz <eb1@sil.org> Mon, 23 Aug 2021 17:38:05 +0200
libkmfl (14.0.276-1) experimental; urgency=medium
* New upstream release

View file

@ -1,5 +1,5 @@
{
"name": "@keymanapp/resources-gosh",
"version": "15.0.104",
"version": "15.0.105",
"lockfileVersion": 1
}

View file

@ -1,6 +1,6 @@
{
"name": "@keymanapp/resources-gosh",
"version": "15.0.104",
"version": "15.0.105",
"description": "Good Ol' Shell",
"author": "Marc Durdin <marc@keyman.com> (https://github.com/mcdurdin)",
"contributors": [

View file

@ -1,5 +1,5 @@
{
"name": "@keymanapp/web-environment",
"version": "15.0.104",
"version": "15.0.105",
"lockfileVersion": 1
}

View file

@ -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 <joshua_horton@sil.org> (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"
}
}

2
web/package-lock.json generated
View file

@ -1,6 +1,6 @@
{
"name": "keyman",
"version": "15.0.104",
"version": "15.0.105",
"lockfileVersion": 2,
"requires": true,
"packages": {

View file

@ -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"

View file

@ -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;

View file

@ -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

View file

@ -199,6 +199,10 @@
<File Name="kmcomp.x64.exe" KeyPath="yes" />
</Component>
<Component>
<File Name="kmnkbp0-0.dll" KeyPath="yes" />
</Component>
<Component>
<File Name="keyboard_info.distribution.json" Source="..\..\global\inst\data\keyboard_info\" KeyPath="yes" />
</Component>

View file

@ -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

View file

@ -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');