diff --git a/app/ShaderSettings.qml b/app/ShaderSettings.qml index a368d4c..1c36966 100644 --- a/app/ShaderSettings.qml +++ b/app/ShaderSettings.qml @@ -74,6 +74,7 @@ Item{ property int frames_index: 1 property var frames_list: framelist + signal terminalFontChanged property real font_scaling: 1.0 property var font: currentfont property int font_index: 0 @@ -90,11 +91,10 @@ Item{ onFont_scalingChanged: handleFontChanged(); function handleFontChanged(){ - terminal.unloadKTerminal(); currentfont.source = fontlist.get(font_index).source; currentfont.pixelSize = fontlist.get(font_index).pixelSize; currentfont.lineSpacing = fontlist.get(font_index).lineSpacing; - terminal.loadKTerminal(); + terminalFontChanged(); } FontLoader{ diff --git a/app/Terminal.qml b/app/Terminal.qml index f8b65bc..a413c37 100644 --- a/app/Terminal.qml +++ b/app/Terminal.qml @@ -44,7 +44,6 @@ Item{ function restartBlurredSource(){ if(!blurredSource) return; - blurredSource.live = true; livetimer.restart() } @@ -85,15 +84,18 @@ Item{ } } - onUpdatedImage: {blurredSource.live = true;livetimer.restart();} - - Component.onCompleted: { + function handleFontChange(){ var scaling_factor = shadersettings.font_scaling * shadersettings.window_scaling; var font_size = Math.ceil(shadersettings.font.pixelSize * scaling_factor); var line_spacing = Math.ceil(shadersettings.font.lineSpacing * font_size); font.pixelSize = font_size; font.family = shadersettings.font.name; setLineSpacing(line_spacing); + } + + onUpdatedImage: {blurredSource.live = true;livetimer.restart();} + Component.onCompleted: { + shadersettings.terminalFontChanged.connect(handleFontChange); forceActiveFocus(); } } diff --git a/app/app.qmlproject.user b/app/app.qmlproject.user index c9cd0d2..802ff8b 100644 --- a/app/app.qmlproject.user +++ b/app/app.qmlproject.user @@ -1,6 +1,6 @@ - + ProjectExplorer.Project.ActiveTarget diff --git a/app/main.qml b/app/main.qml index a00f6ee..bc5965f 100644 --- a/app/main.qml +++ b/app/main.qml @@ -152,9 +152,6 @@ ApplicationWindow{ } ShaderSettings{ id: shadersettings - Component.onCompleted: { - terminal.loadKTerminal(); - } } SettingsWindow{ id: settingswindow @@ -169,4 +166,8 @@ ApplicationWindow{ terminalSize: terminal.terminalSize } } + + Component.onCompleted: { + terminal.loadKTerminal(); + } }