diff --git a/src/components/structures/CreateRoom.js b/src/components/structures/CreateRoom.js
index e7585e3640..ce4c0916d4 100644
--- a/src/components/structures/CreateRoom.js
+++ b/src/components/structures/CreateRoom.js
@@ -31,6 +31,7 @@ module.exports = React.createClass({
propTypes: {
onRoomCreated: React.PropTypes.func,
+ collapsedRhs: React.PropTypes.bool,
},
phases: {
@@ -245,7 +246,7 @@ module.exports = React.createClass({
return (
-
+
diff --git a/src/components/structures/MatrixChat.js b/src/components/structures/MatrixChat.js
index e1eda409d5..39e1d9b54c 100644
--- a/src/components/structures/MatrixChat.js
+++ b/src/components/structures/MatrixChat.js
@@ -1008,43 +1008,49 @@ module.exports = React.createClass({
switch (this.state.page_type) {
case this.PageTypes.RoomView:
- page_element = (
-
- );
- right_panel =
+ page_element =
+ if (!this.state.collapse_rhs) right_panel =
break;
case this.PageTypes.UserSettings:
page_element =
- right_panel =
+ if (!this.state.collapse_rhs) right_panel =
break;
case this.PageTypes.CreateRoom:
- page_element =
- right_panel =
+ page_element =
+ if (!this.state.collapse_rhs) right_panel =
break;
case this.PageTypes.RoomDirectory:
- page_element =
- right_panel =
+ page_element =
+ if (!this.state.collapse_rhs) right_panel =
break;
case this.PageTypes.UserView:
page_element = null; // deliberately null for now
- right_panel =
+ right_panel =
break;
}
diff --git a/src/components/structures/RoomView.js b/src/components/structures/RoomView.js
index f39a3c6627..947ff7cb4e 100644
--- a/src/components/structures/RoomView.js
+++ b/src/components/structures/RoomView.js
@@ -97,7 +97,7 @@ module.exports = React.createClass({
highlightedEventId: React.PropTypes.string,
// is the RightPanel collapsed?
- rightPanelCollapsed: React.PropTypes.bool,
+ collapsedRhs: React.PropTypes.bool,
},
getInitialState: function() {
@@ -1374,7 +1374,7 @@ module.exports = React.createClass({
-
+
-
+
diff --git a/src/components/views/rooms/RoomHeader.js b/src/components/views/rooms/RoomHeader.js
index f7f4f50a84..6abcb549d8 100644
--- a/src/components/views/rooms/RoomHeader.js
+++ b/src/components/views/rooms/RoomHeader.js
@@ -20,6 +20,7 @@ var React = require('react');
var sdk = require('../../../index');
var MatrixClientPeg = require('../../../MatrixClientPeg');
var Modal = require("../../../Modal");
+var dis = require("../../../dispatcher");
var linkify = require('linkifyjs');
var linkifyElement = require('linkifyjs/element');
@@ -35,7 +36,7 @@ module.exports = React.createClass({
oobData: React.PropTypes.object,
editing: React.PropTypes.bool,
saving: React.PropTypes.bool,
- rightPanelCollapsed: React.PropTypes.bool,
+ collapsedRhs: React.PropTypes.bool,
onSettingsClick: React.PropTypes.func,
onSaveClick: React.PropTypes.func,
onSearchClick: React.PropTypes.func,
@@ -114,6 +115,10 @@ module.exports = React.createClass({
}).done();
},
+ onShowRhsClick: function(ev) {
+ dis.dispatch({ action: 'show_right_panel' });
+ },
+
/**
* After editing the settings, get the new name for the room
*
@@ -287,8 +292,11 @@ module.exports = React.createClass({
}
var rightPanel_buttons;
- if (this.props.rightPanelCollapsed) {
- // TODO: embed the RightPanel header in here if it's collapsed.
+ if (this.props.collapsedRhs) {
+ rightPanel_buttons =
+
+
+
}
var right_row;
diff --git a/src/components/views/rooms/SimpleRoomHeader.js b/src/components/views/rooms/SimpleRoomHeader.js
index 2f8c5eaf11..7f2bb0048a 100644
--- a/src/components/views/rooms/SimpleRoomHeader.js
+++ b/src/components/views/rooms/SimpleRoomHeader.js
@@ -17,6 +17,8 @@ limitations under the License.
'use strict';
var React = require('react');
+var sdk = require('../../../index');
+var dis = require("../../../dispatcher");
/*
* A stripped-down room header used for things like the user settings
@@ -28,19 +30,39 @@ module.exports = React.createClass({
propTypes: {
title: React.PropTypes.string,
onCancelClick: React.PropTypes.func,
+
+ // is the RightPanel collapsed?
+ collapsedRhs: React.PropTypes.bool,
+ },
+
+ onShowRhsClick: function(ev) {
+ dis.dispatch({ action: 'show_right_panel' });
},
render: function() {
+ var TintableSvg = sdk.getComponent("elements.TintableSvg");
+
var cancelButton;
if (this.props.onCancelClick) {
cancelButton =
}
+ var showRhsButton;
+ /* // don't bother cluttering things up with this for now.
+ if (this.props.collapsedRhs) {
+ showRhsButton =
+
+
+
+ }
+ */
+
return (
{ this.props.title }
+ { showRhsButton }
{ cancelButton }