mirror of
https://github.com/keymanapp/keyman.git
synced 2026-08-06 08:55:34 +00:00
Merge remote-tracking branch 'origin/beta' into fix/linux/2552-sed-tier-in-watch
This commit is contained in:
commit
9fec9a9ea4
7 changed files with 72 additions and 58 deletions
|
|
@ -19,7 +19,14 @@
|
|||
|
||||
typedef uint32_t uchar_t;
|
||||
|
||||
/* Intentional fallthrough */
|
||||
#if defined(__clang__)
|
||||
#define fallthrough [[clang::fallthrough]]
|
||||
#elif defined(__GNUC__) && __GNUC__ >= 7
|
||||
#define fallthrough [[gnu::fallthrough]]
|
||||
#else
|
||||
#define fallthrough ((void)0)
|
||||
#endif
|
||||
|
||||
template <int N>
|
||||
struct _utf_codec
|
||||
|
|
|
|||
|
|
@ -1,10 +1,11 @@
|
|||
# Keyman for Linux Version History
|
||||
|
||||
## 2020-02-17 13.0.29 beta
|
||||
# 2020-02-17 13.0.29 beta
|
||||
* Bug Fix:
|
||||
* Fix how tier is determined for debian watch files (#2664)
|
||||
* Fix keyboard processor compilation for Xenial (#2648)
|
||||
|
||||
## 2020-02-11 13.0.28 beta
|
||||
# 2020-02-11 13.0.28 beta
|
||||
* Bug Fix:
|
||||
* Incorporate packaging fixes from 14.0 development (#2624)
|
||||
|
||||
|
|
|
|||
|
|
@ -3,9 +3,9 @@ Section: utils
|
|||
Priority: optional
|
||||
Maintainer: Daniel Glassey <wdg@debian.org>
|
||||
Build-Depends: debhelper (>= 9), autotools-dev, dh-autoreconf, pkg-config,
|
||||
libkmnkbp-dev (>=0.0.0~), libibus-1.0-dev (>= 1.2), libjson-glib-dev (>= 1.4.0),
|
||||
libgtk-3-dev
|
||||
Standards-Version: 3.9.8
|
||||
libkmnkbp-dev (>=0.0.0~), libibus-1.0-dev (>= 1.2), libjson-glib-dev (>= 1.4.0) <!pkg.keyman-config.xenial>,
|
||||
libjson-glib-dev (1.1.2) <pkg.keyman-config.xenial>, libgtk-3-dev
|
||||
Standards-Version: 4.5.0
|
||||
Homepage: http://www.keyman.com
|
||||
|
||||
Package: ibus-keyman
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ default: clean version man
|
|||
python3 setup.py build
|
||||
|
||||
install: # run as sudo
|
||||
pip3 install qrcode
|
||||
python3 setup.py install
|
||||
# install icons
|
||||
mkdir -p /usr/local/share/keyman/icons
|
||||
|
|
@ -26,7 +27,6 @@ uninstall: clean # run as sudo
|
|||
rm -f /usr/local/bin/km-package-install
|
||||
rm -f /usr/local/bin/km-package-list-installed
|
||||
rm -f /usr/local/bin/km-package-uninstall
|
||||
rm -f /usr/local/bin/qr
|
||||
|
||||
clean:
|
||||
-rm -rf dist make_deb build keyman_config/version.py *.egg-info __pycache__
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ Source: keyman-config
|
|||
Maintainer: Daniel Glassey <wdg@debian.org>
|
||||
Section: python
|
||||
Priority: optional
|
||||
Build-Depends: dh-python, python3-setuptools, python3-all, debhelper (>= 9), bash-completion,
|
||||
Build-Depends: dh-python, python3-setuptools, python3-all, python3-pip, debhelper (>= 9), bash-completion,
|
||||
python3-magic, python3-qrcode <!pkg.keyman-config.xenial>,
|
||||
python-qrcode <pkg.keyman-config.xenial>
|
||||
Standards-Version: 4.5.0
|
||||
|
|
|
|||
|
|
@ -132,7 +132,7 @@ begin
|
|||
FormName := (FHelpControl as TTIKEForm).HelpTopic
|
||||
else if FHelpControl is TCustomForm then
|
||||
FormName := FHelpControl.ClassName
|
||||
else
|
||||
else if (FHelpControl <> nil) then
|
||||
begin
|
||||
o := FHelpControl.Owner;
|
||||
while ((o is TframeCEFHost) or not(o is TTIKEForm)) and (o <> nil) do
|
||||
|
|
|
|||
|
|
@ -306,6 +306,7 @@ end;
|
|||
|
||||
function TframeTouchLayoutBuilder.Load(const AFilename: string; ALoadFromTemplate, ALoadFromString: Boolean): Boolean;
|
||||
var
|
||||
FLastFilename: string;
|
||||
FBaseFileName: string;
|
||||
FNewLayoutJS: string;
|
||||
FTouchLayout: TTouchLayout;
|
||||
|
|
@ -319,6 +320,7 @@ var
|
|||
begin
|
||||
FLastErrorOffset := -1;
|
||||
FLastError := '';
|
||||
FLastFilename := FFilename;
|
||||
|
||||
if FFilename <> '' then
|
||||
begin
|
||||
|
|
@ -327,66 +329,70 @@ begin
|
|||
end;
|
||||
|
||||
UnregisterSources;
|
||||
try
|
||||
|
||||
if ALoadFromString then
|
||||
begin
|
||||
FNewLayoutJS := AFilename;
|
||||
FFilename := GetNextFilename;
|
||||
end
|
||||
else
|
||||
begin
|
||||
if ALoadFromTemplate or (AFileName = '') or not FileExists(AFileName) then
|
||||
if ALoadFromString then
|
||||
begin
|
||||
FBaseFileName := FTemplateFileName;
|
||||
FNewLayoutJS := AFilename;
|
||||
FFilename := GetNextFilename;
|
||||
end
|
||||
else
|
||||
begin
|
||||
FBaseFileName := AFileName;
|
||||
FFilename := AFileName;
|
||||
end;
|
||||
|
||||
with TStringList.Create do
|
||||
try
|
||||
LoadFromFile(FBaseFileName, TEncoding.UTF8);
|
||||
FNewLayoutJS := Text;
|
||||
finally
|
||||
Free;
|
||||
end;
|
||||
end;
|
||||
|
||||
FTouchLayout := TTouchLayout.Create; // I3642
|
||||
try
|
||||
if not FTouchLayout.Load(FNewLayoutJS) then
|
||||
begin
|
||||
FLastError := FTouchLayout.LoadError; // I4083
|
||||
FLastErrorOffset := FTouchLayout.LoadErrorOffset; // I4083
|
||||
Exit(False);
|
||||
end
|
||||
else
|
||||
begin
|
||||
if (FSavedLayoutJS <> '') and ALoadFromTemplate then
|
||||
if ALoadFromTemplate or (AFileName = '') or not FileExists(AFileName) then
|
||||
begin
|
||||
FOldLayout := TTouchLayout.Create;
|
||||
try
|
||||
FOldLayout.Load(FSavedLayoutJS);
|
||||
if FTouchLayout.Merge(FOldLayout)
|
||||
then FSavedLayoutJS := FTouchLayout.Save(False)
|
||||
else FSavedLayoutJS := FNewLayoutJS;
|
||||
finally
|
||||
FOldLayout.Free;
|
||||
end;
|
||||
FBaseFileName := FTemplateFileName;
|
||||
FFilename := GetNextFilename;
|
||||
end
|
||||
else
|
||||
FSavedLayoutJS := FNewLayoutJS;
|
||||
end;
|
||||
finally
|
||||
FTouchLayout.Free;
|
||||
end;
|
||||
begin
|
||||
FBaseFileName := AFileName;
|
||||
FFilename := AFileName;
|
||||
end;
|
||||
|
||||
RegisterSource;
|
||||
if FState <> '' then
|
||||
modWebHttpServer.AppSource.RegisterSource(FFilename + '#state', FState, True);
|
||||
with TStringList.Create do
|
||||
try
|
||||
LoadFromFile(FBaseFileName, TEncoding.UTF8);
|
||||
FNewLayoutJS := Text;
|
||||
finally
|
||||
Free;
|
||||
end;
|
||||
end;
|
||||
|
||||
FTouchLayout := TTouchLayout.Create; // I3642
|
||||
try
|
||||
if not FTouchLayout.Load(FNewLayoutJS) then
|
||||
begin
|
||||
FLastError := FTouchLayout.LoadError; // I4083
|
||||
FLastErrorOffset := FTouchLayout.LoadErrorOffset; // I4083
|
||||
FFilename := FLastFilename;
|
||||
Exit(False);
|
||||
end
|
||||
else
|
||||
begin
|
||||
if (FSavedLayoutJS <> '') and ALoadFromTemplate then
|
||||
begin
|
||||
FOldLayout := TTouchLayout.Create;
|
||||
try
|
||||
FOldLayout.Load(FSavedLayoutJS);
|
||||
if FTouchLayout.Merge(FOldLayout)
|
||||
then FSavedLayoutJS := FTouchLayout.Save(False)
|
||||
else FSavedLayoutJS := FNewLayoutJS;
|
||||
finally
|
||||
FOldLayout.Free;
|
||||
end;
|
||||
end
|
||||
else
|
||||
FSavedLayoutJS := FNewLayoutJS;
|
||||
end;
|
||||
finally
|
||||
FTouchLayout.Free;
|
||||
end;
|
||||
|
||||
finally
|
||||
RegisterSource;
|
||||
if FState <> '' then
|
||||
modWebHttpServer.AppSource.RegisterSource(FFilename + '#state', FState, True);
|
||||
end;
|
||||
|
||||
try
|
||||
DoLoad;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue