Merge branch 'develop' into matthew/preview_urls
This commit is contained in:
commit
a5258978d6
4 changed files with 53 additions and 11 deletions
|
@ -37,8 +37,8 @@
|
|||
"gfm.css": "^1.1.1",
|
||||
"highlight.js": "^9.0.0",
|
||||
"linkifyjs": "^2.0.0-beta.4",
|
||||
"matrix-js-sdk": "^0.5.1",
|
||||
"matrix-react-sdk": "^0.4.0",
|
||||
"matrix-js-sdk": "matrix-org/matrix-js-sdk#develop",
|
||||
"matrix-react-sdk": "matrix-org/matrix-react-sdk#develop",
|
||||
"modernizr": "^3.1.0",
|
||||
"q": "^1.4.1",
|
||||
"react": "^0.14.2",
|
||||
|
|
|
@ -27,7 +27,8 @@ module.exports = React.createClass({
|
|||
displayName: 'ImageView',
|
||||
|
||||
propTypes: {
|
||||
onFinished: React.PropTypes.func.isRequired
|
||||
onFinished: React.PropTypes.func.isRequired,
|
||||
name: React.PropTypes.string
|
||||
},
|
||||
|
||||
// XXX: keyboard shortcuts for managing dialogs should be done by the modal
|
||||
|
@ -65,6 +66,20 @@ module.exports = React.createClass({
|
|||
});
|
||||
},
|
||||
|
||||
getName: function () {
|
||||
var name;
|
||||
|
||||
if(this.props.name) {
|
||||
name = this.props.name;
|
||||
} else if(this.props.mxEvent) {
|
||||
name = props.mxEvent.getContent().body;
|
||||
} else {
|
||||
name = null;
|
||||
}
|
||||
|
||||
return name;
|
||||
},
|
||||
|
||||
render: function() {
|
||||
|
||||
/*
|
||||
|
@ -106,10 +121,28 @@ module.exports = React.createClass({
|
|||
}
|
||||
|
||||
var size;
|
||||
if (this.props.mxEvent.getContent().info && this.props.mxEvent.getContent().info.size) {
|
||||
if (this.props.mxEvent &&
|
||||
this.props.mxEvent.getContent().info &&
|
||||
this.props.mxEvent.getContent().info.size) {
|
||||
size = filesize(this.props.mxEvent.getContent().info.size);
|
||||
}
|
||||
|
||||
var showEventMeta = !!this.props.mxEvent;
|
||||
|
||||
var eventMeta;
|
||||
if(showEventMeta) {
|
||||
eventMeta = (<div className="mx_ImageView_metadata">
|
||||
Uploaded on { DateUtils.formatDate(new Date(this.props.mxEvent.getTs())) } by { this.props.mxEvent.getSender() }
|
||||
</div>);
|
||||
}
|
||||
|
||||
var eventRedact;
|
||||
if(showEventMeta) {
|
||||
eventRedact = (<div className="mx_ImageView_button" onClick={this.onRedactClick}>
|
||||
Redact
|
||||
</div>);
|
||||
}
|
||||
|
||||
return (
|
||||
<div className="mx_ImageView">
|
||||
<div className="mx_ImageView_lhs">
|
||||
|
@ -122,11 +155,9 @@ module.exports = React.createClass({
|
|||
<div className="mx_ImageView_shim">
|
||||
</div>
|
||||
<div className="mx_ImageView_name">
|
||||
{ this.props.mxEvent.getContent().body }
|
||||
</div>
|
||||
<div className="mx_ImageView_metadata">
|
||||
Uploaded on { DateUtils.formatDate(new Date(this.props.mxEvent.getTs())) } by { this.props.mxEvent.getSender() }
|
||||
{ this.getName() }
|
||||
</div>
|
||||
{ eventMeta }
|
||||
<a className="mx_ImageView_link" href={ this.props.src } target="_blank">
|
||||
<div className="mx_ImageView_download">
|
||||
Download this file<br/>
|
||||
|
@ -138,9 +169,7 @@ module.exports = React.createClass({
|
|||
View full screen
|
||||
</a>
|
||||
</div>
|
||||
<div className="mx_ImageView_button" onClick={this.onRedactClick}>
|
||||
Redact
|
||||
</div>
|
||||
{ eventRedact }
|
||||
<div className="mx_ImageView_shim">
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -214,3 +214,8 @@ input[type=text]:focus, textarea:focus {
|
|||
color: #454545;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.emojione {
|
||||
height: 1em;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
|
|
@ -32,6 +32,14 @@ limitations under the License.
|
|||
clear: both;
|
||||
}
|
||||
|
||||
.mx_MemberInfo_avatar .mx_BaseAvatar {
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
.mx_MemberInfo_avatar .mx_BaseAvatar.mx_BaseAvatar_image {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.mx_MemberInfo_profile {
|
||||
margin-bottom: 16px;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue