Fix size_range() - continued (issue #392)

- fix window size of GL windows as reported for test/glpuzzle.cxx
- fix window not resizing on ctrl/+/- (X11 only)

Unfortunately the previous commit "optimized" a necessary X11 message
away. This is now fixed.

Fixes #392.
This commit is contained in:
Albrecht Schlosser 2022-03-05 15:50:49 +01:00
parent c2c7795614
commit 5ebb76050b
2 changed files with 2 additions and 0 deletions

View File

@ -70,6 +70,7 @@ int Fl_Gl_Window::can_do(int a, const int *b) {
void Fl_Gl_Window::show() {
int need_after = 0;
if (!shown()) {
Fl_Window::default_size_range();
if (!g) {
g = pGlWindowDriver->find(mode_,alist);
if (!g && (mode_ & FL_DOUBLE) == FL_SINGLE) {

View File

@ -2097,6 +2097,7 @@ void Fl_X11_Window_Driver::resize(int X,int Y,int W,int H) {
if (resize_from_program && shown()) {
float s = Fl::screen_driver()->scale(screen_num());
if (is_a_resize) {
size_range(); // calls sendxjunk()
if (is_a_move) {
XMoveResizeWindow(fl_display, fl_xid(pWindow), rint(X*s), rint(Y*s), W>0 ? W*s : 1, H>0 ? H*s : 1);
} else {