Some adjustments for the shared part refactoring

This commit is contained in:
WolverinDEV 2021-01-12 03:49:38 +01:00
parent a0c2d5fcc2
commit 921f3e6a4c
9 changed files with 44 additions and 48 deletions

2
github

@ -1 +1 @@
Subproject commit 279544d0a48ab5236755d6d2ba47d6d23d31f749
Subproject commit d3e4e092dd1638abe51ca2a456fb50f4e9ed7d33

View File

@ -1,7 +1,7 @@
import {KeyEvent as NKeyEvent, RegisterCallback, UnregisterCallback} from "tc-native/ppt";
import {EventType, KeyEvent, KeyHook, SpecialKey} from "tc-shared/PPTListener";
import {tr} from "tc-shared/i18n/localize";
import {LogCategory} from "tc-shared/log";
import {LogCategory, logTrace} from "tc-shared/log";
import * as log from "tc-shared/log";
let key_listener: ((_: KeyEvent) => any)[] = [];
@ -97,7 +97,7 @@ function listener_hook(event: KeyEvent) {
const index = old_hooks.findIndex(e => e === hook);
if(index === -1 && hook.callback_press) {
hook.callback_press();
log.trace(LogCategory.GENERAL, tr("Trigger key press for %o!"), hook);
logTrace(LogCategory.GENERAL, tr("Trigger key press for %o!"), hook);
}
}
}
@ -108,7 +108,7 @@ function listener_hook(event: KeyEvent) {
if(hook.key_code === event.key_code) {
if(hook.callback_release) {
hook.callback_release();
log.trace(LogCategory.GENERAL, tr("Trigger key release for %o!"), hook);
logTrace(LogCategory.GENERAL, tr("Trigger key release for %o!"), hook);
}
} else {
new_hooks.push(hook);

View File

@ -2,8 +2,8 @@ import {createErrorModal} from "tc-shared/ui/elements/Modal";
import * as electron from "electron";
import {tr, tra} from "tc-shared/i18n/localize";
import {handle_connect_request} from "tc-shared/main";
import {server_connections} from "tc-shared/ConnectionManager";
import {handle_connect_request} from "tc-shared/main";
electron.ipcRenderer.on('connect', (event, url) => handle_native_connect_request(url));
@ -24,9 +24,9 @@ function handle_native_connect_request(url_string: string) {
return;
}
let connection = server_connections.active_connection();
let connection = server_connections.getActiveConnectionHandler();
if(connection.connected) {
connection = server_connections.spawn_server_connection();
connection = server_connections.spawnConnectionHandler();
}
handle_connect_request({

View File

@ -5,14 +5,14 @@ import {remote} from "electron";
import {server_connections} from "tc-shared/ConnectionManager";
window.onbeforeunload = event => {
if(settings.static(Settings.KEY_DISABLE_UNLOAD_DIALOG))
if(settings.getValue(Settings.KEY_DISABLE_UNLOAD_DIALOG))
return;
const active_connections = server_connections.all_connections().filter(e => e.connected);
const active_connections = server_connections.getAllConnectionHandlers().filter(e => e.connected);
if(active_connections.length == 0) return;
const do_exit = (closeWindow: boolean) => {
const dp = server_connections.all_connections().map(e => {
const dp = server_connections.getAllConnectionHandlers().map(e => {
if(e.serverConnection.connected())
return e.serverConnection.disconnect(tr("client closed"))
.catch(error => {

View File

@ -38,7 +38,7 @@ export class NativeInput implements AbstractInput {
this.nativeHandle = audio.record.create_recorder();
this.nativeConsumer = this.nativeHandle.create_consumer();
this.nativeConsumer.toggle_rnnoise(settings.static_global(Settings.KEY_RNNOISE_FILTER));
this.nativeConsumer.toggle_rnnoise(settings.getValue(Settings.KEY_RNNOISE_FILTER));
this.nativeConsumer.callback_ended = () => {
this.filtered = true;
@ -280,7 +280,7 @@ export class NativeLevelMeter implements LevelMeter {
this.nativeRecorder = audio.record.create_recorder();
this.nativeConsumer = this.nativeRecorder.create_consumer();
this.nativeConsumer.toggle_rnnoise(settings.static_global(Settings.KEY_RNNOISE_FILTER));
this.nativeConsumer.toggle_rnnoise(settings.getValue(Settings.KEY_RNNOISE_FILTER));
this.nativeFilter = this.nativeConsumer.create_filter_threshold(.5);
this.nativeFilter.set_attack_smooth(.75);

View File

@ -1,8 +1,10 @@
import {NativeClientBackend} from "tc-shared/backend/NativeClient";
import {ipcRenderer} from "electron";
import {NativeClientBackend, NativeClientVersionInfo} from "tc-shared/backend/NativeClient";
import {ipcRenderer, remote} from "electron";
import {Arguments, processArguments} from "../../shared/process-arguments";
import * as os from "os";
const call_basic_action = (name: string, ...args: any[]) => ipcRenderer.send('basic-action', name, ...args);
let versionInfo: NativeClientVersionInfo;
export class NativeClientBackendImpl implements NativeClientBackend {
openChangeLog(): void {
call_basic_action("open-changelog");
@ -27,4 +29,19 @@ export class NativeClientBackendImpl implements NativeClientBackend {
showDeveloperOptions(): boolean {
return processArguments.has_flag(Arguments.DEV_TOOLS);
}
getVersionInfo(): NativeClientVersionInfo {
if(!versionInfo) {
versionInfo = {
version: remote.getGlobal("app_version_client") || "?.?.?",
os_platform: os.platform(),
os_platform_version: os.release(),
os_architecture: os.arch()
};
}
return versionInfo;
}
}

View File

@ -13,7 +13,7 @@ import {
import * as native from "tc-native/connection";
import {tr} from "tc-shared/i18n/localize";
import * as log from "tc-shared/log";
import {LogCategory} from "tc-shared/log";
import {LogCategory, logError} from "tc-shared/log";
import {base64_encode_ab} from "tc-shared/utils/buffers";
import * as path from "path";
import * as electron from "electron";
@ -32,8 +32,9 @@ const executeTransfer = (transfer: FileTransfer, object: native.ft.TransferObjec
});
} catch (error) {
let message = typeof error === "object" ? 'message' in error ? error.message : typeof error === "string" ? error : undefined : undefined;
if(!message)
log.error(LogCategory.FILE_TRANSFER, tr("Failed to create file transfer handle: %o"), error);
if(!message) {
logError(LogCategory.FILE_TRANSFER, tr("Failed to create file transfer handle: %o"), error);
}
transfer.setFailed({
error: "connection",
@ -102,8 +103,9 @@ const executeTransfer = (transfer: FileTransfer, object: native.ft.TransferObjec
if(!ntransfer.start())
throw tr("failed to start transfer");
} catch (error) {
if(typeof error !== "string")
log.error(LogCategory.FILE_TRANSFER, tr("Failed to start file transfer: %o"), error);
if(typeof error !== "string") {
logError(LogCategory.FILE_TRANSFER, tr("Failed to start file transfer: %o"), error);
}
transfer.setFailed({
error: "connection",
@ -139,8 +141,9 @@ TransferProvider.setProvider(new class extends TransferProvider {
transfer.target.createResponseFromBuffer();
});
} catch (error) {
if(typeof error !== "string")
log.error(LogCategory.FILE_TRANSFER, tr("Failed to initialize transfer target: %o"), error);
if(typeof error !== "string") {
logError(LogCategory.FILE_TRANSFER, tr("Failed to initialize transfer target: %o"), error);
}
transfer.setFailed({
error: "io",
@ -172,8 +175,9 @@ TransferProvider.setProvider(new class extends TransferProvider {
executeTransfer(transfer, nativeSource, () => { });
} catch (error) {
if(typeof error !== "string")
log.error(LogCategory.FILE_TRANSFER, tr("Failed to initialize transfer source: %o"), error);
if(typeof error !== "string") {
logError(LogCategory.FILE_TRANSFER, tr("Failed to initialize transfer source: %o"), error);
}
transfer.setFailed({
error: "io",

View File

@ -153,7 +153,6 @@ loader.register_task(loader.Stage.JAVASCRIPT_INITIALIZING, {
function: async () => {
/* all files which replaces a native driver */
try {
await import("./version");
await import("./MenuBar");
await import("./ContextMenu");
await import("./SingleInstanceHandler");

View File

@ -1,24 +0,0 @@
//FIXME: This works in general, but is not a good thing
namespace native {
const remote = require('electron').remote;
export async function client_version() : Promise<string> {
const version = remote.getGlobal("app_version_client");
return version || "?.?.?";
}
}
window["native"] = native;
namespace forum {
export interface UserData {
session_id: string;
username: string;
application_data: string;
application_data_sign: string;
}
}
//window["forum"] = forum;
export = {};