Skip to content

Migrate to Gtk4 #360

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

Draft
wants to merge 103 commits into
base: master
Choose a base branch
from
Draft

Migrate to Gtk4 #360

wants to merge 103 commits into from

Conversation

philippun1
Copy link
Collaborator

@philippun1 philippun1 commented Sep 11, 2022

Dialogs use Adw.Dialog if available, otherwise they will fallback to regular Gtk.Dialog.

Dialog status:

  • Commit
  • Push
  • Update
  • About
  • MessageCallbackNotifier
  • LoadingNotifier
  • Settings
    • use AdwPreferencesDialog if available
  • Revert
  • Clean
  • Reset
  • Stage / Add
  • Merge
  • Tags
  • Ignore
  • Switch
  • Popup dialogs

Other:

  • Context menus

Only tested with git and svn at the moment.

@philippun1 philippun1 mentioned this pull request Sep 11, 2022
@philippun1 philippun1 changed the title Migrate to Gtk4, make Nautilus 43 client work again Migrate to Gtk4 Oct 2, 2022
@philippun1 philippun1 force-pushed the gtk4 branch 3 times, most recently from ff1ed3f to 2b2d381 Compare March 12, 2023 23:27
import cProfile

path = S(gnomevfs.get_local_path_from_uri(item.get_uri())).replace("/", ":")

profile_data_file = os.path.join(
helper.get_home_folder(), "checkerservice_%s.stats" % path
)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change

@CloCkWeRX
Copy link
Member

As you are doing some pretty substantive work here, I've bumped you up to maintainer

@yochananmarqos
Copy link

yochananmarqos commented Mar 18, 2023

I just tried your gtk4 branch on GNOME 44 and it's working well with Nautilus.

However, this PR can't be merged as it's not up to date with this repo. At some point you did not pull upstream before making changes.

FYI, It does not work with Nemo. Maybe the other file manager plugins can be addressed later.

❯ nemo

** (nemo:817524): WARNING **: 15:07:26.832: Current gtk theme is not known to have nemo support (Adw-dark) - checking...
Traceback (most recent call last):
  File "/usr/share/nemo-python/extensions/RabbitVCS.py", line 32, in <module>
    from rabbitvcs.util.contextmenuitems import *
  File "/usr/lib/python3.10/site-packages/rabbitvcs/util/contextmenuitems.py", line 29, in <module>
    gi.require_version("Gtk", "4.0")
  File "/usr/lib/python3.10/site-packages/gi/__init__.py", line 117, in require_version
    raise ValueError('Namespace %s is already loaded with version %s' %
ValueError: Namespace Gtk is already loaded with version 3.0

@philippun1
Copy link
Collaborator Author

I will rebase the branch soon, there are no relevant commits on master yet.

I'm currently focusing on nautilus and git dialogs. After that I will take a look into the other plugins and VCS.

@petar-v
Copy link

petar-v commented May 23, 2023

I love that tool and I have gnome 44. Thank you so much for your work porting that over to GTK4!!! 🙇

@CloCkWeRX
Copy link
Member

@philippun1 given the amount of work you've done, what do you think is left?

Happy to start testing on this branch over the next few months if you like, with an eye towards merging it

@philippun1
Copy link
Collaborator Author

@CloCkWeRX All the dialogs are done, whats missing are the context menus. I tested all the git dialogs and most of the svn dialogs. But a second pair of eyes would certainly be helpful.

Since the popover menus have completely changed with gtk4, they probably need to be rewritten.

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

Successfully merging this pull request may close these issues.

4 participants