GTK3 migration?

Are there plans or work in progress to update Ardour to use GTK3? While the current scaling system makes Ardour usable on high pixel density screens, it’s still imperfect and doesn’t scale everything, such as custom cursors, spacing & icons in menus, or icons in the file selection dialog. Also, having to go into the preferences the first time Ardour is run with an unscaled interface is not very easily discoverable and I suspect some users on high pixel density screens just immediately close Ardour because it doesn’t scale automatically like other applications.

There are no plans to migrate to GTK3/4, the eventual goal is to move away from GTK. Ardour does not use many GTK widgets anymore. There is also no obvious benefit from migrating.

It won’t help with custom cursors or icons anyway. There is a slow process to update them to vector icons.

Already fixed. Ardour6/git asks this when it is first started and suggests default (based on screen size heuristics).

This is entirely intentional. Many common desktop settings likewise do not apply to creative authoring apps.

1 Like

PS. there are various bug reports in however most of them untriaged and some perhaps outdated.

In the weeks before the Ardour 6 release, it would be beneficial to have a concise list of elements that don’t yet scale properly. I can’t promise that we’ll get all of them for 6.0, but we have to start somewhere…

GUI elements that do not yet scale. From the top of my head:

  • Icons in the Editor-sidebar
  • Port-connection matrices
  • Cursors

Are you sure? Aren’t the icons in the file selection dialog and the checkboxes in menus supplied by GTK, not Ardour? How do you plan to implement these basic GUI widgets without GTK? Does GTK2 allow you to scale such details?

I could test out the lastest version from Git and report bugs. Would it be helpful to do that now or should I wait until closer to the 6.0 release? AFAIK there is no set time for the 6.0 release so how would I know when to wait for?

FWIW I did report one bug a while ago that has a usability impact and isn’t just aesthetic.

Indeed the file-selecion dialog and treeview are the main reason why GTK is still used.
Some check-buttons (mostly preference dialog) are still Gtk::Checkboxes, but those are easily replaced.

Most everything else, from buttons, timeline, fader, meters… etc are all custom, and Ardour as its own canvas. There’s not much that GTK can offer.

Ardour customized some gtk2 widgets and layouts, re-doing this for GTK3 would be a significant amount of work. Last we investigated this it seemed easier to just drop it (and perhaps use gdk3/4 for window and event system). That won’t happen before Ardour 7 though. – Ardour 6 is already late.