-Replaced GtkStyle application in the channel tree view with explicit base/text/font modifications to avoid style attach/detach issues on teardown.
-Updated user list styling to apply the font directly instead of setting a shared GtkStyle instance.
-Switched color button updates to use background modifications instead of creating per-button styles, reducing detach warnings on shutdown.
This solves the issue where the parent dialog is closed and then
the child dialog is used.
This is however only a partial fix:
- Many other dialogs throughout the codebase do not currently have
parent windows and need to be refactored.
- Not all window managers respect modal so users can still trigger
bugs. We can be more defensive against this but it requires more
refactoring.
Closes#2686
- Removes need to check for malloc failure
- Removes need for NULL checks on free
- Adds checks for integer overflows
- Removes some extra memset calls
- Removes chance of mixing libc and glib malloc/free
The latter functions expect codepage-encoded filenames on Windows but GLib's API returns filesystem-encoded paths, which on Windows are UTF-8. GLib API should be used to deal with GLib API results.
Also fixed leaks in two of the callers of gtkutil_check_file()
Fixes#968
This is the first step to build with GSEAL_ENABLE
setup.c uses a deprecated fontchooser,
chanview-tabs.c didn't like the conversion, and
I am waiting to do some work on xtext.c before
converting it.
- Fixes#314
- Adds file extensions to sound and image browsing
- Some options no longer default to our config dir
- Always add a shortcut to our config dir
- Remove broken 'last_dir' functionality, gtk already knows recent
This allows window managers to handle the window in a better way, for instance
xmonad used to open the dialogs in a new tile and now opens a simple float.