Skip to content

GTK: onContentSizeChanged handler invoking uiWindowSetContentSize has no effect #234

@krakjoe

Description

@krakjoe

I expect this to stop the window being resized:

/**
 gcc -I/usr/include bug.c -lui -o bug
**/
#include <ui.h>
#include <stdio.h>

uiWindow *win;

int test_is_closing(uiWindow *w, void *d) {
	uiControlDestroy(uiControl(w));
	uiQuit();

	return 0;
}

void test_has_changed(uiWindow *window, void *arg) {
	uiWindowSetContentSize(window, 640, 480);
}

int main(int argc, char **argv) {
	const char *initError;	
	uiInitOptions options;
	
	initError = uiInit(&options);

	if (initError) {
		return 1;
	}

	win = uiNewWindow("Title", 640, 480, 0);

	uiWindowOnClosing(win, test_is_closing, win);
	uiWindowOnContentSizeChanged(win, test_has_changed, win);

	uiControlShow(uiControl(win));
	
	uiMain();

	uiUninit();

	return 0;
}

Works on OSX; well enough anyway, user initiated resize results in moving the window.

Messy on windows; You can see frame of window being resized;

Doesn't work at all on GTK, the window is resized (as if the handler were not installed).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions