From d4eb88b255b72a7cc3f4499035408ac64c926d82 Mon Sep 17 00:00:00 2001 From: Keringar Date: Wed, 13 Jul 2016 14:31:51 -0700 Subject: [PATCH] X11: Fix application of window size limits Closes #805. --- README.md | 3 +++ src/x11_window.c | 16 ++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/README.md b/README.md index e261af04..27d10813 100644 --- a/README.md +++ b/README.md @@ -105,6 +105,8 @@ information on what to include when reporting a bug. - [GLX] Bugfix: Dynamically loaded entry points were not verified - [EGL] Added `lib` prefix matching between EGL and OpenGL ES library binaries - [EGL] Bugfix: Dynamically loaded entry points were not verified + - [X11] Bugfix: Fixed window size limits being ignored if window minimums or + maximums were set to GLFW_DONT_CARE ## Contact @@ -244,6 +246,7 @@ skills. - Santi Zupancic - Jonas Ådahl - Lasse Öörni + - Warren Hu - All the unmentioned and anonymous contributors in the GLFW community, for bug reports, patches, feedback, testing and encouragement diff --git a/src/x11_window.c b/src/x11_window.c index 6e89eb11..ee745a81 100644 --- a/src/x11_window.c +++ b/src/x11_window.c @@ -229,6 +229,22 @@ static void updateNormalHints(_GLFWwindow* window, int width, int height) hints->max_height = window->maxheight; } + if (window->minwidth != GLFW_DONT_CARE && + window->minheight != GLFW_DONT_CARE) + { + hints->flags |= (PMinSize); + hints->min_width = window->minwidth; + hints->min_height = window->minheight; + } + + if (window->maxwidth != GLFW_DONT_CARE && + window->maxheight != GLFW_DONT_CARE) + { + hints->flags |= (PMaxSize); + hints->max_width = window->maxwidth; + hints->max_height = window->maxheight; + } + if (window->numer != GLFW_DONT_CARE && window->denom != GLFW_DONT_CARE) {