2016-03-29 11:51:46 +00:00
|
|
|
/*
|
|
|
|
Copyright 2016 OpenMarket Ltd
|
|
|
|
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
you may not use this file except in compliance with the License.
|
|
|
|
You may obtain a copy of the License at
|
|
|
|
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
See the License for the specific language governing permissions and
|
|
|
|
limitations under the License.
|
|
|
|
*/
|
|
|
|
|
|
|
|
'use strict';
|
|
|
|
|
2017-01-25 16:05:39 +00:00
|
|
|
import React from 'react';
|
|
|
|
import dis from '../../../dispatcher';
|
2017-01-24 22:41:52 +00:00
|
|
|
import AccessibleButton from '../elements/AccessibleButton';
|
2017-04-27 16:57:13 +00:00
|
|
|
import sdk from '../../../index';
|
2016-03-29 11:51:46 +00:00
|
|
|
|
2017-01-25 16:05:39 +00:00
|
|
|
// cancel button which is shared between room header and simple room header
|
|
|
|
export function CancelButton(props) {
|
|
|
|
const {onClick} = props;
|
|
|
|
|
|
|
|
return (
|
|
|
|
<AccessibleButton className='mx_RoomHeader_cancelButton' onClick={onClick}>
|
2017-01-25 16:33:29 +00:00
|
|
|
<img src="img/cancel.svg" className='mx_filterFlipColor'
|
|
|
|
width="18" height="18" alt="Cancel"/>
|
2017-01-25 16:05:39 +00:00
|
|
|
</AccessibleButton>
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
2016-03-29 11:51:46 +00:00
|
|
|
/*
|
|
|
|
* A stripped-down room header used for things like the user settings
|
|
|
|
* and room directory.
|
|
|
|
*/
|
2017-01-25 16:05:39 +00:00
|
|
|
export default React.createClass({
|
2016-03-29 11:51:46 +00:00
|
|
|
displayName: 'SimpleRoomHeader',
|
|
|
|
|
2016-03-29 22:21:17 +00:00
|
|
|
propTypes: {
|
|
|
|
title: React.PropTypes.string,
|
2016-04-15 21:16:19 +00:00
|
|
|
onCancelClick: React.PropTypes.func,
|
2016-09-13 18:00:35 +00:00
|
|
|
|
2017-04-27 16:58:02 +00:00
|
|
|
// is the RightPanel collapsed?
|
|
|
|
collapsedRhs: React.PropTypes.bool,
|
|
|
|
|
2017-04-27 16:57:13 +00:00
|
|
|
// `src` to a TintableSvg. Optional.
|
|
|
|
icon: React.PropTypes.string,
|
2016-09-13 18:00:35 +00:00
|
|
|
},
|
|
|
|
|
|
|
|
onShowRhsClick: function(ev) {
|
|
|
|
dis.dispatch({ action: 'show_right_panel' });
|
2016-03-29 22:21:17 +00:00
|
|
|
},
|
2016-03-29 11:51:46 +00:00
|
|
|
|
2016-03-29 22:21:17 +00:00
|
|
|
render: function() {
|
2017-01-25 16:05:39 +00:00
|
|
|
let cancelButton;
|
2017-04-27 16:57:13 +00:00
|
|
|
let icon;
|
2016-04-15 21:16:19 +00:00
|
|
|
if (this.props.onCancelClick) {
|
2017-01-25 16:05:39 +00:00
|
|
|
cancelButton = <CancelButton onClick={this.props.onCancelClick} />;
|
2016-04-15 21:16:19 +00:00
|
|
|
}
|
2017-04-27 16:57:13 +00:00
|
|
|
if (this.props.icon) {
|
|
|
|
const TintableSvg = sdk.getComponent('elements.TintableSvg');
|
|
|
|
icon = <TintableSvg
|
|
|
|
className="mx_RoomHeader_icon" src={this.props.icon}
|
|
|
|
width="25" height="25"
|
|
|
|
/>;
|
|
|
|
}
|
2016-04-15 21:16:19 +00:00
|
|
|
|
2017-01-25 16:05:39 +00:00
|
|
|
let showRhsButton;
|
2016-09-13 18:00:35 +00:00
|
|
|
/* // don't bother cluttering things up with this for now.
|
2017-01-25 16:05:39 +00:00
|
|
|
const TintableSvg = sdk.getComponent("elements.TintableSvg");
|
|
|
|
|
2016-09-13 18:00:35 +00:00
|
|
|
if (this.props.collapsedRhs) {
|
|
|
|
showRhsButton =
|
|
|
|
<div className="mx_RoomHeader_button" style={{ float: 'right' }} onClick={this.onShowRhsClick} title=">">
|
|
|
|
<TintableSvg src="img/minimise.svg" width="10" height="16"/>
|
|
|
|
</div>
|
|
|
|
}
|
|
|
|
*/
|
|
|
|
|
2016-03-29 11:51:46 +00:00
|
|
|
return (
|
|
|
|
<div className="mx_RoomHeader" >
|
2016-03-29 22:21:17 +00:00
|
|
|
<div className="mx_RoomHeader_wrapper">
|
|
|
|
<div className="mx_RoomHeader_simpleHeader">
|
2017-04-27 16:57:13 +00:00
|
|
|
{ icon }
|
2016-03-29 22:21:17 +00:00
|
|
|
{ this.props.title }
|
2016-09-13 18:00:35 +00:00
|
|
|
{ showRhsButton }
|
2016-04-15 21:16:19 +00:00
|
|
|
{ cancelButton }
|
2016-03-29 22:21:17 +00:00
|
|
|
</div>
|
|
|
|
</div>
|
2016-03-29 11:51:46 +00:00
|
|
|
</div>
|
|
|
|
);
|
|
|
|
},
|
|
|
|
});
|