Commit graph

13 commits

Author SHA1 Message Date
Michael Gratton
b91bf818bb Convert MainWindow to use MainWindowInfoBars for status problems
Sysnthesise a problem report and use a MainWindowInfoBar for displaying
account service status problems rather than using a custom info bar.
This lets us use the same infrastructure for displaying problem reports
and will enable capturing relevant logs at the time that the error
occurred.
2019-07-05 13:00:11 +10:00
Michael Gratton
ec14a0c98d Use a single timer to make sure relative email dates get updated
Move the timer from ConversationListStore to MainWindow, ensure that
both the list and the viewer get their dates updated, but only when
the main window is visible.
2019-03-23 15:26:03 +11:00
Michael Gratton
1807a187bd Unify three variants of "try reconnecting" strings
See #210
2019-02-11 08:19:43 +11:00
Michael Gratton
4ef81050f5 Show details for status-based service problems
This breaks out the problem details dialog out into a seperate class so
it can be used for both problem reports and status problems. Pass in any
service errors to the main window when updating account status, show a
Details button on the service status info bar and show the details
dialog when clicked.
2019-01-07 23:47:00 +11:00
Michael Gratton
f80d0416a9 Add and hook up Retry buttons to service status inforbars as apropriate 2019-01-01 22:29:07 +11:00
Michael Gratton
e7c6da9496 Add initial support for showing/hiding account status as it changes
Add infobars for offline, service problems, auth & cert problems. Show
offline and service problem infobars as needed.
2019-01-01 22:29:07 +11:00
Michael James Gratton
ae6aed8ae6 Fix rich text being pasted by Ctrl+V in plain text embedded composers
This restores normal key handling MainWindow:key_press_event when a
keyboard modifier (Ctrl, Shift, etc) is down, keeping the ordering hack
only for plain key presses, so that we can handle Ctrl+V before
WebKitGTK does, and hence letting us paste plain text default when rich
text is not enabled.

Fixes Bug 730495.
2018-07-27 09:51:04 +10:00
Niels De Graef
c72d7b28ac Implement in-app notifications. Bug 774442.
Implemented it for the mail sent-notification.

Signed-off-by: Niels De Graef <nielsdegraef@gmail.com>
2018-06-07 08:39:17 +10:00
Michael James Gratton
80680f280e Add initial support for using Gtk.InfoBars to display errors.
* src/client/components/main-window-info-bar.vala (MainWindowInfoBar):
  New class and UI file for displaying an info bar in the main window, as
  well as providing a way to show technical informartion if needed.

* src/client/components/main-window.vala (MainWindow): Add a Gtk.Frame
  and container to hold inforbar instances. Show it when showing an
  infobar, and hide it when there are none. Add show_infobar() method to
  provide a cromulent way of adding info bars.

* src/client/application/geary-controller.vala (BaseObject): Rather than
  bailing out on an account when an error occurs, display an info bar
  instead.

* ui/geary.css: Style the info bar frame to only show a border between
  main content and the info bars.
2017-11-12 22:18:51 +11:00
Michael James Gratton
919aea1516 Make MainWindow and ComposerWindow uniquely targetable via CSS.
Fixes Bug 746590.
2017-03-06 13:20:16 +11:00
Michael James Gratton
a8d1da7ee7 Fix infinite WebView key event chain when it doesn't handle a key press.
* src/client/components/main-window.vala (MainWindow): Convert
  on_key_press_event handler to override Gtk.Window's key_press_event
  virtual method. Reimplement that so that single keystroke shortcuts
  work, but also so GtkWindow.propagate_key_event only gets called once,
  and the WebKit event loop is avoided. See source comments for
  details. Also clean up shift up/down handling to not update when any
  GtkEntry or ComposerWebView is focused.
2017-02-01 00:41:44 +11:00
Niels De Graef
40f15d2ab2 Fix the headerbar not showing in Unity. Bug 775865. 2016-12-11 19:28:45 +01:00
Niels De Graef
776eebd48e Clean up MainWindow. Bug 775006.
* Use GtkTemplate to simplify layout.
* Prefix instance variables with this.
* Extract helper methods for clarity.

Signed-off-by: Niels De Graef <nielsdegraef@gmail.com>
2016-11-30 18:46:18 +11:00