taskLordsAWar! - Tasks: task #15905, gtk4


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

task #15905: gtk4

Submitter:  Ben Asselstine <benasselstine>
Submitted:  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
Assigned to:  None Percent Complete:  0%
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>
Group 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>
Group 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>
Group 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>
Group 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>
Group administrator


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

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)

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.


    No changes have been made to this item

    Back to the top

    Powered by Savane 3.13-b921.
    Corresponding source code