From 4fb3d7ca3a5bdce72eb2c32d52129de9de63bd4a Mon Sep 17 00:00:00 2001 From: Marc Durdin Date: Thu, 9 Jul 2020 10:16:21 +1000 Subject: [PATCH] feat(windows): cleanup server names This makes server URLs version agnostic and works with tiers and debug overrides in all URLs. This is groundwork for universal links and integrated new keyboard search. Also uses /windows/ instead of /desktop/ where possible. --- .../install/UfrmInstallKeyboardFromWeb.pas | 3 +- windows/src/desktop/kmshell/main/UfrmMain.dfm | 4 +-- windows/src/desktop/kmshell/main/UfrmMain.pas | 7 ++--- ...an.Configuration.System.HttpServer.App.pas | 4 ++- .../desktop/kmshell/xml/downloadkeyboard.xsl | 2 +- .../kmshell/xml/keyman_keepintouch.xsl | 2 +- .../kmshell/xml/keyman_keyboardlist.xsl | 4 +-- .../desktop/kmshell/xml/keyman_support.xsl | 10 +++--- .../global/delphi/general/KeymanVersion.pas | 15 +++++++++ .../global/delphi/general/Upload_Settings.pas | 31 ++++++++++++++----- 10 files changed, 59 insertions(+), 23 deletions(-) diff --git a/windows/src/desktop/kmshell/install/UfrmInstallKeyboardFromWeb.pas b/windows/src/desktop/kmshell/install/UfrmInstallKeyboardFromWeb.pas index c1b8392f0d..a68112ba63 100644 --- a/windows/src/desktop/kmshell/install/UfrmInstallKeyboardFromWeb.pas +++ b/windows/src/desktop/kmshell/install/UfrmInstallKeyboardFromWeb.pas @@ -210,7 +210,8 @@ begin // Ensures keyman.com hosted site opens locally cef.ShouldOpenRemoteUrlsInBrowser := False; FRenderPage := 'downloadkeyboard'; - Content_Render; + + Content_Render(False); inherited; end; diff --git a/windows/src/desktop/kmshell/main/UfrmMain.dfm b/windows/src/desktop/kmshell/main/UfrmMain.dfm index 792d45042d..6bb8f12361 100644 --- a/windows/src/desktop/kmshell/main/UfrmMain.dfm +++ b/windows/src/desktop/kmshell/main/UfrmMain.dfm @@ -4,14 +4,14 @@ inherited frmMain: TfrmMain HelpContext = 1050 BorderIcons = [biSystemMenu, biMinimize, biMaximize, biHelp] ClientHeight = 494 - ClientWidth = 617 + ClientWidth = 846 Constraints.MinHeight = 530 Constraints.MinWidth = 600 OldCreateOrder = True Position = poScreenCenter OnClose = TntFormClose OnCloseQuery = TntFormCloseQuery - ExplicitWidth = 633 + ExplicitWidth = 862 ExplicitHeight = 533 PixelsPerInch = 96 TextHeight = 13 diff --git a/windows/src/desktop/kmshell/main/UfrmMain.pas b/windows/src/desktop/kmshell/main/UfrmMain.pas index 160c9562ae..061a90d138 100644 --- a/windows/src/desktop/kmshell/main/UfrmMain.pas +++ b/windows/src/desktop/kmshell/main/UfrmMain.pas @@ -160,8 +160,6 @@ implementation {$R *.DFM} uses - axctrls, - ActiveX, BaseKeyboards, ComObj, GetOSVersion, @@ -171,6 +169,7 @@ uses initprog, Keyman.Configuration.UI.UfrmDiagnosticTests, KeymanOptionNames, + KeymanVersion, KeyNames, custinterfaces, KLog, @@ -277,7 +276,7 @@ procedure TfrmMain.Do_Content_Render(FRefreshKeyman: Boolean); var sharedDataIntf: IConfigMainSharedData; sharedData: TConfigMainSharedData; - s: string; + DefaultServersTag, s: string; begin if FPageTag > 0 then begin @@ -300,7 +299,7 @@ begin XMLEncode(sharedDataIntf.State), Cardinal(kmcom.Options[KeymanOptionName(koBaseLayout)].Value), XMLEncode(TBaseKeyboards.GetName(kmcom.Options[KeymanOptionName(koBaseLayout)].Value)) - ]); + ]) + DefaultServersXMLTags + DefaultVersionXMLTags; sharedData.Init( FXMLRenderers.TempPath, diff --git a/windows/src/desktop/kmshell/web/Keyman.Configuration.System.HttpServer.App.pas b/windows/src/desktop/kmshell/web/Keyman.Configuration.System.HttpServer.App.pas index 5c0b590c2f..99fb496de8 100644 --- a/windows/src/desktop/kmshell/web/Keyman.Configuration.System.HttpServer.App.pas +++ b/windows/src/desktop/kmshell/web/Keyman.Configuration.System.HttpServer.App.pas @@ -73,6 +73,7 @@ uses LanguagesXMLRenderer, OptionsXMLRenderer, SupportXMLRenderer, + Upload_Settings, utilxml; { THttpServerApp } @@ -237,12 +238,13 @@ procedure TAppHttpResponder.ProcessXMLPage(const s: string); var FXML: string; PageTag: string; + DefaultServersTag: string; begin PageTag := RequestInfo.Params.Values['tag']; if PageTag <> '' then PageTag := ''+PageTag+''; - FXML := FXMLRenderers.RenderToString(False, s + PageTag); + FXML := FXMLRenderers.RenderToString(False, s + PageTag + DefaultServersXMLTags + DefaultVersionXMLTags); FResponseInfo.ContentStream := TStringStream.Create(FXML, TEncoding.UTF8); FResponseInfo.FreeContentStream := True; diff --git a/windows/src/desktop/kmshell/xml/downloadkeyboard.xsl b/windows/src/desktop/kmshell/xml/downloadkeyboard.xsl index f8de5df025..d6293e277e 100644 --- a/windows/src/desktop/kmshell/xml/downloadkeyboard.xsl +++ b/windows/src/desktop/kmshell/xml/downloadkeyboard.xsl @@ -63,7 +63,7 @@