2013-06-26 14:35:49 -07:00
|
|
|
/**
|
|
|
|
|
* Background colors associated with received emails:
|
|
|
|
|
* recv-normal: white
|
|
|
|
|
* recv-quoted: #e8e8e8
|
|
|
|
|
* recv-collapsed: #f5f5f5
|
|
|
|
|
*
|
|
|
|
|
* Background colors associated with sent emails:
|
2013-08-02 17:51:43 -07:00
|
|
|
* sent-normal: white
|
|
|
|
|
* sent-quoted: #e8e8e8
|
|
|
|
|
* sent-collapsed: #f5f5f5
|
2013-06-26 14:35:49 -07:00
|
|
|
*/
|
2012-06-13 10:43:41 -07:00
|
|
|
@media print {
|
|
|
|
|
|
|
|
|
|
body {
|
|
|
|
|
background-color: white !important;
|
|
|
|
|
}
|
|
|
|
|
.avatar, .button, .starred {
|
|
|
|
|
display: none !important;
|
|
|
|
|
}
|
|
|
|
|
.email {
|
|
|
|
|
display: none !important;
|
|
|
|
|
}
|
|
|
|
|
.email.print {
|
|
|
|
|
display: inline-block !important;
|
|
|
|
|
background-color: white !important;
|
|
|
|
|
}
|
|
|
|
|
.email.print .body {
|
|
|
|
|
display: block !important;
|
|
|
|
|
background-color: white !important;
|
|
|
|
|
}
|
|
|
|
|
.email.print .preview {
|
|
|
|
|
display: none !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
2014-05-21 20:58:51 -07:00
|
|
|
/* By default, tables reset the font properties to "normal" */
|
|
|
|
|
table {
|
|
|
|
|
font-size: inherit;
|
|
|
|
|
}
|
|
|
|
|
|
2012-06-13 10:43:41 -07:00
|
|
|
body {
|
|
|
|
|
margin: 0 !important;
|
|
|
|
|
padding: 0 !important;
|
2014-05-21 20:58:51 -07:00
|
|
|
font: caption;
|
2013-04-23 11:58:42 -07:00
|
|
|
-webkit-user-select: none;
|
|
|
|
|
-webkit-user-drag: none;
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
2012-09-27 11:35:30 -07:00
|
|
|
|
|
|
|
|
a {
|
|
|
|
|
color: #08c;
|
|
|
|
|
}
|
|
|
|
|
|
2012-06-13 10:43:41 -07:00
|
|
|
td, th {
|
|
|
|
|
vertical-align: top;
|
|
|
|
|
}
|
|
|
|
|
hr {
|
|
|
|
|
background-color: #999;
|
|
|
|
|
height: 1px;
|
|
|
|
|
border: 0;
|
|
|
|
|
margin-top: 15px;
|
|
|
|
|
margin-bottom: 15px;
|
|
|
|
|
}
|
|
|
|
|
|
2013-04-23 11:58:42 -07:00
|
|
|
.body, .header, .preview {
|
|
|
|
|
-webkit-user-select: auto;
|
|
|
|
|
-webkit-user-drag: auto;
|
|
|
|
|
}
|
|
|
|
|
.shower, .hider {
|
|
|
|
|
-webkit-user-select: none;
|
|
|
|
|
-webkit-user-drag: none;
|
|
|
|
|
}
|
|
|
|
|
|
2012-06-13 10:43:41 -07:00
|
|
|
.button {
|
|
|
|
|
border: 1px transparent solid;
|
2012-09-27 11:35:30 -07:00
|
|
|
border-radius: 2.5px;
|
2012-06-13 10:43:41 -07:00
|
|
|
cursor: pointer;
|
|
|
|
|
padding: 4px;
|
|
|
|
|
margin-top: 7px;
|
2013-04-23 11:58:42 -07:00
|
|
|
text-align: center;
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
|
|
|
|
.button * {
|
2013-04-18 14:00:02 -07:00
|
|
|
pointer-events: none;
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
|
|
|
|
.button:hover {
|
2012-09-27 11:35:30 -07:00
|
|
|
border-color: rgba(0,0,0,0.18);
|
|
|
|
|
box-shadow: inset 0px 0px 1px rgba(255,255,255,0.8);
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
|
|
|
|
.button:active {
|
2012-09-27 11:35:30 -07:00
|
|
|
border-color: rgba(0,0,0,0.20);
|
|
|
|
|
background-color: rgba(0,0,0,0.05);;
|
2012-06-13 10:43:41 -07:00
|
|
|
padding: 5px 3px 3px 5px;
|
2012-09-27 11:35:30 -07:00
|
|
|
box-shadow: inset 0px 0px 1px rgba(0,0,0,0.05);
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
|
|
|
|
|
2014-05-15 16:33:25 -07:00
|
|
|
.email, .composer_embed {
|
2013-01-28 17:29:38 -08:00
|
|
|
border: 1px rgba(0,0,0,1) solid;
|
2013-06-26 14:35:49 -07:00
|
|
|
background-color: white;/* recv-normal */
|
2012-06-13 10:43:41 -07:00
|
|
|
color: black;
|
2013-01-28 17:29:38 -08:00
|
|
|
box-shadow: 0 3px 11px rgba(0,0,0,1);
|
2013-08-27 18:57:43 -07:00
|
|
|
display: block;
|
2012-06-13 10:43:41 -07:00
|
|
|
word-wrap: break-word;
|
|
|
|
|
width: 100%;
|
|
|
|
|
box-sizing:border-box;
|
2012-09-27 11:35:30 -07:00
|
|
|
margin-top: 16px;
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
2012-09-27 11:35:30 -07:00
|
|
|
|
2014-05-15 16:33:25 -07:00
|
|
|
.composer_embed {
|
2014-06-11 13:12:04 -04:00
|
|
|
height: 300px;
|
Separate composer widget from composer window
In anticipation of inline composition, we need the composer widget to be
separate from the window in which it lives. We introduce a new
interface, ComposerContainer, that the thing that holds to
ComposerWidget must implement.
Separate composer widget from composer window
In anticipation of inline composition, we need the composer widget to be
separate from the window in which it lives. We introduce a new
interface, ComposerContainer, that the thing that holds to
ComposerWidget must implement.
Basic inline composition
Many of the details don't work, or don't work well, but the basics are
in place.
Allow only a single inline composition at a time
With this, we introduce a dialog when you would try to add another. We
also use this when changing the selected conversation with a composer
open.
Compose new messages inline, with no conversation selected
Hook up composer accelerators only when focus is in composer editor
It would be nice to only activate these accelerators when the composer
has focus generally, but that doesn't seem to be easy to detect.
Only disconnect accelerators if they're connected
Maintain focus when composer is popped out
The selection isn't, though.
Fix Tab focus for embedded composer
There are two things that needed to be fixed: The tab key doesn't
usually advance focus for embedded widgets (huh?), so we handle tab
presses by hand for ComposerWidgets. Also, the EmailEntrys do their own
tab handling, which needs to know about the composer widget, not the
toplevel widget in the embedded case.
Remove close() from ComposerContainer interface
I don't think it was actually doing anything, and it conflicts with the new close() method of Gtk.Window.
2014-02-11 00:26:14 -05:00
|
|
|
}
|
|
|
|
|
|
2013-06-26 14:35:49 -07:00
|
|
|
.email.sent {
|
2013-08-02 17:51:43 -07:00
|
|
|
background-color: white;/* sent-normal */
|
2013-06-26 14:35:49 -07:00
|
|
|
}
|
|
|
|
|
|
2012-06-13 10:43:41 -07:00
|
|
|
.email .starred {
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
.email .unstarred {
|
|
|
|
|
display: block;
|
|
|
|
|
}
|
|
|
|
|
.email.starred .starred {
|
|
|
|
|
display: block;
|
|
|
|
|
}
|
|
|
|
|
.email.starred .unstarred {
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
2014-05-15 16:33:25 -07:00
|
|
|
.email.read, #multiple_messages .email, .composer_embed {
|
2013-01-28 17:29:38 -08:00
|
|
|
border-color: rgba(0,0,0,0.4);
|
|
|
|
|
box-shadow: 0 3px 11px rgba(0,0,0,0.21);
|
|
|
|
|
}
|
|
|
|
|
.email.animate {
|
|
|
|
|
-webkit-transition: border-color 3s ease;
|
|
|
|
|
-webkit-transition: box-shadow 3s ease;
|
|
|
|
|
}
|
2014-01-29 18:18:31 -08:00
|
|
|
|
|
|
|
|
.email .email_warning {
|
|
|
|
|
display: none;
|
|
|
|
|
padding: 1em;
|
|
|
|
|
background-color: #fcc;
|
|
|
|
|
text-align: center;
|
|
|
|
|
}
|
|
|
|
|
|
2012-06-13 10:43:41 -07:00
|
|
|
.email_box {
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
-webkit-box-sizing: border-box;
|
|
|
|
|
width: 100% !important;
|
|
|
|
|
}
|
|
|
|
|
.email_container {
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
}
|
|
|
|
|
.email_container .header_container {
|
|
|
|
|
padding: 15px;
|
|
|
|
|
}
|
2012-09-27 11:35:30 -07:00
|
|
|
|
|
|
|
|
.email_container .header_container a:hover * {
|
|
|
|
|
color: #08c;
|
|
|
|
|
}
|
|
|
|
|
|
2012-06-13 10:43:41 -07:00
|
|
|
.email_container .header_container .button_bar {
|
|
|
|
|
float: right;
|
|
|
|
|
margin-top: -6px;
|
|
|
|
|
}
|
|
|
|
|
.email_container .header_container .button_bar > .button {
|
|
|
|
|
float: left;
|
|
|
|
|
}
|
|
|
|
|
.email_container .header_container .button_bar > .button > .icon {
|
|
|
|
|
width: 16px;
|
|
|
|
|
height: 16px;
|
|
|
|
|
}
|
|
|
|
|
.email_container .header_container .preview {
|
2014-05-21 20:58:51 -07:00
|
|
|
font-size: 80%;
|
2012-06-13 10:43:41 -07:00
|
|
|
color: #777;
|
|
|
|
|
white-space: nowrap;
|
|
|
|
|
text-overflow: ellipsis;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
}
|
|
|
|
|
.avatar {
|
|
|
|
|
display: none;
|
|
|
|
|
image-rendering: optimizeQuality;
|
|
|
|
|
}
|
2012-09-27 11:35:30 -07:00
|
|
|
|
2012-06-13 10:43:41 -07:00
|
|
|
.avatar[src^=file], .avatar[src^=http] {
|
|
|
|
|
display: inline;
|
|
|
|
|
width: 48px;
|
|
|
|
|
height: 48px;
|
2012-09-12 10:11:52 -07:00
|
|
|
float: left;
|
2012-09-27 11:35:30 -07:00
|
|
|
border-radius: 5px;
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
2012-09-27 11:35:30 -07:00
|
|
|
|
2013-05-07 13:59:54 -07:00
|
|
|
body:not(.nohide) .email.hide .header_container .avatar {
|
2012-09-27 11:35:30 -07:00
|
|
|
width: 32px;
|
|
|
|
|
height: 32px;
|
|
|
|
|
margin-right: 12px;
|
|
|
|
|
border-radius: 2.5px;
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.email .body {
|
|
|
|
|
border-top: 1px solid #999;
|
2012-09-27 11:35:30 -07:00
|
|
|
margin: 16px;
|
2012-06-13 10:43:41 -07:00
|
|
|
margin-top: 0;
|
2012-09-27 11:35:30 -07:00
|
|
|
padding-top: 16px;
|
2012-06-29 14:24:20 -07:00
|
|
|
overflow-x: auto;
|
|
|
|
|
overflow-y: hidden;
|
2014-02-13 15:01:17 -08:00
|
|
|
position: relative; /* in case anything inside is positioned */
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
|
|
|
|
|
2013-04-22 14:14:11 -07:00
|
|
|
.email .remote_images {
|
|
|
|
|
display: none;
|
|
|
|
|
margin: 0 16px;
|
|
|
|
|
border: 1px solid #999;
|
|
|
|
|
border-bottom: none;
|
|
|
|
|
padding: 1em;
|
|
|
|
|
background: #ffc;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.email .remote_images .close_show_images {
|
|
|
|
|
float: right;
|
|
|
|
|
margin-top: -0.67em;
|
|
|
|
|
margin-right: -0.67em;
|
|
|
|
|
}
|
|
|
|
|
|
2014-01-06 18:32:09 -08:00
|
|
|
.email .replaced_inline_image {
|
2013-08-06 17:19:16 -07:00
|
|
|
max-width: 100%;
|
|
|
|
|
display: block;
|
|
|
|
|
margin-top: 1em;
|
|
|
|
|
}
|
|
|
|
|
|
2013-05-28 18:28:33 -07:00
|
|
|
.email .link_warning {
|
|
|
|
|
display: inline-block;
|
|
|
|
|
position: absolute;
|
|
|
|
|
margin-top: -1em;
|
|
|
|
|
border: 1px solid #999;
|
|
|
|
|
padding: 1em;
|
|
|
|
|
background: #ffc;
|
|
|
|
|
box-shadow: 0 3px 11px rgba(0,0,0,0.21);
|
|
|
|
|
/* Reset styles */
|
2014-05-21 20:58:51 -07:00
|
|
|
font: caption;
|
2013-05-28 18:28:33 -07:00
|
|
|
color: black;
|
|
|
|
|
}
|
|
|
|
|
.email .link_warning a {
|
|
|
|
|
color: #08c;
|
|
|
|
|
}
|
|
|
|
|
.email .link_warning span {
|
|
|
|
|
display: block;
|
|
|
|
|
padding-left: 1em;
|
|
|
|
|
}
|
|
|
|
|
.email .link_warning .close_link_warning {
|
|
|
|
|
float: right;
|
|
|
|
|
margin-top: -0.67em;
|
|
|
|
|
margin-right: -0.67em;
|
|
|
|
|
}
|
|
|
|
|
|
2012-06-13 10:43:41 -07:00
|
|
|
@media screen {
|
|
|
|
|
|
|
|
|
|
body {
|
|
|
|
|
background-color: #ccc !important;
|
|
|
|
|
}
|
2013-06-26 14:35:49 -07:00
|
|
|
body:not(.nohide) .email.hide,
|
|
|
|
|
body:not(.nohide) .email .email.hide {
|
|
|
|
|
background-color: #f5f5f5;/* recv-collapsed */
|
2012-09-27 11:35:30 -07:00
|
|
|
box-shadow: 0 2px 5px rgba(0,0,0,0.12);
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
2013-06-26 14:35:49 -07:00
|
|
|
body:not(.nohide) .email.sent.hide,
|
|
|
|
|
body:not(.nohide) .email.sent .email.hide {
|
2013-08-02 17:51:43 -07:00
|
|
|
background-color: #f5f5f5;/* sent-collapsed */
|
2013-06-26 14:35:49 -07:00
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
body:not(.nohide) .email.hide .body,
|
|
|
|
|
body:not(.nohide) .email.hide > .attachment_container,
|
2013-04-24 18:45:31 -07:00
|
|
|
.email:not(.hide) .header_container .preview,
|
2013-05-07 13:59:54 -07:00
|
|
|
body.nohide .email .header_container .preview,
|
|
|
|
|
body:not(.nohide) .email.hide .email {
|
2012-09-27 11:35:30 -07:00
|
|
|
display: none;
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
2014-01-29 18:18:31 -08:00
|
|
|
.email:not(.hide) .email_warning.show,
|
2013-05-07 13:59:54 -07:00
|
|
|
body:not(.nohide) .email.hide .header_container .preview {
|
2013-04-24 18:45:31 -07:00
|
|
|
display: block;
|
|
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
body:not(.nohide) .email:not(:only-of-type) .header_container,
|
|
|
|
|
body:not(.nohide) .email .email .header_container {
|
2012-06-13 10:43:41 -07:00
|
|
|
cursor: pointer;
|
|
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
.email:not(.hide) .header .field .value,
|
|
|
|
|
body.nohide .email .header .field .value {
|
2012-07-02 11:47:23 -07:00
|
|
|
cursor: auto;
|
|
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
body:not(.nohide) .email.hide .header {
|
2012-09-27 11:35:30 -07:00
|
|
|
padding: 0;
|
2012-06-13 10:43:41 -07:00
|
|
|
text-align: right;
|
|
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
body:not(.nohide) .email.hide .header .field {
|
2012-06-13 10:43:41 -07:00
|
|
|
display: inline;
|
|
|
|
|
margin-right: 2px;
|
|
|
|
|
text-align: left;
|
|
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
body:not(.nohide) .email.hide .header .field:not(:first-child) {
|
2012-06-13 10:43:41 -07:00
|
|
|
display: inline-block;
|
|
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
body:not(.nohide) .email.hide .header .field:not(.important),
|
|
|
|
|
body:not(.nohide) .email.hide .header .field .title {
|
2012-06-13 10:43:41 -07:00
|
|
|
display: none;
|
|
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
body:not(.nohide) .email.hide .header .field .value {
|
2012-06-13 10:43:41 -07:00
|
|
|
margin-left: 0;
|
|
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
body:not(.nohide) .email.hide .header .field .not_hidden_only,
|
|
|
|
|
.email:not(.hide) .header .field .hidden_only,
|
|
|
|
|
body.nohide .email .header .field .hidden_only {
|
2012-06-13 10:43:41 -07:00
|
|
|
display: none;
|
|
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
body:not(.nohide) .email.hide .header .field a {
|
2012-06-22 16:53:05 -07:00
|
|
|
pointer-events: none;
|
|
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
.email:not(.hide) .remote_images.show,
|
|
|
|
|
body.nohide .email .remote_images.show {
|
2013-04-22 14:14:11 -07:00
|
|
|
display: block;
|
|
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
body:not(.nohide) .email.compressed {
|
2013-02-12 17:49:43 -08:00
|
|
|
margin-top: -1px;
|
|
|
|
|
height: 10px;
|
|
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
body:not(.nohide) .email.compressed + .email {
|
2013-02-12 17:49:43 -08:00
|
|
|
margin-top: -1px;
|
|
|
|
|
}
|
2013-08-27 18:57:43 -07:00
|
|
|
body:not(.nohide) .compressed .email_container {
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
display: none
|
|
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
body:not(.nohide) .compressed + .compressed + .compressed + .compressed + .compressed + .compressed + .compressed + .compressed + .compressed {
|
2013-02-14 14:26:54 -08:00
|
|
|
display:none;
|
|
|
|
|
}
|
2013-02-12 17:49:43 -08:00
|
|
|
|
|
|
|
|
}
|
2012-06-13 10:43:41 -07:00
|
|
|
|
2013-02-12 17:49:43 -08:00
|
|
|
.email .compressed_note {
|
|
|
|
|
text-align: center;
|
|
|
|
|
height: 0;
|
|
|
|
|
}
|
|
|
|
|
.email .compressed_note > span {
|
|
|
|
|
display: none;
|
|
|
|
|
padding: 0px 10px;
|
2013-06-26 14:35:49 -07:00
|
|
|
background-color: #f5f5f5;/* recv-collapsed */
|
2013-02-12 17:49:43 -08:00
|
|
|
position: relative;
|
|
|
|
|
cursor: hand;
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
2013-06-26 14:35:49 -07:00
|
|
|
.email.sent .compressed_note > span {
|
2013-08-02 17:51:43 -07:00
|
|
|
background-color: #f5f5f5;/* sent-collapsed */
|
2013-06-26 14:35:49 -07:00
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
body.nohide .email .compressed_note > span {
|
|
|
|
|
display: none !important;
|
|
|
|
|
}
|
2012-06-13 10:43:41 -07:00
|
|
|
|
2013-04-24 18:45:31 -07:00
|
|
|
.email .email {
|
|
|
|
|
box-shadow: none;
|
|
|
|
|
margin-top: 0;
|
|
|
|
|
border: none;
|
|
|
|
|
border-top: 1px rgba(0,0,0,0.4) solid;
|
2013-06-26 14:35:49 -07:00
|
|
|
background-color: white;/* recv-normal */
|
|
|
|
|
}
|
|
|
|
|
.email.sent .email {
|
2013-08-02 17:51:43 -07:00
|
|
|
background-color: white;/* sent-normal */
|
2013-04-24 18:45:31 -07:00
|
|
|
}
|
|
|
|
|
.email .email .email_container .menu,
|
|
|
|
|
.email .email .email_container .starred,
|
|
|
|
|
.email .email .email_container .unstarred {
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
|
2012-06-13 10:43:41 -07:00
|
|
|
.email:not(.attachment) .attachment.icon {
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
.email .header_container .attachment.icon {
|
|
|
|
|
float: right;
|
|
|
|
|
margin-top: 7px;
|
|
|
|
|
}
|
|
|
|
|
.email > .attachment_container {
|
|
|
|
|
padding-bottom: 10px;
|
|
|
|
|
}
|
|
|
|
|
.email > .attachment_container > .top_border {
|
2012-09-27 11:35:30 -07:00
|
|
|
border-bottom: 1px solid #aaa;
|
2012-06-13 10:43:41 -07:00
|
|
|
height: 10px;
|
2012-09-27 11:35:30 -07:00
|
|
|
margin: 0 16px 5px;
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
2013-04-24 18:45:31 -07:00
|
|
|
.email > .email + .attachment_container .top_border{
|
|
|
|
|
height: auto;
|
|
|
|
|
margin: 0;
|
|
|
|
|
}
|
2012-06-13 10:43:41 -07:00
|
|
|
.email > .attachment_container > .attachment {
|
|
|
|
|
margin: 10px 10px 0 10px;
|
|
|
|
|
padding: 2px;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
border: 1px solid transparent;
|
2012-09-27 11:35:30 -07:00
|
|
|
border-radius: 4px;
|
2012-06-13 10:43:41 -07:00
|
|
|
display: inline;
|
|
|
|
|
}
|
2012-09-27 11:35:30 -07:00
|
|
|
|
2012-06-13 10:43:41 -07:00
|
|
|
.email > .attachment_container > .attachment:hover,
|
|
|
|
|
.email > .attachment_container > .attachment:active {
|
2012-09-27 11:35:30 -07:00
|
|
|
border-color: rgba(0,0,0,0.18);
|
|
|
|
|
box-shadow: inset 0px 0px 1px rgba(255,255,255,0.8);
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
2012-09-27 11:35:30 -07:00
|
|
|
|
2012-06-13 10:43:41 -07:00
|
|
|
.email > .attachment_container > .attachment:active {
|
|
|
|
|
padding: 3px 1px 1px 3px;
|
2012-09-27 11:35:30 -07:00
|
|
|
border-color: rgba(0,0,0,0.20);
|
2013-06-26 14:35:49 -07:00
|
|
|
background-color: rgba(0,0,0,0.05);
|
2012-09-27 11:35:30 -07:00
|
|
|
box-shadow: inset 0px 0px 2px rgba(0,0,0,0.05);
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
2012-09-27 11:35:30 -07:00
|
|
|
|
2012-06-13 10:43:41 -07:00
|
|
|
.email > .attachment_container > .attachment .preview {
|
|
|
|
|
width: 52px;
|
|
|
|
|
height: 52px;
|
|
|
|
|
text-align: center;
|
|
|
|
|
vertical-align: middle;
|
|
|
|
|
}
|
|
|
|
|
.email > .attachment_container > .attachment .preview img {
|
|
|
|
|
max-width: 50px;
|
|
|
|
|
max-height: 50px;
|
|
|
|
|
}
|
|
|
|
|
.email > .attachment_container > .attachment .preview .thumbnail {
|
|
|
|
|
border: 1px solid #999;
|
|
|
|
|
box-shadow: 0 0 5px #b8b8b8;
|
|
|
|
|
background-size: 16px 16px;
|
|
|
|
|
background-position:0 0, 8px 0, 8px -8px, 0px 8px;
|
|
|
|
|
}
|
|
|
|
|
.email > .attachment_container > .attachment:hover .preview .thumbnail {
|
|
|
|
|
background-image:
|
|
|
|
|
-webkit-linear-gradient(45deg, rgba(0, 0, 0, 0.1) 25%, transparent 25%, transparent),
|
|
|
|
|
-webkit-linear-gradient(-45deg, rgba(0, 0, 0, 0.1) 25%, transparent 25%, transparent),
|
|
|
|
|
-webkit-linear-gradient(45deg, transparent 75%, rgba(0, 0, 0, 0.1) 75%),
|
|
|
|
|
-webkit-linear-gradient(-45deg, transparent 75%, rgba(0, 0, 0, 0.1) 75%);
|
|
|
|
|
}
|
|
|
|
|
.email > .attachment_container > .attachment .info {
|
|
|
|
|
vertical-align: middle;
|
|
|
|
|
padding-left: 5px;
|
|
|
|
|
}
|
|
|
|
|
.email > .attachment_container > .attachment .info > :not(.filename) {
|
|
|
|
|
color: #666;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header {
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
}
|
|
|
|
|
.header .field {
|
|
|
|
|
clear: both;
|
|
|
|
|
overflow: hidden;
|
2014-05-21 20:58:51 -07:00
|
|
|
font-size: 90%;
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
|
|
|
|
.header .field .title,
|
|
|
|
|
.header .field .value {
|
|
|
|
|
float: left;
|
|
|
|
|
padding: 2px 0;
|
|
|
|
|
}
|
|
|
|
|
.header .field .title {
|
|
|
|
|
width: 5em;
|
|
|
|
|
text-align: right;
|
|
|
|
|
padding-right: 7px;
|
|
|
|
|
color: #777;
|
|
|
|
|
position: absolute;
|
|
|
|
|
}
|
|
|
|
|
.header .field .value {
|
|
|
|
|
color: black;
|
|
|
|
|
margin-left: 5.25em;
|
2012-06-22 16:53:05 -07:00
|
|
|
max-height: 5em;
|
|
|
|
|
overflow-y: auto;
|
|
|
|
|
}
|
|
|
|
|
.header .field .value a {
|
|
|
|
|
color: black;
|
|
|
|
|
text-decoration: none;
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
|
|
|
|
.header .field.important .address_name {
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
}
|
|
|
|
|
.header .field .address_value {
|
|
|
|
|
color: #777;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.geary_spacer {
|
|
|
|
|
display: table;
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
-webkit-box-sizing: border-box;
|
|
|
|
|
width: 100% !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.signature {
|
|
|
|
|
color: #777;
|
|
|
|
|
display: inline;
|
|
|
|
|
}
|
2012-09-27 11:35:30 -07:00
|
|
|
.signature a,
|
|
|
|
|
.quote_container a {
|
|
|
|
|
color: #5fb2e7;
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.quote_container {
|
2014-01-28 22:18:58 -05:00
|
|
|
position: relative;
|
2012-06-13 10:43:41 -07:00
|
|
|
margin: 5px 0;
|
2012-09-27 11:35:30 -07:00
|
|
|
padding: 12px;
|
|
|
|
|
color: #303030;
|
2013-06-26 14:35:49 -07:00
|
|
|
background-color: #e8e8e8;/* recv-quoted */
|
2012-06-13 10:43:41 -07:00
|
|
|
border-radius: 4px;
|
|
|
|
|
}
|
2014-01-28 22:18:58 -05:00
|
|
|
.quote_container .quote {
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
position: relative;
|
|
|
|
|
z-index: 0;
|
|
|
|
|
}
|
|
|
|
|
body:not(.nohide) .quote_container.controllable .quote {
|
|
|
|
|
max-height: 80px;
|
|
|
|
|
}
|
|
|
|
|
body:not(.nohide) .quote_container.controllable.show .quote {
|
|
|
|
|
max-height: none;
|
|
|
|
|
}
|
2012-09-27 11:35:30 -07:00
|
|
|
|
2013-06-26 14:35:49 -07:00
|
|
|
.email.sent .quote_container {
|
2013-08-02 17:51:43 -07:00
|
|
|
background-color: #e8e8e8;/* sent-quoted */
|
2013-06-26 14:35:49 -07:00
|
|
|
}
|
|
|
|
|
|
2012-06-13 10:43:41 -07:00
|
|
|
.quote_container > .shower,
|
|
|
|
|
.quote_container > .hider {
|
2014-01-28 22:18:58 -05:00
|
|
|
position: absolute;
|
|
|
|
|
z-index: 1;
|
|
|
|
|
bottom: -7px;
|
|
|
|
|
left: 0;
|
|
|
|
|
right: 0;
|
2012-06-13 10:43:41 -07:00
|
|
|
display: none;
|
|
|
|
|
}
|
2014-01-28 22:18:58 -05:00
|
|
|
.quote_container > .shower > input,
|
|
|
|
|
.quote_container > .hider > input {
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 15px;
|
|
|
|
|
padding: 0;
|
2014-05-21 20:58:51 -07:00
|
|
|
font-size: 7px; /* Absolute size in pixels for graphics */
|
2014-01-28 22:18:58 -05:00
|
|
|
color: #888;
|
|
|
|
|
}
|
|
|
|
|
.quote_container > .shower:hover > input,
|
|
|
|
|
.quote_container > .hider:hover > input {
|
|
|
|
|
color: #000;
|
|
|
|
|
}
|
|
|
|
|
body:not(.nohide) .quote_container.controllable {
|
|
|
|
|
margin-bottom: 7px;
|
2014-02-18 13:51:38 -08:00
|
|
|
padding-bottom: 0;
|
|
|
|
|
}
|
|
|
|
|
body:not(.nohide) .quote_container.controllable.show {
|
|
|
|
|
padding-bottom: 12px;
|
2014-01-28 22:18:58 -05:00
|
|
|
}
|
2013-05-07 16:11:30 -07:00
|
|
|
body:not(.nohide) .quote_container.controllable > .shower {
|
2012-06-13 10:43:41 -07:00
|
|
|
display: block;
|
|
|
|
|
}
|
2013-05-07 16:11:30 -07:00
|
|
|
body:not(.nohide) .quote_container.controllable.show > .shower {
|
2012-06-13 10:43:41 -07:00
|
|
|
display: none;
|
|
|
|
|
}
|
2014-01-28 22:18:58 -05:00
|
|
|
body:not(.nohide) .quote_container.controllable.show > .hider {
|
2012-06-13 10:43:41 -07:00
|
|
|
display: block;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#message_container {
|
|
|
|
|
position: absolute;
|
|
|
|
|
left: 0;
|
|
|
|
|
right: 0;
|
|
|
|
|
padding: 0 15px 15px;
|
Separate composer widget from composer window
In anticipation of inline composition, we need the composer widget to be
separate from the window in which it lives. We introduce a new
interface, ComposerContainer, that the thing that holds to
ComposerWidget must implement.
Separate composer widget from composer window
In anticipation of inline composition, we need the composer widget to be
separate from the window in which it lives. We introduce a new
interface, ComposerContainer, that the thing that holds to
ComposerWidget must implement.
Basic inline composition
Many of the details don't work, or don't work well, but the basics are
in place.
Allow only a single inline composition at a time
With this, we introduce a dialog when you would try to add another. We
also use this when changing the selected conversation with a composer
open.
Compose new messages inline, with no conversation selected
Hook up composer accelerators only when focus is in composer editor
It would be nice to only activate these accelerators when the composer
has focus generally, but that doesn't seem to be easy to detect.
Only disconnect accelerators if they're connected
Maintain focus when composer is popped out
The selection isn't, though.
Fix Tab focus for embedded composer
There are two things that needed to be fixed: The tab key doesn't
usually advance focus for embedded widgets (huh?), so we handle tab
presses by hand for ComposerWidgets. Also, the EmailEntrys do their own
tab handling, which needs to know about the composer widget, not the
toplevel widget in the embedded case.
Remove close() from ComposerContainer interface
I don't think it was actually doing anything, and it conflicts with the new close() method of Gtk.Window.
2014-02-11 00:26:14 -05:00
|
|
|
box-sizing: border-box;
|
|
|
|
|
min-height: 100%;
|
2012-06-13 10:43:41 -07:00
|
|
|
}
|
|
|
|
|
#multiple_messages {
|
|
|
|
|
display: none;
|
|
|
|
|
text-align: center;
|
|
|
|
|
}
|
|
|
|
|
#multiple_messages > .email {
|
|
|
|
|
margin: 100px auto;
|
|
|
|
|
display: inline-block;
|
|
|
|
|
width: auto;
|
|
|
|
|
padding: 15px;
|
|
|
|
|
}
|
|
|
|
|
#email_template,
|
2013-05-28 18:28:33 -07:00
|
|
|
#attachment_template,
|
|
|
|
|
#link_warning_template {
|
2012-06-13 10:43:41 -07:00
|
|
|
display: none;
|
|
|
|
|
}
|
2012-07-06 11:30:46 -07:00
|
|
|
|
2012-06-13 10:43:41 -07:00
|
|
|
blockquote {
|
2012-09-27 11:35:30 -07:00
|
|
|
margin: 5px 10px 5px 10px;
|
2012-07-06 11:30:46 -07:00
|
|
|
padding-left: 5px;
|
|
|
|
|
padding-right: 5px;
|
|
|
|
|
border: 0;
|
2012-06-13 10:43:41 -07:00
|
|
|
border-left: 3px #aaa solid;
|
2012-06-22 16:53:05 -07:00
|
|
|
}
|
2013-05-07 13:59:54 -07:00
|
|
|
|
|
|
|
|
.search_coloring *::selection {
|
|
|
|
|
background-color: #00ddff;
|
|
|
|
|
}
|
2013-07-11 12:50:19 -07:00
|
|
|
|
2013-07-19 15:44:20 -07:00
|
|
|
.draft_edit {
|
|
|
|
|
display: none;
|
|
|
|
|
margin: 16px;
|
|
|
|
|
text-align: right;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.draft_edit_button {
|
|
|
|
|
background-color: #e8e8e8;
|
|
|
|
|
}
|
|
|
|
|
|
2013-07-11 12:50:19 -07:00
|
|
|
#spinner {
|
|
|
|
|
display: none;
|
|
|
|
|
margin: 100px auto;
|
|
|
|
|
width: 128px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
Spinner code from CSSload.net
|
|
|
|
|
License: http://cssload.net/en/terms_of_use
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
#spinner #floatingCirclesG {
|
|
|
|
|
position:relative;
|
|
|
|
|
width:128px;
|
|
|
|
|
height:128px;
|
|
|
|
|
-webkit-transform:scale(0.6);
|
|
|
|
|
transform:scale(0.6);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#spinner .f_circleG {
|
|
|
|
|
position:absolute;
|
|
|
|
|
background-color:#FFFFFF;
|
|
|
|
|
height:23px;
|
|
|
|
|
width:23px;
|
|
|
|
|
-webkit-border-radius:12px;
|
|
|
|
|
-webkit-animation-name:f_fadeG;
|
|
|
|
|
-webkit-animation-duration:1.04s;
|
|
|
|
|
-webkit-animation-iteration-count:infinite;
|
|
|
|
|
-webkit-animation-direction:linear;
|
|
|
|
|
border-radius:12px;
|
|
|
|
|
animation-name:f_fadeG;
|
|
|
|
|
animation-duration:1.04s;
|
|
|
|
|
animation-iteration-count:infinite;
|
|
|
|
|
animation-direction:linear;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#spinner #frotateG_01 {
|
|
|
|
|
left:0;
|
|
|
|
|
top:52px;
|
|
|
|
|
-webkit-animation-delay:0.39s;
|
|
|
|
|
animation-delay:0.39s;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#spinner #frotateG_02 {
|
|
|
|
|
left:15px;
|
|
|
|
|
top:15px;
|
|
|
|
|
-webkit-animation-delay:0.52s;
|
|
|
|
|
animation-delay:0.52s;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#spinner #frotateG_03 {
|
|
|
|
|
left:52px;
|
|
|
|
|
top:0;
|
|
|
|
|
-webkit-animation-delay:0.65s;
|
|
|
|
|
animation-delay:0.65s;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#spinner #frotateG_04 {
|
|
|
|
|
right:15px;
|
|
|
|
|
top:15px;
|
|
|
|
|
-webkit-animation-delay:0.78s;
|
|
|
|
|
animation-delay:0.78s;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#spinner #frotateG_05 {
|
|
|
|
|
right:0;
|
|
|
|
|
top:52px;
|
|
|
|
|
-webkit-animation-delay:0.91s;
|
|
|
|
|
animation-delay:0.91s;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#spinner #frotateG_06 {
|
|
|
|
|
right:15px;
|
|
|
|
|
bottom:15px;
|
|
|
|
|
-webkit-animation-delay:1.04s;
|
|
|
|
|
animation-delay:1.04s;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#spinner #frotateG_07 {
|
|
|
|
|
left:52px;
|
|
|
|
|
bottom:0;
|
|
|
|
|
-moz-animation-delay:1.17s;
|
|
|
|
|
-webkit-animation-delay:1.17s;
|
|
|
|
|
-ms-animation-delay:1.17s;
|
|
|
|
|
-o-animation-delay:1.17s;
|
|
|
|
|
animation-delay:1.17s;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#spinner #frotateG_08 {
|
|
|
|
|
left:15px;
|
|
|
|
|
bottom:15px;
|
|
|
|
|
-moz-animation-delay:1.3s;
|
|
|
|
|
-webkit-animation-delay:1.3s;
|
|
|
|
|
-ms-animation-delay:1.3s;
|
|
|
|
|
-o-animation-delay:1.3s;
|
|
|
|
|
animation-delay:1.3s;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@-webkit-keyframes f_fadeG {
|
|
|
|
|
0% {
|
|
|
|
|
background-color:#000000
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
100% {
|
|
|
|
|
background-color:#FFFFFF
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* /Spinner */
|
|
|
|
|
|