diff options
| author | trustable-code <krauter.simon@arcor.de> | 2018-12-21 20:04:49 +0100 |
|---|---|---|
| committer | trustable-code <krauter.simon@arcor.de> | 2018-12-21 20:04:49 +0100 |
| commit | 6be838926056a1437e4b449c552da8de4dae6a34 (patch) | |
| tree | bc6474dd0fe7588d58942fdd676255bd8ec81d93 /src/nigui/private/gtk3/platform_impl.nim | |
| parent | 6bb2a9172e987a6e3d36a41fc8209f3515a2938a (diff) | |
| download | NiGui-6be838926056a1437e4b449c552da8de4dae6a34.tar.gz NiGui-6be838926056a1437e4b449c552da8de4dae6a34.zip | |
Fix relayout issue on font change
Diffstat (limited to 'src/nigui/private/gtk3/platform_impl.nim')
| -rwxr-xr-x | src/nigui/private/gtk3/platform_impl.nim | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/nigui/private/gtk3/platform_impl.nim b/src/nigui/private/gtk3/platform_impl.nim index 086bbfa..c30cbd0 100755 --- a/src/nigui/private/gtk3/platform_impl.nim +++ b/src/nigui/private/gtk3/platform_impl.nim @@ -1040,6 +1040,13 @@ method getTextLineWidth(control: ControlImpl, text: string): int = method getTextLineHeight(control: ControlImpl): int = var layout = gtk_widget_create_pango_layout(control.fHandle, "a") + + # Because the widget's font size is not always regarded, we have to set the font here again: + var font = pango_font_description_new() + pango_font_description_set_family(font, control.fontFamily) + pango_font_description_set_size(font, cint(control.fontSize * pFontSizeFactor)) + pango_layout_set_font_description(layout, font) + var width: cint = 0 var height: cint = 0 pango_layout_get_pixel_size(layout, width, height) |
