aboutsummaryrefslogtreecommitdiffstats
path: root/src/x11.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/x11.c')
-rw-r--r--src/x11.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/x11.c b/src/x11.c
index 593e8b7..4e8d591 100644
--- a/src/x11.c
+++ b/src/x11.c
@@ -655,12 +655,23 @@ puglUnrealize(PuglView* const view)
}
PuglStatus
-puglShow(PuglView* const view)
+puglShow(PuglView* const view, const PuglShowCommand command)
{
PuglStatus st = view->impl->win ? PUGL_SUCCESS : puglRealize(view);
if (!st) {
- XMapRaised(view->world->impl->display, view->impl->win);
+ switch (command) {
+ case PUGL_SHOW_PASSIVE:
+ XMapWindow(view->world->impl->display, view->impl->win);
+ break;
+ case PUGL_SHOW_RAISE:
+ XMapRaised(view->world->impl->display, view->impl->win);
+ break;
+ case PUGL_SHOW_FORCE_RAISE:
+ XMapRaised(view->world->impl->display, view->impl->win);
+ break;
+ }
+
st = puglPostRedisplay(view);
}