diff --git a/internal_packages/message-list/lib/message-item.cjsx b/internal_packages/message-list/lib/message-item.cjsx
index c79d0f613..f2ceb096c 100644
--- a/internal_packages/message-list/lib/message-item.cjsx
+++ b/internal_packages/message-list/lib/message-item.cjsx
@@ -117,6 +117,9 @@ MessageItem = React.createClass
_renderMessageActions: ->
messageActions = ComponentRegistry.findAllViewsByRole('MessageAction')
+
+
+
@@ -144,6 +145,43 @@ MessageItem = React.createClass
_onForward: ->
tId = @props.thread.id; mId = @props.message.id
Actions.composeForward(threadId: tId, messageId: mId) if (tId and mId)
+
+ _onReport: (issueType) ->
+ {Contact, Message, DatabaseStore, NamespaceStore} = require 'inbox-exports'
+
+ draft = new Message
+ from: [NamespaceStore.current().me()]
+ to: [new Contact(name: "Nilas Team", email: "feedback@nilas.com")]
+ date: (new Date)
+ draft: true
+ subject: "Feedback - Message Display Issue (#{issueType})"
+ namespaceId: NamespaceStore.current().id
+ body: @props.message.body
+
+ DatabaseStore.persistModel(draft).then ->
+ DatabaseStore.localIdForModel(draft).then (localId) ->
+ Actions.sendDraft(localId)
+
+ remote = require('remote')
+ dialog = remote.require('dialog')
+ dialog.showMessageBox remote.getCurrentWindow(), {
+ type: 'warning'
+ buttons: ['OK'],
+ message: "Thank you."
+ detail: "The contents of this message have been sent to the Edgehill team and we added to a test suite."
+ }
+
+ _onShowActionsMenu: ->
+ remote = require('remote')
+ Menu = remote.require('menu')
+ MenuItem = remote.require('menu-item')
+
+ # Todo: refactor this so that message actions are provided
+ # dynamically. Waiting to see if this will be used often.
+ menu = new Menu()
+ menu.append(new MenuItem({ label: 'Report Issue: Quoted Text', click: => @_onReport('Quoted Text')}))
+ menu.append(new MenuItem({ label: 'Report Issue: Rendering', click: => @_onReport('Rendering')}))
+ menu.popup(remote.getCurrentWindow())
_renderCollapseControl: ->
if @state.detailedHeaders
diff --git a/internal_packages/message-list/stylesheets/message-list.less b/internal_packages/message-list/stylesheets/message-list.less
index 2a47a7db0..b8f9294cd 100644
--- a/internal_packages/message-list/stylesheets/message-list.less
+++ b/internal_packages/message-list/stylesheets/message-list.less
@@ -147,11 +147,15 @@
text-align: right;
}
+ .message-actions-ellipsis {
+ display: inline-block;
+ }
+
.message-actions {
display: inline-block;
width: 120px;
- height: 22px;
- border: 1px solid @border-color-divider;
+ height: 23px;
+ border: 1px solid lighten(@border-color-divider, 6%);
border-radius: 11px;
z-index: 4;
@@ -165,7 +169,7 @@
height: 20px;
line-height: 10px;
border-radius: 0;
- border-right: 1px solid @border-color-divider;
+ border-right: 1px solid lighten(@border-color-divider, 6%);
&:last-child { border-right: 0; }
margin: 0;
&:active {background: transparent;}
diff --git a/static/images/message-list/message-actions-ellipsis@2x.png b/static/images/message-list/message-actions-ellipsis@2x.png
new file mode 100644
index 000000000..8dd0c2580
Binary files /dev/null and b/static/images/message-list/message-actions-ellipsis@2x.png differ