Make rooms and spaces list responsive (#8088)

pull/21833/head
Suguru Hirahara 2022-03-24 08:50:02 +00:00 committed by GitHub
parent a5589d40e2
commit d92977df9e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 151 additions and 132 deletions

View File

@ -91,12 +91,6 @@ limitations under the License.
} }
} }
.mx_SpaceHierarchy_list {
list-style: none;
padding: 0;
margin: 0;
}
.mx_SpaceHierarchy_roomCount { .mx_SpaceHierarchy_roomCount {
> h3 { > h3 {
display: inline; display: inline;
@ -154,33 +148,45 @@ limitations under the License.
padding-left: 12px; padding-left: 12px;
} }
.mx_SpaceHierarchy_list {
list-style: none;
padding: 0;
margin: 0;
li.mx_SpaceHierarchy_roomTileWrapper {
list-style: none;
.mx_SpaceHierarchy_roomTile { .mx_SpaceHierarchy_roomTile {
position: relative; position: relative;
padding: 8px 16px; padding: 8px 16px;
border-radius: 8px; border-radius: 8px;
box-sizing: border-box; box-sizing: border-box;
display: grid; display: flex;
grid-template-columns: 20px auto max-content; flex-wrap: wrap;
grid-column-gap: 8px; gap: 6px 12px;
grid-row-gap: 6px;
align-items: center;
.mx_BaseAvatar { .mx_SpaceHierarchy_roomTile_item {
font-weight: $font-semi-bold;
font-size: $font-15px;
line-height: $font-18px;
display: grid;
grid-template-columns: 20px auto;
gap: 6px 8px;
align-items: center;
flex: 1; // wrap action buttons
.mx_SpaceHierarchy_roomTile_avatar {
grid-row: 1; grid-row: 1;
grid-column: 1; grid-column: 1;
} }
.mx_SpaceHierarchy_roomTile_name { .mx_SpaceHierarchy_roomTile_name {
font-weight: $font-semi-bold;
font-size: $font-15px;
line-height: $font-18px;
grid-row: 1; grid-row: 1;
grid-column: 2; grid-column: 2;
.mx_InfoTooltip, .mx_InfoTooltip,
.mx_SpaceHierarchy_roomTile_joined { .mx_SpaceHierarchy_roomTile_joined {
display: inline;
margin-left: 12px; margin-left: 12px;
color: $tertiary-content; color: $tertiary-content;
font-size: $font-12px; font-size: $font-12px;
@ -199,7 +205,12 @@ limitations under the License.
} }
} }
.mx_InfoTooltip {
display: inline-block;
}
.mx_SpaceHierarchy_roomTile_joined { .mx_SpaceHierarchy_roomTile_joined {
display: inline;
position: relative; position: relative;
padding-left: 16px; padding-left: 16px;
@ -220,22 +231,24 @@ limitations under the License.
} }
.mx_SpaceHierarchy_roomTile_info { .mx_SpaceHierarchy_roomTile_info {
grid-row: 2;
grid-column: 2;
font-size: $font-14px; font-size: $font-14px;
font-weight: initial;
line-height: $font-18px; line-height: $font-18px;
color: $secondary-content; color: $secondary-content;
grid-row: 2;
grid-column: 2/3;
display: -webkit-box; display: -webkit-box;
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
-webkit-line-clamp: 2; -webkit-line-clamp: 2;
overflow: hidden; overflow: hidden;
} }
}
.mx_SpaceHierarchy_actions { .mx_SpaceHierarchy_actions {
text-align: right; display: flex;
margin-left: 20px; align-items: center;
grid-column: 3; column-gap: 12px;
grid-row: 1/3; margin-left: auto;
.mx_AccessibleButton { .mx_AccessibleButton {
line-height: $font-24px; line-height: $font-24px;
@ -251,8 +264,11 @@ limitations under the License.
.mx_Checkbox { .mx_Checkbox {
display: inline-flex; display: inline-flex;
vertical-align: middle;
margin-left: 12px; label {
width: 16px;
height: 16px;
}
} }
} }
@ -264,14 +280,14 @@ limitations under the License.
} }
} }
&.mx_SpaceHierarchy_joining .mx_AccessibleButton { &.mx_SpaceHierarchy_joining {
.mx_AccessibleButton {
visibility: visible; visibility: visible;
padding: 4px 18px; padding: 4px 18px;
} }
} }
}
li.mx_SpaceHierarchy_roomTileWrapper { }
list-style: none;
} }
.mx_SpaceHierarchy_roomTile, .mx_SpaceHierarchy_roomTile,

View File

@ -206,13 +206,15 @@ const Tile: React.FC<ITileProps> = ({
} }
const content = <React.Fragment> const content = <React.Fragment>
<div className="mx_SpaceHierarchy_roomTile_item">
<div className="mx_SpaceHierarchy_roomTile_avatar">
{ avatar } { avatar }
</div>
<div className="mx_SpaceHierarchy_roomTile_name"> <div className="mx_SpaceHierarchy_roomTile_name">
{ name } { name }
{ joinedSection } { joinedSection }
{ suggestedSection } { suggestedSection }
</div> </div>
<div <div
className="mx_SpaceHierarchy_roomTile_info" className="mx_SpaceHierarchy_roomTile_info"
ref={e => e && linkifyElement(e)} ref={e => e && linkifyElement(e)}
@ -225,6 +227,7 @@ const Tile: React.FC<ITileProps> = ({
> >
{ description } { description }
</div> </div>
</div>
<div className="mx_SpaceHierarchy_actions"> <div className="mx_SpaceHierarchy_actions">
{ button } { button }
{ checkbox } { checkbox }