We search for HTML-like tags in signatures, and don't do much as much
escaping if we find one. For .signature files detected to be HTML, we
insert them without any change. User-entered signatures get their
whitespace protected, even when HTML is detected. The existing code for
preserving whitespace doesn't work when there's already HTML code in the
text (it converts "<a b>" to "<a b>"), so instead we preserve the
whitespace with CSS.
A preview of the signature is added to the the UI. There's a TextView
and a WebView in a Stack, and we swap between them with a StackSwitcher.
Some of the packing details are changed so that these views are the
thing that expands when the dialog size changes.
https://bugzilla.gnome.org/show_bug.cgi?id=738895