No description
Find a file
Michael James Gratton 96ffcdb608 Split composer web view up into multiple parts.
This lets us implement changing signatures and deleting bottom-quoted
messages without having to reload the whole view, and makes it possible
to target only the user's content when modifying for send, etc.

* src/client/composer/composer-web-view.vala (ComposerWebView): Move
  composer CSS into composer-web-view.css resource file, load it when
  loading JS resource and add it to the view's user content manager.
  (ComposerWebView::load_html): Split up body, signature and quote into a
  DIV container for each.
  (ComposerWebView::linkify_content): Replaced with ::clean_content,
  which will also tidy up internal markup before sending. Update call
  site and unit test.

* src/engine/rfc822/rfc822-utils.vala (Geary.RFC822.Utils): Remove some
  more obtrusive white space when sending replies/forwards.

* test/client/composer/composer-web-view-test.vala,
  test/js/composer-page-state-test.vala: Update tests to expect new HTML
  and text output from ComposerWebView and use of individual parts for
  composer markup.

* ui/composer-web-view.js (ComposerPageState): Replace messageBody
  property and uses with bodyPart, signaturePart and quotePart. Set these
  content-editable on load. Move listeners from messageBody back to the
  document.body so they also listen for events on the additional
  parts. Keep track of text cursor location within the parts and set a
  class if so, to work around the lack of :focus-inside support.
  (ComposerPageState::updateSignature): Implement by updating the inner
  content of the signature part.
  (ComposerPageState::deleteQuotedMessage): Implement by removing the
  quote part from the DOM tree.
  (ComposerPageState::containsAttachmentKeyword): Consider only the
  bodyPart when scanning for attachments, remove hacks for ignoring the
  signature any any quoted message.
  (ComposerPageState::linkifyContent): Mirror ClientWebView change and
  replace with ::cleanContent. Ensure existing parts have contenteditable
  and focus class removed, remove signature and quote parts if empty.
  (ComposerPageState::getHtml): Generate HTML using clones of the three
  parts, so we can rmeove contenteditable and focus classes without
  modifying the actual DOM.
  (ComposerPageState::selectionChanged): Update focus class on parts as
  needed.
2017-02-01 00:41:45 +11:00
bindings Reenable basic deceptive link highlighting. 2017-02-01 00:41:44 +11:00
cmake Use "org.gnome.Geary" for the app ID. Bug 766196. 2016-12-08 12:53:52 +01:00
debian Set an explcit minimum version requirmeent for libsoup. 2016-10-04 10:58:17 +11:00
desktop Re-enable spell checking in composer. 2017-02-01 00:41:44 +11:00
help Update Polish translation 2016-10-09 09:23:49 +02:00
icons Use GTK 3.14 rtl icon support 2016-08-06 11:40:02 +10:00
po Add some missing files and fix some ordering issues in po/POTFILES.in. 2017-02-01 00:41:44 +11:00
sql Rebuild MessageSearchTable. Database version 25. Bug 772522. 2016-10-22 07:34:30 +11:00
src Split composer web view up into multiple parts. 2017-02-01 00:41:45 +11:00
test Split composer web view up into multiple parts. 2017-02-01 00:41:45 +11:00
ui Split composer web view up into multiple parts. 2017-02-01 00:41:45 +11:00
.gitattributes Fix git archive to not include debian directory 2013-10-03 16:22:04 -07:00
.gitignore Add some git and deb build artefacts to .gitignore 2016-05-13 11:52:24 +10:00
AUTHORS Moving Robert Schroll to AUTHORS file and About box 2013-03-18 18:43:01 -07:00
cmake_uninstall.cmake.in Closes #4982 Closes #4964 Switched to CMake, added an installer/uninstaller 2012-04-23 18:54:26 -07:00
CMakeLists.txt Don't build and run tests by default. 2017-02-01 00:41:45 +11:00
configure Valadoc generation fixes & updates. 2017-01-02 13:49:18 +11:00
configure.in Restore configure.in to fix building with Valencia. 2012-07-20 11:41:08 -07:00
COPYING Added COPYING, AUTHORS, and MAINTAINERS files: #3697. 2011-06-06 15:23:04 -07:00
COPYING.icons Remove now-unused mail-spam-symbolic icon. Bug 737862. 2016-07-14 13:06:52 +10:00
COPYING.snowball Basic search table implementation; fix #6766 2013-05-17 15:32:52 -07:00
geary.doap Update desktop resources to be spec compliant & consistent with the wiki. 2016-09-05 12:14:29 +10:00
INSTALL Add Enchant to build dependencies. 2016-07-29 10:34:33 +10:00
Makefile.in Stop cmake warning that we are using an internal target name. 2016-12-26 10:31:02 +10:30
NEWS Fix incorrect date in NEWS 2016-05-17 12:33:01 +10:00
README Transfer Yorba copyrights to Software Freedom Conservancy 2016-05-06 08:33:37 -04:00
THANKS Update to 0.11.0 2016-05-15 19:39:26 +10:00

    Geary Email Client
    ------------------

  * Introduction

    Geary is an IMAP email client built for the GNOME desktop environment.  It
    allows you to read and send email with a simple, modern interface.

    Visit https://wiki.gnome.org/Apps/Geary to read about the current state of
    Geary's development and to make sure you're running the latest version.


  * Installation & Licensing

    Please consult the INSTALL and COPYING files for more information.


  * Quick Start

    The first time Geary is launched, it will prompt for your account
    information.  Note that your email password is stored securely in the
    Gnome Keyring.

    Geary will then begin downloading messages in your inbox and other
    folders.

  * Contacting Geary Developers

    Geary wiki:                 https://wiki.gnome.org/Apps/Geary

    We also encourage you to join the Geary mailing list.  See
    https://mail.gnome.org/mailman/listinfo/geary-list for details.



    Copyright 2016 Software Freedom Conservancy Inc.