Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Port to GTK4 #1157

Open
1 of 3 tasks
danirabbit opened this issue Dec 13, 2021 · 4 comments
Open
1 of 3 tasks

Port to GTK4 #1157

danirabbit opened this issue Dec 13, 2021 · 4 comments

Comments

@danirabbit
Copy link
Member

danirabbit commented Dec 13, 2021

Things to do to prepare:

  • Use Hdy.Tabbar
  • Make Granite.SourceList Internal
  • Replace Gtk.MenuItem with GLib.MenuModel
@danirabbit danirabbit changed the title Code Port to GTK4 Dec 13, 2021
@colinkiama
Copy link
Sponsor Member

Make Granite.SourceList Internal

So does this mean that Granite.SourceList should be moved into the elementary Code codebase?

@danirabbit
Copy link
Member Author

@colinkiama yes since there is no SourceList in Granite 7, Code will need its own sidebar class

@colinkiama
Copy link
Sponsor Member

Things to do to prepare:

  • Use Hdy.Tabbar
  • Make Granite.SourceList Internal
  • Replace Gtk.MenuItem with GLib.MenuModel

Does "Replace Gtk.MenuItem with GLib.MenuModel" include the SourceList widget?
It's quite a bit of effort for something that will be completely be rewritten in the GTK 4 port. We also have the issue of Gtk.PopoverMenu not using elementary styling in GTK 3 (unless I'm missing something):

PopoverMenu in sidebar which has GNOME styling instead of the elementary widget styling

@danirabbit
Copy link
Member Author

@colinkiama you can use Glib.Menu with Gtk.Menu for Gtk3 and then the port from Gtk.Menu to Gtk.PopoverMenu in Gtk4 is much smaller than going from Gtk.MenuItem all the way to menu models at the same time. Basically just trying to break things down as much as possible into reviewable branches so we're not trying to merge a several thousand line diff that nobody can reasonably review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Todo
Development

No branches or pull requests

2 participants