summaryrefslogtreecommitdiff
path: root/src/nigui/private/gtk3
diff options
context:
space:
mode:
Diffstat (limited to 'src/nigui/private/gtk3')
-rwxr-xr-xsrc/nigui/private/gtk3/platform_impl.nim11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/nigui/private/gtk3/platform_impl.nim b/src/nigui/private/gtk3/platform_impl.nim
index 7f17bf2..c3df5f7 100755
--- a/src/nigui/private/gtk3/platform_impl.nim
+++ b/src/nigui/private/gtk3/platform_impl.nim
@@ -781,6 +781,9 @@ proc pMainScrollbarDraw(widget: pointer, cr: pointer, data: pointer): Gboolean {
gtk_widget_get_allocation(scrollbar, allocation)
gtk_scrolled_window_set_policy(widget, GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC)
fScrollbarSize = allocation.height
+ for window in windowList:
+ if window.control != nil:
+ window.control.triggerRelayoutDownwards()
proc pWindowStateEventSignal(widget: pointer, event: var GdkEventWindowState, user_data: pointer): Gboolean {.cdecl.} =
let window = cast[WindowImpl](user_data)
@@ -901,6 +904,10 @@ method `iconPath=`(window: WindowImpl, iconPath: string) =
method pUpdateScrollBar(control: ControlImpl) {.base.}
+method triggerRelayout(control: ControlImpl) =
+ procCall control.Control.triggerRelayout()
+ control.pUpdateScrollBar()
+
proc pControlDrawSignal(widget: pointer, cr: pointer, data: pointer): Gboolean {.cdecl.} =
let control = cast[ControlImpl](data)
@@ -1226,9 +1233,7 @@ method pUpdateScrollBar(container: ContainerImpl) =
return
if fScrollbarSize == -1:
- return
-
- # echo "container.pUpdateScrollBar"
+ return
container.fXScrollEnabled = false
container.fYScrollEnabled = false