Updated gtkutil_button() to use icon-name images on GTK3 while preserving stock image usage on GTK2.
Switched menu icon creation to the shared GTK3 mapping helper.
Aligned plugin UI icon macros with the same GTK3/GTK2 conditional pattern for named icons vs stock icons.
Ensured GTK3 popup helper usage and clarified GTK3/GTK2 icon macro selection in the main menu handling code.
Added a GTK3 icon-button helper for the plugin list controls and used it for the load/unload/reload buttons.
Added a GTK3 help icon to the join-channel dialog button configuration.
Switched the plugin GUI action buttons to GTK3 icon-name images with GTK2 stock fallbacks.
Added GTK3 icon-name mappings for menu entries, updated menu popups to gtk_menu_popup_at_pointer, and set GTK3 dialog button icons while preserving GTK2 stock behavior.
Reused the palette foreground property macro for user list and DCC text renderers to match RGBA usage in GTK3 while keeping GTK2 behavior intact.
Aligned GTK2 setup color callbacks with PaletteColor and ensured RGBA parsing initialization in the palette helper.
Adjusted setup RGBA conversion fallback to explicit channel conversion when parsing fails.
Updated GtkCellRendererText foreground property handling for GTK2/GTK3 in user list, DCC list, and notify list rendering.
Switched user list and DCC tree view text columns to select the GTK3 foreground-rgba property (with GTK2 fallbacks) for cell renderer text colors.
Reused RGBA parsing for palette-backed color chooser defaults and clarified palette change tracking comments.
Parsed palette colors before initializing the GTK3 color chooser dialog to ensure RGBA normalization.
Switched GTK3 GtkCellRendererText foreground bindings to foreground-rgba with GTK2 fallbacks in user list, notify, and DCC views.
Generated GTK3 caret-color CSS using GdkRGBA string conversion instead of manual RGB math for input styling.
Simplified palette RGB16 parsing by building a GdkRGBA-compatible color string before parsing.
Updated GTK3 list-model color storage and GtkCellRendererText foreground properties to use RGBA values in the user list, notify list, and DCC views while retaining GTK2 behavior.
Copied palette RGBA values before initializing the GTK3 color chooser dialog to ensure RGBA usage on the GTK3 path.
Copy RGBA values from the GTK color chooser into palette entries for the setup dialog path.
Added RGBA-aware list-store color helpers and usage for userlist, notify, and DCC views to keep color handling consistent across GTK versions.
Updated setup color selection and styling to use RGBA-aware GTK3 overrides/CSS while preserving GTK2 behavior in guarded paths.
Switched tree view color models/renderers and other palette consumers (user list, notify, DCC, menus, spell entry, input style) to RGBA-aware types/properties with shared RGB16 conversion usage.
Updated main GUI layout construction to use mg_box_new for topic bars, text areas, meters, search/entry bars, dialog buttons, and generic tabs to keep GTK3-friendly box creation consistent while preserving GTK2 behavior.
Switched the GTK frontend build logic to select GTK2/GTK3 dependencies and emit corresponding preprocessor defines.
Added GTK3 GtkGrid/alignment handling and GTK3 GtkBox replacements for the channel list controls while preserving GTK2 table behavior behind guards.
Switched the ban list layout to use GtkGrid under GTK3 with GTK2 table fallback for checkbox placement.
Updated main GTK UI layouts to use GTK3 GtkGrid/GtkBox and alignment/attachment logic (quit dialog, topic bar, search/entry, chanview placement, main window table) while keeping GTK2 behavior via HAVE_GTK3 guards.