GNOME Bugzilla – Bug 773171
Port to Gtk+ 3.90
Last modified: 2021-07-05 11:01:10 UTC
Gtk+ has now merged a large number of cleanups to the API and a port will be required in the future.
Created attachment 337953 [details] [review] Rough Gtk+ 3.90 port This still installs GtkSourceView as v3 and not v4!
The plan for GSV 4 is described here: https://wiki.gnome.org/Projects/GtkSourceView/TransitionToGtkSourceView4 And there is the 4.0 target milestone in bugzilla with a list of bugs.
It would have been more useful if the deprecated GSV API was removed in a separate commit, to see only the port to GTK+ 3.90.
Review of attachment 337953 [details] [review]: Comment below. Porting to GTK+ 3.90 might require more work than expected. Btw we can already use GdkMonitor in GTK+ 3.22. ::: gtksourceview/gtksourcecompletion.c @@ +752,3 @@ + display = gtk_widget_get_display (GTK_WIDGET (completion->priv->main_window)); + monitor = gdk_display_get_primary_monitor (display); Here, we should take the GdkMonitor associated with main_window instead, with gdk_display_get_monitor_at_window(). @@ +757,2 @@ /* Determine on which side to place it */ + if (x + width + info_width >= monitor_geometry.width) Also, we need to take into account monitor_geometry.x. But the documentation doesn't say if monitor_geometry has the same coordinate space as the (x,y) for gtk_window_get_position() and gtk_window_move(). See also: https://blog.gtk.org/2016/07/15/future-of-relative-window-positioning/
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org. As part of that, we are mass-closing older open tickets in bugzilla.gnome.org which have not seen updates for a longer time (resources are unfortunately quite limited so not every ticket can get handled). If you can still reproduce the situation described in this ticket in a recent and supported software version, then please follow https://wiki.gnome.org/GettingInTouch/BugReportingGuidelines and create a new ticket at https://gitlab.gnome.org/GNOME/gtksourceview/-/issues/ Thank you for your understanding and your help.