taskLordsAWar! - Tasks: task #15905, gtk4


You are not allowed to post comments on this tracker with your current authentication level.

task #15905: gtk4

Submitted by:  Ben Asselstine <benasselstine>
Submitted on:  Sun 21 Feb 2021 12:34:32 PM UTC  
Should Start On:  Sun 21 Feb 2021 05:00:00 AM UTC Should be Finished on:  Sun 21 Feb 2021 05:00:00 AM UTC
Category:  None Priority:  5 - Normal
Status:  None Privacy:  Public
Percent Complete:  0% Assigned to:  None
Open/Closed:  Open Effort:  0.00

Wed 24 Feb 2021 06:26:42 PM UTC, comment #4: 

gtk3 and 4 have something called a shortcutswindow.  glade doesn't know about it though.

Ben Asselstine <benasselstine>
Project Administrator
Wed 24 Feb 2021 02:02:55 PM UTC, comment #3: 

the shortcut keys play a major role in the game.  They have to be retained and discoverable in any new menubar replacement.

Ben Asselstine <benasselstine>
Project Administrator
Mon 22 Feb 2021 06:28:38 PM UTC, comment #2: 

I guess I'll be switching to headerbars and hamburger icons like the other gnome applications.

Ben Asselstine <benasselstine>
Project Administrator
Mon 22 Feb 2021 12:01:33 AM UTC, comment #1: 

here's a list of stuff that needs to change:

Window gravity on armyinfotip, mapinfotip and so on.  Anything x11-ish like ->move on a window is going away.  We will have to use a new "measure" method to get the size of our widget before we move them and do the math on window placement ourselves.

Accelerators for undo/redo is different.  There's no sense in changing them to go through the Gtk::Application because it requires making a toolbar or a menubar that is going away.  Even the activate signal on our buttons is going away, but that's okay because our invisible undo/redo buttons are a huge hack anyway.

All the places that use add or remove on Gtk::Container are mostly replaced with ->append.

The menubars are going away in favour of popovermenu which is a real loss for this project.  It seems less authentic.

Eventbox is going away, grabbing the mouse button events and motion is different.

Some of the on_draw() stuff has changed and will have to use "snapshot" & a cairo surface.  or something.

Radiobuttons are going away, but their toggle buttons now have a toggle group.

Gtk::Bin is going away and it will affect various comboboxes.

Some of the handy Gdk::Pixbuf properties are going away in favour of their new Texture object.  or GIcon.  I see Image still has ->set(pixbuf) which is good.

The api for changing the mouse cursor has changed.

The drag and drop api has changed which we use in a couple of places.

every time we run a dialog we have to change it so it catches the signal_response.  And we have many dialogs.  Maybe we can do something with closures so we don't have a zillion new methods.

There's a program that will convert a gtk3 .ui file to gtk4, and i hope it does great things.

Ben Asselstine <benasselstine>
Project Administrator
Sun 21 Feb 2021 12:34:32 PM UTC, original submission:  

The move to gtk4 will require some large changes.

for now we're getting rid of deprecated widgets and trying to move to using Gtk::Application instead of Gtk::Main.

Ben Asselstine <benasselstine>
Project Administrator


No files currently attached


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by benasselstine (Submitted the item)

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.




    No changes have been made to this item

    Back to the top

    Powered by Savane 3.6