Skip to content

Make the main window adaptive

Adrien Plazas requested to merge (removed):adaptive into mainline

Changes by @aplazas:

  • implements a full 3-panels mode,
  • drop support the old 2-panels mode,
  • use leaflets to let the window reach narrower widths,
  • adds a swipe-back gesture (when folded),
  • break navigation a bit, which is why it's tagged WIP.

Changes by @okias :

  • rebase & migration against latest mainline code & libhandy-1
  • added commit from Arnaud Ferraris to improve accounts-editor behaviour on phones

I'd love to get some feedback. :)

Please note I am not pretending this allows the window to reach small enough widths to fit a phone, nor this changes anything but the main window. This could come in later changes.

v2: adapted to libhandy-1

v3: dropped "non-main window" patches for now (I'll put them into separate MR w/ or w/out improvements, to keep them around) https://gitlab.gnome.org/okias/geary/-/commits/adaptive_dialogs

Actual issues:

  • won't open "compose" when in 1 panel mode
  • when middle (second) panel gets clicked in "3 panel mode", it opens new window
  • unselect folders and conversations when back button is pressed
  • unselect folders and conversations when swiping back
  • select first folder, conversation when unfolded
  • crashes when the GtkInspector is opened (doesn't happen when inside a dialog) (not us)
  • crashes some times on switch to a conversation (3-pane) (not us)
  • conversation list gets super wide before snapping to 3-pane mode. (This is because the conversation viewer is much wider then the other panels)
  • Keyboard navigation
  • Handle closing composer
  • port to HdyApplicationWindow (#1013 (closed))

See #141 (closed)

Edited by Michael Gratton

Merge request reports