3 ms·
The main benefit of not exposing private structures in public API is that it lets you avoid breaking the ABI every version; if you're going to do that anyway, w
by makomk 10y ago
The main benefit of not exposing private structures in public API is that it lets you avoid breaking the ABI every version; if you're going to do that anyway, well. And no, I'm not exaggerating how long it's taking projects to move to gtk+ 3.x - Mozilla has been working on this since 2011, with lots of fun issues around widget styling and drawing (which is apparently poorly documented and keeps changing in ways that break applications). The removal of public structure access was the least of their problems. Even after all that effort, new gtk+ 3.x releases are still breaking stuff in Firefox and other apps. For example, scrollbars and check/radio buttons don't show up in Firefox with gtk+ 3.20 due to major changes in how widget drawing and styling works: https://bugzilla.mozilla.org/show_bug.cgi?id=1234158 https://bugzilla.mozilla.org/show_bug.cgi?id=1234158