Commit graph

220 commits

Author SHA1 Message Date
AsciiWolf
81f9bc9146 desktop: Rename appdata to metainfo
The latter is preferred nowadays and is used by other GNOME projects
2025-07-14 00:35:51 +02:00
Piotr Drąg
5077c0f728 Update POTFILES.in 2023-11-18 17:01:47 +01:00
Cédric Bellegarde
533a32e67b client: conversation-list: Migrate from TreeView to ListBox
- Replace ConversationListStore with ConversationListModel
- Replace GtkTreeView with GtkListBox
- Implement proper multiselection for ListBox
- Rework navigation to be touch friendly

Fork of John Renner <john@jrenner.net> merge request !698
2023-03-04 23:16:01 +00:00
Piotr Drąg
8bcf82ffcc Update POTFILES.in 2023-03-02 17:19:30 +01:00
Piotr Drąg
be56ff30ab Update POTFILES.in 2023-02-12 13:29:04 +01:00
Piotr Drąg
e9db9c8882 Update POTFILES.in 2022-10-01 14:52:36 +02:00
Piotr Drąg
157edd5570 Update POTFILES.in 2022-09-10 13:22:55 +02:00
Piotr Drąg
01e10d4410 Update POTFILES.in 2022-07-07 17:28:09 +02:00
Michael Gratton
0aa8ad6a05 client: Convert from shared conversation action widget to use multiple
Convert Components.ConversationActions to a widget that encapsulates
selectively visible conversations action groups. Use multiple instances
of that in preference to a single shared instance that gets re-parented
as the responsive UI adjusts.

Flatten the custom widget hierarchy a bit by merging the
`ConversationActionBar` and `ConversationHeaderbar` widgets into
`MainToolbar` itself.
2021-04-11 11:23:13 +10:00
Michael Gratton
7b994ece1d client: Move MainToolbar into the Components name space proper 2021-04-09 21:11:41 +10:00
Michael James Gratton
315b933c2a po: Remove removed source file from POTFILES.in 2021-04-04 12:44:32 +10:00
Michael Gratton
c331145fd3 client: Clean up database upgrade dialog implementation
Rename `UpgradeDialog` to `DatabaseManager` since it's not actually a
dialog, move it into the APplication package. Replace old Glade UI file
with a custom built dialog since it's trivial and so we can make it
modal for a main window.

Fixes #1007
2021-01-19 23:50:29 +11:00
Michael Gratton
67af1b2064 po/POFILES.in: Add missing files 2021-01-19 20:49:01 +11:00
Michael Gratton
20a4fd3ed2 Geary.ImapDb.SearchQuery: Rename to Geary.FtsSearchQuery
There's nothing IMAP-specific about the class, so move it to common
and rename to reflect what it is actually used for.
2021-01-19 20:48:17 +11:00
Piotr Drąg
b3834035c5 Update POTFILES.in 2021-01-09 16:16:56 +01:00
Michael Gratton
bf3a0e830b Merge branch 'adaptive_dialogs' into 'mainline'
Make account-editor adaptive

See merge request GNOME/geary!609
2021-01-07 21:54:57 +00:00
Julian Sparber
3530a804a1 compnents-info-bar: use custom infobar so that the buttons reflow 2020-11-18 16:50:18 +01:00
Julian Sparber
a30afb9e86 account-editor: replace remove confirm view with dialog 2020-11-17 13:45:57 +01:00
Michael James Gratton
d7af23201c Revert "Revert "Merge branch 'mjog/558-webkit-shared-process' into 'mainline'""
This reverts commit cbe6e0ba9b, which reinstates
commit e4a5b85698.

See !411 and !374
2020-10-13 00:02:02 +11: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
Michael Gratton
257f6fb901 Geary.Db.Connection: Split up into db and transaction-specific impls
Convert `Connection` into an interface, add two concrete implementations
that allow splitting up the database connection used generally, and the
connection passed to transactions. This allows limiting the API surface
that transactions have access to (so they can't e.g. create
sub-transactions) and perform transaction-specific work (e.g. better
logging when an error occurs).
2020-09-05 13:25:41 +10:00
Michael Gratton
a123983cb0 Geary.Imap: Remove COMPRESS command
Geary hasn't used compression for IMAP in a while now due to the
possibility of information leakage for secure connections, so remove
the command as well.
2020-09-02 14:54:42 +10:00
Michael Gratton
369b1f1a4d Composer.Widget: Split email body editing code out into separate widget
Create a new Composer.Editor widget and move all body web view and
action bar related code from the main widget there.

This helps to clearly delineate concerns of the two classes, it
substantially reduces the complexity of the main widget, and should
reduce the odds of further breakage like that fixed by the previous
commit less likely in the future.
2020-08-28 18:25:58 +10:00
Michael Gratton
72b79ece60 po/POTFILES.skip: Skip translating internal plugin descriptors
These plugins are never presented in the UI, hence should not be
translated.
2020-08-19 10:48:40 +10:00
Michael Gratton
ad9ea210e0 po/POTFILES.skip: General cleanup 2020-08-19 10:45:48 +10:00
Michael Gratton
193aaa2281 po/POTFILES.in: Add missing plugin source files 2020-08-18 18:09:26 +10:00
Michael Gratton
7230ea4e69 Plugin.ActionBar: New class added for plugins that use action bars 2020-08-18 16:32:26 +10:00
Michael Gratton
ec44114612 Plugin.Button: Rename to Actionable
Make the name generic so it can be used for things other than buttons
(e.g. menu items).
2020-08-18 16:32:26 +10:00
Michael Gratton
c2a1bae025 Geary.Memory.OffsetBuffer: Remove now unused class 2020-07-30 12:53:11 +10:00
Michael Gratton
4a469d7898 po/POTFILES.in: Add missing lines for email templates files 2020-04-23 14:11:55 +10:00
Michael Gratton
5f2d40bed9 Plugin: Add new Composer object and Application.new_composer method
This allows plugins to create and show new composers for a specific
account.
2020-04-18 18:37:35 +10:00
Michael Gratton
c4b44b41f6 Application.FolderContext: New class for aggregating client folder state
Add new `FolderContext` class to encapsulate client state and policy
about a specific engine folder. Use it for display name, icon and email
count bubble policy for now.

Update AccountContext to maintain a set of folder-policy instances per
account, and convert the folder list over to using the new objects.
2020-04-17 12:28:38 +10:00
Michael Gratton
9952143b30 Application.AccountContext: Break out unto standalone source file 2020-04-17 12:28:38 +10:00
Michael Gratton
8b3e01f11d Application: Rename plugin context objects to make their use clear 2020-04-17 12:28:38 +10:00
Michael Gratton
00f0fb9665 Geary.Logging: Move remaining code from api source to util source
Now that the flags code is gone, move the remaining code from
`src/engine/api/geary-logging.vala` into
`src/engine/util/util-logging.vala`, and remove the former source file.
2020-04-15 17:31:16 +10:00
Michael Gratton
8dcab7f306 Geary.SpecialFolderType: Rename class and related properties, signals
The `SpecialFolderType` was somewhat mis-named, since the special use
does not (in most cases) confer any special type, rather it's simply
defines what a particular folder is used /for/.

As such, rename the enum to to `Geary.Folder.SpecialUse`, moving it in
to the `Folder` class, since it relates specifically to folders, also
rename `Folder::special_folder_type` and
`Folder::special_folder_type_changed` reflect the above and not
duplicate the type name, and similarly rename
`Account::folders_special_type`.

Update the many call sites.
2020-03-31 16:15:57 +11:00
Michael Gratton
d2eec63cfb Util.International: Rename package to I18n to make fn calls less verbose 2020-03-31 15:30:00 +11:00
Michael Gratton
297a59ca80 Merge branch 'mjog/imap-connection-fixes' into 'mainline'
IMAP connection fixes

See merge request GNOME/geary!479
2020-03-30 11:35:18 +00:00
Michael Gratton
9bb7b77f17 Plugin: Add EmailExtension plugin extension type
Add EmailExtension plugin extenion with context object and
Application.EmailContext implementing it. Check for plugins with
this type in PluginManager and init/deinit their contexts as needed.
2020-03-30 21:05:00 +11:00
Michael Gratton
016998359b src/client/plugin: Rename plugin data files so they get translated
Since xgettext doesn't recognise .plugin files as desktop files,
rename them to `….plugin.desktop.in`. Add missing plugins to POFILES.in.
2020-03-30 19:51:01 +11:00
Michael Gratton
b46838f100 Update Geary.Imap.Capabilities handling
Move Capabilities to the api directory and make immutable.

Don't pass around out params to simply increment the revision and use a
field in ClientSession, just use the last capability instance. Ensure
after starting a TLS session capabilities are cleared. Add unit tests
for getting both implicit and explicity capaibilities when initiating
a client session.
2020-03-27 08:29:14 +11:00
Michael Gratton
f0c1dfe375 Application: Make Plugin.EmailStore impl usable by other cxts
Break out the plugin mail store implmeentation out of
NotificationContext into its own EmailStoreFactory class, so it can be
re-used by other plugin context types.
2020-03-21 17:02:08 +11:00
Michael Gratton
0c5c204d31 Plugin: Add new Button class to allow plugins to create buttons 2020-03-20 17:41:57 +11:00
Michael Gratton
0e7d30f8cb Plugins.FolderContext: Add support for showing folder info bars
Add Plugin.InfoBar to allow plugins to describe an info bar, add
methods to FolderContext to allow adding and removing them when
folders are displayed and implement them. Add a InfoBarStack to the
MainWindow for displaying folder info bars.
2020-03-20 17:41:57 +11:00
Michael Gratton
254d10782c plugins: Add support for folder plugins
Add new Plugin.FolderExtension plugin extenion interface, context
object and context object implementation. Populate the context object
when plugins implementing the extension are loaded, and destroy it
on unload.
2020-03-20 17:41:57 +11:00
Michael Gratton
feece66c6e MainWindowInfobar: Rename and derive from common InfoBar widget
Rename to Components.ProblemReportInfoBar to better describe what it
does, and to fit with the code convention for package and file names.

Derive from Components.InfoBar so we can drop the custom GTK Builder
file for it.
2020-03-20 17:08:46 +11:00
Michael Gratton
88516377ca Components.InfoBar: New subclass of Gtk InfoBars with labels 2020-03-20 17:08:46 +11:00
Michael Gratton
190c446499 Components.InfoBarStack: New class for stacking Gtk InfoBars 2020-03-20 17:08:46 +11:00
Piotr Drąg
1ec772ce7b Update POTFILES.in 2020-03-17 16:42:28 +01:00