summaryrefslogtreecommitdiff
path: root/src/nigui/private/gtk3
diff options
context:
space:
mode:
authortrustable-code <krauter.simon@arcor.de>2019-12-26 15:21:18 +0100
committertrustable-code <krauter.simon@arcor.de>2019-12-26 15:21:18 +0100
commit5bfc8dafab21e292723d19115aad0f304252959a (patch)
treedca257e5a7ccb63f4e644c766eaf6575bb34bd26 /src/nigui/private/gtk3
parentedcdbe648f2b795905832228b08df506fcd31847 (diff)
downloadNiGui-5bfc8dafab21e292723d19115aad0f304252959a.tar.gz
NiGui-5bfc8dafab21e292723d19115aad0f304252959a.zip
Implement "always on top", fixes #80
Diffstat (limited to 'src/nigui/private/gtk3')
-rwxr-xr-xsrc/nigui/private/gtk3/gtk3.nim1
-rwxr-xr-xsrc/nigui/private/gtk3/platform_impl.nim4
2 files changed, 5 insertions, 0 deletions
diff --git a/src/nigui/private/gtk3/gtk3.nim b/src/nigui/private/gtk3/gtk3.nim
index 2f0e399..3627396 100755
--- a/src/nigui/private/gtk3/gtk3.nim
+++ b/src/nigui/private/gtk3/gtk3.nim
@@ -259,6 +259,7 @@ proc gtk_window_set_icon_from_file*(window: pointer, filename: cstring, err: poi
proc gtk_window_iconify*(window: pointer) {.importc, libgtk3.}
proc gtk_window_deiconify*(window: pointer) {.importc, libgtk3.}
proc gtk_window_present*(window: pointer) {.importc, libgtk3.}
+proc gtk_window_set_keep_above*(window: pointer, setting: bool) {.importc, libgtk3.}
proc gdk_window_begin_paint_rect*(window: pointer, rectangle: var GdkRectangle) {.importc, libgtk3.}
proc gdk_window_begin_paint_region*(window: pointer, region: pointer) {.importc, libgtk3.}
diff --git a/src/nigui/private/gtk3/platform_impl.nim b/src/nigui/private/gtk3/platform_impl.nim
index 3f6faa6..28f67f8 100755
--- a/src/nigui/private/gtk3/platform_impl.nim
+++ b/src/nigui/private/gtk3/platform_impl.nim
@@ -842,6 +842,10 @@ method minimize(window: WindowImpl) =
procCall window.Window.minimize()
gtk_window_iconify(window.fHandle)
+method `alwaysOnTop=`(window: WindowImpl, alwaysOnTop: bool) =
+ procCall window.Window.`alwaysOnTop=`(alwaysOnTop)
+ gtk_window_set_keep_above(window.fHandle, alwaysOnTop)
+
method `width=`*(window: WindowImpl, width: int) =
procCall window.Window.`width=`(width)
gtk_window_resize(window.fHandle, window.width.cint, window.height.cint)