Improve message view pane (#1072)

This commit is contained in:
RainLoop Team 2016-06-18 01:08:31 +03:00
parent eaf60c3c99
commit f6c78ee1fa
3 changed files with 80 additions and 32 deletions

View file

@ -96,10 +96,20 @@ html.rl-no-preview-pane {
right: 10px;
}
.infoParent {
cursor: pointer;
margin-right: 5px;
opacity: 0.3;
&:hover {
opacity: 0.6;
}
}
.flagParent {
cursor: pointer;
margin-right: 5px;
margin-right: 7px;
.flagOn {
color: orange;
@ -144,15 +154,25 @@ html.rl-no-preview-pane {
}
.subjectParent {
font-size: 16px;
font-size: 18px;
font-weight: bold;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
margin-bottom: 8px;
line-height: 100%;
height: 22px;
vertical-align: middle;
}
.senderParent {
margin-top: 10px;
margin: 7px 0;
&.-top {
margin-top: 0;
}
&.-bottom {
margin-bottom: 0;
}
}
.messageButtons {
@ -160,11 +180,21 @@ html.rl-no-preview-pane {
}
.informationShort {
margin-left: 22px;
margin-left: 5px;
margin-right: 50px;
a {
.g-ui-link;
}
&.-bottom {
margin-right: 5px;
}
html.rl-mobile &{
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}
}
.informationFull {
margin-top: 10px;
@ -174,6 +204,10 @@ html.rl-no-preview-pane {
padding: 8px 0;
overflow: hidden;
.size {
margin-left: 4px;
}
table {
width: 100%;
}

View file

@ -302,6 +302,10 @@
this.viewIsImportant = ko.observable(false);
this.viewIsFlagged = ko.observable(false);
this.viewFromDkimVisibility = ko.computed(function () {
return 'none' !== this.viewFromDkimData()[0];
}, this);
this.viewFromDkimStatusIconClass = ko.computed(function () {
var sResult = 'icon-none iconcolor-display-none';

View file

@ -208,38 +208,48 @@
<div data-bind="visible: message">
<div class="messageItemHeader" data-bind="css: {'emptySubject': '' === viewSubject()}">
<div class="subjectParent">
<button class="close" data-bind="command: closeMessage" style="margin-top: -2px;">&times;</button>
<span class="infoParent g-ui-user-select-none" data-bind="click: function() { showFullInfo(!showFullInfo()); }">
<i class="icon-info" style="padding-top: 1px;"></i>
</span>
<span class="flagParent g-ui-user-select-none">
<i class="icon-star-empty flagOff" data-bind="css: {'icon-star flagOn': viewIsFlagged, 'icon-star-empty flagOff': !viewIsFlagged()}" style="padding-top: 2px;"></i>
</span>
<b style="color: red; margin-right: 5px" data-bind="visible: viewIsImportant">!</b>
<span class="subject" data-bind="text: viewSubject, title: viewSubject, event: { 'dblclick': toggleFullScreen }"></span>
<span class="i18n emptySubjectText" data-i18n="MESSAGE/EMPTY_SUBJECT_TEXT" data-bind="event: { 'dblclick': toggleFullScreen }"></span>
</div>
<div>
<img class="fromPic" data-bind="visible: viewUserPicVisible, attr: {'src': viewUserPic() }">
<div style="overflow: hidden;">
<button class="close" data-bind="command: closeMessage" style="margin-top: -2px;">&times;</button>
<div class="subjectParent" data-bind="event: { 'dblclick': toggleFullScreen }">
<span class="flagParent">
<i class="icon-star-empty flagOff" data-bind="css: {'icon-star flagOn': viewIsFlagged, 'icon-star-empty flagOff': !viewIsFlagged()}"></i>
</span>
<b style="color: red; margin-right: 5px" data-bind="visible: viewIsImportant">!</b>
<span class="subject" data-bind="text: viewSubject, title: viewSubject"></span>
<span class="i18n emptySubjectText" data-i18n="MESSAGE/EMPTY_SUBJECT_TEXT"></span>
</div>
<div class="senderParent">
<div class="g-ui-user-select-none" style="float: left; cursor: pointer; margin-left: 1px;" data-bind="click: function() { showFullInfo(!showFullInfo()); }">
<i class="icon-right-dir" data-bind="css: showFullInfo() ? 'icon-down-dir' : 'icon-right-dir'"></i>
<div>
<img class="fromPic" data-bind="visible: viewUserPicVisible, attr: {'src': viewUserPic() }">
<div style="overflow: hidden;">
<div class="senderParent -top">
<div class="informationShort -top" data-bind="event: { 'dblclick': toggleFullScreen }">
<span>
<span class="from" data-bind="html: viewFromShort, title: viewFrom"></span>
<span data-bind="visible: viewFromDkimVisibility">
&nbsp;
<i data-bind="css: viewFromDkimStatusIconClass, title: viewFromDkimStatusTitle" />
</span>
</span>
<span data-bind="visible: 0 < viewTimeStamp()">
(<span class="date" data-moment-format="FULL" data-bind="moment: viewTimeStamp"></span>)
</span>
</div>
<div class="clearfix"></div>
</div>
<div class="informationShort" data-bind="event: { 'dblclick': toggleFullScreen }">
<span data-bind="visible: !isDraftOrSentFolder()">
<span class="from" data-bind="html: viewFromShort, title: viewFrom"></span>
&nbsp;
<i data-bind="css: viewFromDkimStatusIconClass, title: viewFromDkimStatusTitle" />
</span>
<span data-bind="visible: isDraftOrSentFolder()">
<span class="i18n uiLabel labelTo" data-i18n="MESSAGE/LABEL_TO"></span>:
<span class="to" data-bind="html: viewToShort, title: viewTo"></span>
</span>
<span data-bind="visible: 0 < viewTimeStamp()">
(<span class="date" data-moment-format="FULL" data-bind="moment: viewTimeStamp"></span>)
</span>
<div class="senderParent -bottom" data-bind="visible: viewTo">
<div class="informationShort -bottom" data-bind="event: { 'dblclick': toggleFullScreen }">
<span>
<span class="i18n uiLabel labelTo" data-i18n="MESSAGE/LABEL_TO"></span>:
<span class="to" data-bind="text: viewTo"></span>
</span>
</div>
<div class="clearfix"></div>
</div>
<div class="clearfix"></div>
</div>
<div class="clearfix"></div>
</div>
<div class="informationFull" data-bind="visible: showFullInfo()">
<table>