* ui/conversation-viewer.ui,
src/client/conversation-viewer/conversation-viewer.vala: next-match and
previous-match signals are only available in GTK+ >= 3.16.
* ui/empty-placeholder.ui: Drop declared GTK+ requirement to 3.14.
* ui/geary.css: The :not() pseudeo class is only available in GTK+ >= 3.20.
* Use GtkTemplate to simplify layout.
* Prefix instance variables with this.
* Extract helper methods for clarity.
Signed-off-by: Niels De Graef <nielsdegraef@gmail.com>
This commit reverts Unity workaround removal (commit 7b37e26; bug
738899).
However, in contrast to 7b37e26, it does not:
* set clock format to the one used for Unity clock indicator
* Use global GearyApplication.instance variable
Additionally, it makes detach button displayed always on the right while
running in Unity.
* src/client/conversation-viewer/conversation-message.vala
(ConversationMessage::clean_html_markup): Check the image buffer
actually has some bytes before processing it.
* src/client/conversation-viewer/conversation-list-box.vala (EmailRow::expand):
Check to see if the message's web views report a valid height and queue
a resize if not, before expanding the row.
Bug 773054
* src/client/conversation-viewer/conversation-list-box.vala
(ConversationListBox::show_loading), ui/conversation-viewer.ui: Specify
a width and height request for the spinners, ensure they are centered.
ConversationListBox was scrolling to the first expanded row in insertion
order, not necessarily the first in display order. This fixes that.
* src/client/conversation-viewer/conversation-list-box.vala
(ConversationListBox::load_conversation): Compare expanded rows by sort
order when inserting them, rather than by just taking the first one
encountered. Delay loading it first until all have been inserted, so we
know we are actually loading the first one first.
* src/engine/imap-db/imap-db-folder.vala
(Folder::do_merge_email_in_search_table): Instead of doing an UPDATE,
which will lkely corrupt MessageSearchTable, do a SELECT/DELETE/INSERT.
Hi Michael,
When you write a draft and close it (in embed or detached window),
label of buttons "Discard" and "Close" are inverted. This patch fix
it.
Thanks,
Colin
* src/client/application/geary-controller.vala
(GearyController::archive_or_delete_selection_async): Don't modify the
focus after archiving/trashing/deleting.
* src/client/components/pill-toolbar.vala, ui/composer-headerbar.ui,
ui/composer-widget.ui: Ensure all toolbar buttons are focusable but
have focus-on-click disabled.
Bug 773054
* src/client/conversation-list/conversation-list-view.vala: Disable all
selection when the user is causing the selection will change. This
prevents the GtkTreeView impl from selecting the next row after rows
are removed as a result of user action, but not for some other reason,
i.e. the server removing a message.
* src/client/application/geary-controller.vala: Call new
ConversationListView::set_changing_selection as needed when moving
messages.
* src/client/conversation-list/conversation-list-store,
src/engine/app/app-conversation-monitor.vala: Rename
conversation_removed signal to conversations_removed and change its
param to be a collection of conversations, so we can re-enable
ConversationListView selection only after all conversations have been
removed. Update call sites.
* src/client/conversation-list/conversation-list-view.vala
(ConversationListView): Don't use ::get_all_selected_paths() to
determine if the selection is empty, just count the selected rows
instead. Also, use Gdk.EVENT_PROPAGATE constants for clarity.
Bug 773054.
* src/client/conversation-list/conversation-list-view.vala
(ConversationListView::on_scan_completed): Artificially fire
conversations_selected so that the controller knows that no
conversations have been selected after the folder has changed, and
hence gets the conversation viewer to display the "none selected" ui.