Skip to content

Port to GTK4

Evan Welsh requested to merge wip/ewlsh/gtk4 into master

Mocks: https://gitlab.gnome.org/Teams/Design/app-mockups/-/blob/master/weather/weather.png

Dependency updates

  • Drop Libhandy for Libadwaita v1
  • Port to libgweather 4 courtesy of @ebassi's work
  • GNOME Desktop is dropped because we no longer use the clock widget
  • We still set the org.gnome.GWeather gsettings for backwards compatibility but we read (and write) from org.gnome.GWeather4

Changes

  • Port the LocationEntry code to Weather (libgweather dropped it)
    • Port Geolocation code
    • Separate model management for selected and searching
      • Move string filtering into JS for performance
      • Avoid recursively populating a model with the entire World and 4 strings per location
        • Strings are cached and we only select cities and weather stations
  • Port to ESM
  • Port thermometer view to render nodes
  • Fix style regressions
  • Support dark mode
  • Adapt to GTK4 a11y APIs
  • Move more UI code into templating
Edited by Evan Welsh

Merge request reports