mirror of
https://github.com/keymanapp/keyman.git
synced 2026-08-05 16:35:33 +00:00
39 lines
No EOL
1.2 KiB
TypeScript
39 lines
No EOL
1.2 KiB
TypeScript
/// <reference path="keyboardView.interface.ts" />
|
|
|
|
namespace com.keyman.osk {
|
|
export class HelpPageView implements KeyboardView {
|
|
private readonly kbd: keyboards.Keyboard;
|
|
public readonly element: HTMLDivElement;
|
|
|
|
private static readonly ID = 'kmw-osk-help-page';
|
|
|
|
constructor(keyboard: keyboards.Keyboard) {
|
|
this.kbd = keyboard;
|
|
|
|
var Ldiv = this.element = document.createElement('div');
|
|
Ldiv.style.userSelect = "none";
|
|
Ldiv.className = 'kmw-osk-static';
|
|
Ldiv.id = HelpPageView.ID;
|
|
Ldiv.innerHTML = keyboard.helpText;
|
|
}
|
|
|
|
public postInsert() {
|
|
if(!this.element.parentElement || !document.getElementById(HelpPageView.ID)) {
|
|
throw new Error("The HelpPage root element has not yet been inserted into the DOM.");
|
|
}
|
|
|
|
if(this.kbd.hasScript) {
|
|
// .parentElement: ensure this matches the _Box element from OSKManager / OSKView
|
|
// Not a hard requirement for any known keyboards, but is asserted by legacy docs.
|
|
this.kbd.embedScript(this.element.parentElement);
|
|
}
|
|
}
|
|
|
|
public updateState() { }
|
|
public refreshLayout() { }
|
|
|
|
public get layoutHeight(): ParsedLengthStyle {
|
|
return ParsedLengthStyle.inPercent(100);
|
|
}
|
|
}
|
|
} |