Commit graph

6393 commits

Author SHA1 Message Date
Michael Gratton
2357f8fd01 Merge branch 'mjog/default-development-build' into 'mainline'
Set default build profile to development

See merge request GNOME/geary!597
2020-10-13 08:00:26 +00:00
Yuri Chornoivan
cef6a02953 Update Ukrainian translation 2020-10-12 17:41:48 +00:00
Michael Gratton
6dade0e4f1 Merge branch 'mjog/libhandy-warning-workaround' into 'mainline'
Application.Client: Work around libhandy bug when opening main windows

See merge request GNOME/geary!606
2020-10-12 13:08:27 +00:00
Michael Gratton
0010550ad6 Application.Client: Work around libhandy bug when opening main windows
GNOME/libhandy#305
2020-10-12 23:24:10 +11:00
Michael Gratton
d0fff267f8 Merge branch 'adaptive' into 'mainline'
Make the main window adaptive

Closes #442

See merge request GNOME/geary!401
2020-10-12 10:41:32 +00:00
Julian Sparber
70a40893a3 action-bar: Add an action bar to the conversations list (2-panel)
This moves the actions from the headerbar to the action bar at the
bottom of the conversations list when multiple conversations are
selected. This changes is needed so that the user can still interact
with the conversations when folded.
This also hides the actions from the Headerbar and action bar when
no conversation is selected.
2020-10-12 11:03:55 +02:00
Julian Sparber
98017cfb39 main-toolbar: Create object containing conversation actions
This creates a new object that contain the 4 groups of actions that used
to be in the conversation-viewer headerbar.
This allows the widgets to be moved to differen locations, e.g. to an
action bar that will be added in a later commit.
2020-10-12 11:03:04 +02:00
Anders Jonsson
96755ab09e Update Swedish translation
(cherry picked from commit a7f9f7a27cf8c0d12e6af2e7b04bb89576aff93b)
2020-10-10 12:07:37 +00:00
Julian Sparber
f8f223da46 main-window: Block forward navigation when viewer is empty
Empty viewer includes: - no selected conversation
                       - no conversation in folder
                       - selected more then one conversation
2020-10-10 10:41:49 +02:00
Julian Sparber
d6c546e2d5 composer: close the composer when navigating back 2020-10-10 10:41:49 +02:00
Julian Sparber
0b743ab0d3 conversation-list: use shift+activate to open conversation in new window
Open on shift+double click and shift+space/enter the selected
conversation in a new window.
2020-10-10 10:41:49 +02:00
Julian Sparber
1f2896e9a7 composer: Switch leaflet to composer when folded 2020-10-10 10:41:49 +02:00
Adrien Plazas
d97d86cbc7 toolbar header group 2020-10-10 10:41:49 +02:00
Julian Sparber
49823ec054 application-main-window: add navigation via signle click on folder/conversation
Opening a conversation in a new window is currently disabled, because we
need a new key/button combination.
2020-10-10 10:41:49 +02:00
Julian Sparber
28a19775b8 main-toolbar: Add back buttons for leaflet navigation 2020-10-10 10:41:49 +02:00
Julian Sparber
115b055e7b main-window: Add leaflet navigation with Alt+Arrow keys 2020-10-10 10:41:49 +02:00
Adrien Plazas
28e3192674 application-main-window: Sync the leaflets' swipe state
This keeps the swiping state of the leaflets in sync.
2020-10-10 10:41:49 +02:00
Adrien Plazas
2139636d82 main-toolbar: Add add_to_swipe_groups()
This will be used to sync the swipe state of the leaflets.
2020-10-10 10:41:49 +02:00
Adrien Plazas
12a7101ba5 Use leaflets in the UI
There is no way to navigate into the app, but it's a start.

v2: replace expand with child vexpand
2020-10-10 10:41:49 +02:00
Adrien Plazas
edfb1a2cf3 application-main-window: Sync the pane size request
Bind each pane's elements minimum size requests via size groups.
2020-10-10 10:41:49 +02:00
Adrien Plazas
7d4a61d431 main-toolbar: Add add_to_size_groups()
This will be used to sync requests of the panes.
2020-10-10 10:41:49 +02:00
Adrien Plazas
94ab7e5ac6 main-toolbar: Split the folder header
Split it into a folder header and a conversations header. This is needed
to properly split the 3 panes.

Fixes https://gitlab.gnome.org/GNOME/geary/issues/442.
2020-10-10 10:41:49 +02:00
Adrien Plazas
850efb7238 application-main-window: Move the conversations searchbar
Move it at above the conversations but not above the folders. This is
needed to properly split the 3 panes.
2020-10-10 10:41:49 +02:00
Adrien Plazas
fb311e1c82 Drop the 2-panes mode
This won't be needed to save horizontal space when using HdyLeaflet, and
it would make porting to it harder.
2020-10-10 10:41:49 +02:00
Adrien Plazas
a1f74d24ff Drop saving the paned width
This is needed to replace GtkPaned by HdyLeaflet. This breaks syncing
the size of the headerbar with the rest of the window, it will be fixed
in a later commit.
2020-10-10 10:41:49 +02:00
Efstathios Iosifidis
da9ed07512 Update Greek translation
(cherry picked from commit 2cb7aa0394c351338fbdd110ec381479e24107ea)
2020-10-07 08:09:20 +00:00
Jordi Mas
d551275345 Fix accute in Catalan translation 2020-10-07 08:15:19 +02:00
Michael Gratton
5819012d90 Revert "Merge branch 'mjog/ci-3-38' into 'mainline'"
This reverts merge request !598
2020-10-04 10:41:40 +00:00
Kukuh Syafaat
d2a0694866 Update Indonesian translation 2020-10-04 08:34:11 +00:00
Michael Gratton
1983bbfaf7 Merge branch 'mjog/ci-3-38' into 'mainline'
org.gnome.Geary.yaml: Update branches to 3.38

See merge request GNOME/geary!598
2020-10-04 08:03:46 +00:00
Michael Gratton
44b1724606 build: Update appropriate branches to stable and CI image 2020-10-04 18:24:18 +11:00
Michael Gratton
436c22a4ad README.md: Minor improvements 2020-10-03 23:34:31 +10:00
Michael Gratton
c240884f52 Rename INSTALLING to BUILDING.md
Renamed since most people want to know how to build Geary when they
get its source, not install it. Use MD extension to get formatting in
gitlab.
2020-10-03 23:34:31 +10:00
Michael Gratton
456b6cd55a Application.Client: Sort external const alphabetically 2020-10-03 23:34:31 +10:00
Michael Gratton
23bd2507a7 build: Update how build profiles are handled
Default to development build profile if a `.git` directory exists, else
error out of build configuration.

This make `auto` the default build profile and if set and a `.git`
directory is present default to `development`, else raise an error.
Add some docs to INSTALL describing build profiles and update how they
are used in the source to match.
2020-10-03 23:34:31 +10:00
Michael Gratton
aaa2934acf meson_options.txt: Update to use meson best practices and clean up
Convert to use meson features for features. Reorganise and rename
options for consistency. Make descriptions a bit less redundant.
2020-10-03 23:34:31 +10:00
Michael Gratton
03f05c6448 Merge branch 'mjog/986-namespace-assert' into 'mainline'
Disconnect from IMAP client sessions when logging out

Closes #986

See merge request GNOME/geary!586
2020-10-01 23:09:53 +00:00
Michael Gratton
d3badedad7 Merge branch 'mjog/1004-missing-labels' into 'mainline'
client: Fix not all folders being displayed in additional main windows

Closes #1004

See merge request GNOME/geary!594
2020-09-29 22:35:03 +00:00
Yosef Or Boczko
151f5ee66c Update Hebrew translation
(cherry picked from commit 710dd09e1bfbc8ce3fa7ec848cecc276c7e53dbe)
2020-09-29 14:05:53 +00:00
Michael Gratton
bfbc7f5d70 client: Fix not all folders being displayed in additional main windows
Application.MainWindow: Sort folders already available in an account
by path so that FolderListTree is able to add them all successfully.

Application.FolderContext: Implement Gee.Comparable so instances can
be sorted.

Fixes #1004
2020-09-29 23:03:31 +10:00
Michael Gratton
7dd098fc16 Merge branch 'mjog/989-flatpak-font-workaround' into 'mainline'
FormattedConversationData: Fix font settings being ignored under Flatpak

See merge request GNOME/geary!592
2020-09-28 13:01:06 +00:00
Michael Gratton
836a9ad384 FormattedConversationData: Fix font settings being ignored under Flatpak
Get the interface font from Gtk.Settings instead of GLib.Settings since
the latter can't actually access desktop settings under Flatpak.

Partial fix for #989

See also GNOME/glib#2213
2020-09-28 22:31:46 +10:00
Michael Gratton
af74b4577f Merge branch 'mjog/985-client-api-buld-failure' into 'mainline'
build: Fix build failure due to missing client API

Closes #985

See merge request GNOME/geary!590
2020-09-27 23:19:10 +00:00
Michael Gratton
b5abd3f966 build: Fix build failure due to missing client API
Don't use client lib vala ags when building the web process extension,
since that will cause it to also write a VAPI with the same name as
the client lib, causing the build to fail if the web process side wins
that race.

Fixes #985
2020-09-28 08:53:35 +10:00
Michael Gratton
d89ee32629 Merge branch 'mjog/composer-fixes' into 'mainline'
Misc composer fixes

See merge request GNOME/geary!587
2020-09-27 13:37:03 +00:00
Michael Gratton
70186163e8 Composer.Widget: Fix critical when immediately detaching a new composer
New composers have no associated GLib Application instance, so when the
main window is already showing a composer and another is opened, the
new composer has no application to pass its window.

Fix by requiring `Composer.detach` be passed an application instance
and find an appropriate instance at each call site.
2020-09-27 22:46:40 +10:00
Michael Gratton
bd85c4f1a8 Composer.Widget: Fix criticals when "mailto:" has empty body 2020-09-27 19:57:52 +10:00
Michael Gratton
41be8693d4 Geary.Imap.ClientSession: Treat logout as disconnect
Convert `get_protocol_state` to an automatic property, so that rather
than requiring explcit signals for lifecycle events, a GObject notify
signal can be used instead.

Convert disconnect signal to a property so it can be accessed if needed.

Convert code listening to the disconnect signal to listen to notify
signals for `protocol_state` instead, and hence also treat the session
as disconnected when a logout is in progress.

Fixes #986
2020-09-27 17:38:10 +10:00
Michael Gratton
ed4ba33127 Geary.State.Machine: Support GObject notify signal for state changes
Modernise the API a bit by using properties instead of explicit
getters/setters, an hence support GObject notify signals when the
state property changes.
2020-09-27 16:18:26 +10:00
Michael Gratton
ac425f57b1 Geary.Imap.SessionObject: Rename claim_session to get_session
Don't over-sell what it does.
2020-09-27 16:18:26 +10:00