Merge pull request #1964 from matrix-org/t3chguy/tag_panel_a11y

fix styling of clearButton when its not there
This commit is contained in:
David Baker 2018-06-14 11:47:44 +01:00 committed by GitHub
commit 5523c1e50a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 6 deletions

View file

@ -17,7 +17,6 @@ limitations under the License.
.mx_TagPanel { .mx_TagPanel {
flex: 0 0 60px; flex: 0 0 60px;
background-color: $tertiary-accent-color; background-color: $tertiary-accent-color;
cursor: pointer;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
@ -25,7 +24,11 @@ limitations under the License.
justify-content: space-between; justify-content: space-between;
} }
.mx_TagPanel .mx_TagPanel_clearButton { .mx_TagPanel_items_selected {
cursor: pointer;
}
.mx_TagPanel .mx_TagPanel_clearButton_container {
/* Constant height within flex mx_TagPanel */ /* Constant height within flex mx_TagPanel */
height: 70px; height: 70px;
width: 60px; width: 60px;

View file

@ -1,5 +1,5 @@
/* /*
Copyright 2017 New Vector Ltd. Copyright 2017, 2018 New Vector Ltd.
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@ -26,6 +26,7 @@ import dis from '../../dispatcher';
import { _t } from '../../languageHandler'; import { _t } from '../../languageHandler';
import { Droppable } from 'react-beautiful-dnd'; import { Droppable } from 'react-beautiful-dnd';
import classNames from 'classnames';
const TagPanel = React.createClass({ const TagPanel = React.createClass({
displayName: 'TagPanel', displayName: 'TagPanel',
@ -116,8 +117,10 @@ const TagPanel = React.createClass({
/>; />;
}); });
const itemsSelected = this.state.selectedTags.length > 0;
let clearButton; let clearButton;
if (this.state.selectedTags.length > 0) { if (itemsSelected) {
clearButton = <AccessibleButton className="mx_TagPanel_clearButton" onClick={this.onClearFilterClick}> clearButton = <AccessibleButton className="mx_TagPanel_clearButton" onClick={this.onClearFilterClick}>
<TintableSvg src="img/icons-close.svg" width="24" height="24" <TintableSvg src="img/icons-close.svg" width="24" height="24"
alt={_t("Clear filter")} alt={_t("Clear filter")}
@ -126,8 +129,14 @@ const TagPanel = React.createClass({
</AccessibleButton>; </AccessibleButton>;
} }
return <div className="mx_TagPanel"> const classes = classNames('mx_TagPanel', {
{ clearButton } mx_TagPanel_items_selected: itemsSelected,
});
return <div className={classes}>
<div className="mx_TagPanel_clearButton_container">
{ clearButton }
</div>
<div className="mx_TagPanel_divider" /> <div className="mx_TagPanel_divider" />
<GeminiScrollbarWrapper <GeminiScrollbarWrapper
className="mx_TagPanel_scroller" className="mx_TagPanel_scroller"