diff --git a/src/components/structures/RightPanel.js b/src/components/structures/RightPanel.js
index dedd715f9c..240a5b2efe 100644
--- a/src/components/structures/RightPanel.js
+++ b/src/components/structures/RightPanel.js
@@ -127,8 +127,9 @@ module.exports = React.createClass({
},
_initGroupStore(groupId) {
+ if (!groupId) return;
this._groupStore = GroupStoreCache.getGroupStore(
- this.context.matrixClient, this.props.groupId,
+ this.context.matrixClient, groupId,
);
this._groupStore.registerListener(this.onGroupStoreUpdated);
},
diff --git a/src/components/views/rooms/RoomTooltip.js b/src/components/views/rooms/RoomTooltip.js
index bbed5df8a5..714d57ca24 100644
--- a/src/components/views/rooms/RoomTooltip.js
+++ b/src/components/views/rooms/RoomTooltip.js
@@ -19,13 +19,16 @@ limitations under the License.
var React = require('react');
var ReactDOM = require('react-dom');
var dis = require('matrix-react-sdk/lib/dispatcher');
+import classNames from 'classnames';
module.exports = React.createClass({
displayName: 'RoomTooltip',
propTypes: {
- // Alllow the tooltip to be styled by the parent element
+ // Class applied to the element used to position the tooltip
className: React.PropTypes.string.isRequired,
+ // Class applied to the tooltip itself
+ tooltipClassName: React.PropTypes.string,
// The tooltip is derived from either the room name or a label
room: React.PropTypes.object,
label: React.PropTypes.string,
@@ -69,8 +72,12 @@ module.exports = React.createClass({
style.left = 6 + parent.getBoundingClientRect().right + window.pageXOffset;
style.display = "block";
+ const tooltipClasses = classNames(
+ "mx_RoomTooltip", this.props.tooltipClassName,
+ );
+
var tooltip = (
-
+
diff --git a/src/skins/vector/css/_components.scss b/src/skins/vector/css/_components.scss
index 230b5ae477..767af80589 100644
--- a/src/skins/vector/css/_components.scss
+++ b/src/skins/vector/css/_components.scss
@@ -35,6 +35,7 @@
@import "./matrix-react-sdk/views/elements/_ProgressBar.scss";
@import "./matrix-react-sdk/views/elements/_RichText.scss";
@import "./matrix-react-sdk/views/elements/_RoleButton.scss";
+@import "./matrix-react-sdk/views/elements/_ToolTipButton.scss";
@import "./matrix-react-sdk/views/groups/_GroupRoomList.scss";
@import "./matrix-react-sdk/views/login/_InteractiveAuthEntryComponents.scss";
@import "./matrix-react-sdk/views/login/_ServerConfig.scss";
diff --git a/src/skins/vector/css/matrix-react-sdk/structures/_GroupView.scss b/src/skins/vector/css/matrix-react-sdk/structures/_GroupView.scss
index 583ab2ce2e..2f7cd18720 100644
--- a/src/skins/vector/css/matrix-react-sdk/structures/_GroupView.scss
+++ b/src/skins/vector/css/matrix-react-sdk/structures/_GroupView.scss
@@ -304,6 +304,18 @@ limitations under the License.
}
.mx_GroupView_groupDesc textarea {
- width: 50%;
+ width: 100%;
+ max-width: 100%;
height: 150px;
}
+
+.mx_GroupView_groupDesc_placeholder {
+ background-color: $info-plinth-bg-color;
+ color: $info-plinth-fg-color;
+ border-radius: 10px;
+ text-align: center;
+
+ cursor: pointer;
+ padding: 100px 20px;
+ margin: 20px 0px;
+}
diff --git a/src/skins/vector/css/matrix-react-sdk/structures/_MyGroups.scss b/src/skins/vector/css/matrix-react-sdk/structures/_MyGroups.scss
index d7cbda9a9b..f76aefe383 100644
--- a/src/skins/vector/css/matrix-react-sdk/structures/_MyGroups.scss
+++ b/src/skins/vector/css/matrix-react-sdk/structures/_MyGroups.scss
@@ -87,8 +87,8 @@ limitations under the License.
}
.mx_MyGroups_placeholder {
- background-color: $group-my-groups-placeholder-bg;
- color: $group-my-groups-placeholder-fg;
+ background-color: $info-plinth-bg-color;
+ color: $info-plinth-fg-color;
line-height: 400px;
border-radius: 10px;
text-align: center;
diff --git a/src/skins/vector/css/matrix-react-sdk/views/elements/_RichText.scss b/src/skins/vector/css/matrix-react-sdk/views/elements/_RichText.scss
index 8b7c8f06bb..474a123455 100644
--- a/src/skins/vector/css/matrix-react-sdk/views/elements/_RichText.scss
+++ b/src/skins/vector/css/matrix-react-sdk/views/elements/_RichText.scss
@@ -26,7 +26,8 @@
}
.mx_EventTile_highlight .mx_EventTile_content .markdown-body a.mx_UserPill_me,
-.mx_EventTile_content .mx_AtRoomPill {
+.mx_EventTile_content .mx_AtRoomPill,
+.mx_MessageComposer_input .mx_AtRoomPill {
color: $accent-fg-color;
background-color: $mention-user-pill-bg-color;
padding-right: 5px;
diff --git a/src/skins/vector/css/matrix-react-sdk/views/elements/_ToolTipButton.scss b/src/skins/vector/css/matrix-react-sdk/views/elements/_ToolTipButton.scss
new file mode 100644
index 0000000000..ef9dd02b2a
--- /dev/null
+++ b/src/skins/vector/css/matrix-react-sdk/views/elements/_ToolTipButton.scss
@@ -0,0 +1,51 @@
+/*
+Copyright 2017 New Vector 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.
+*/
+
+.mx_ToolTipButton {
+ display: inline-block;
+ width: 11px;
+ height: 11px;
+ margin-left: 5px;
+
+ border: 2px solid $neutral-badge-color;
+ border-radius: 20px;
+ color: $neutral-badge-color;
+
+ transition: opacity 0.2s ease-in;
+ opacity: 0.6;
+
+ line-height: 11px;
+ text-align: center;
+
+ cursor: pointer;
+}
+
+.mx_ToolTipButton:hover {
+ opacity: 1.0;
+}
+
+.mx_ToolTipButton_container {
+ position: relative;
+ top: -18px;
+ left: 4px;
+}
+
+.mx_ToolTipButton_helpText {
+ width: 200px;
+ text-align: center;
+ line-height: 17px !important;
+}
+
diff --git a/src/skins/vector/css/themes/_base.scss b/src/skins/vector/css/themes/_base.scss
index d5db1367d9..fcc3c7b963 100644
--- a/src/skins/vector/css/themes/_base.scss
+++ b/src/skins/vector/css/themes/_base.scss
@@ -30,6 +30,10 @@ $pinned-color: #888;
$group-my-groups-placeholder-bg: #f7f7f7;
$group-my-groups-placeholder-fg: #888;
+// informational plinth
+$info-plinth-bg-color: #f7f7f7;
+$info-plinth-fg-color: #888;
+
$preview-bar-bg-color: #f7f7f7;
// left-panel style muted accent color
diff --git a/src/skins/vector/css/themes/_dark.scss b/src/skins/vector/css/themes/_dark.scss
index 034bd748ef..d6fa88d6ce 100644
--- a/src/skins/vector/css/themes/_dark.scss
+++ b/src/skins/vector/css/themes/_dark.scss
@@ -21,7 +21,7 @@ $focus-brightness: 200%;
$warning-color: #ff0064;
// groups
-$group-my-groups-placeholder-bg: #454545;
+$info-plinth-bg-color: #454545;
$other-user-pill-bg-color: rgba(255, 255, 255, 0.1);