diff options
Diffstat (limited to 'MatrixUtils.Web/Pages/Rooms/Index2Components/MainTabComponents')
-rw-r--r-- | MatrixUtils.Web/Pages/Rooms/Index2Components/MainTabComponents/MainTabSpaceItem.razor | 27 | ||||
-rw-r--r-- | MatrixUtils.Web/Pages/Rooms/Index2Components/MainTabComponents/MainTabSpaceItem.razor.css | 15 |
2 files changed, 42 insertions, 0 deletions
diff --git a/MatrixUtils.Web/Pages/Rooms/Index2Components/MainTabComponents/MainTabSpaceItem.razor b/MatrixUtils.Web/Pages/Rooms/Index2Components/MainTabComponents/MainTabSpaceItem.razor new file mode 100644 index 0000000..4216824 --- /dev/null +++ b/MatrixUtils.Web/Pages/Rooms/Index2Components/MainTabComponents/MainTabSpaceItem.razor @@ -0,0 +1,27 @@ +@using MatrixUtils.Abstractions +<div class="spaceListItem" onclick="@ToggleSpace"> + <MxcImage Circular="true" Height="32" Width="32" Homeserver="Space.Room.Homeserver" MxcUri="@Space.RoomIcon"></MxcImage> + <span class="spaceNameEllipsis">@Space.RoomName</span> +</div> + +@code { + + [Parameter] + public RoomInfo Space { get; set; } + + [Parameter] + public List<RoomInfo> OpenedSpaces { get; set; } + + protected override Task OnInitializedAsync() { + Space.PropertyChanged += (sender, args) => { StateHasChanged(); }; + return base.OnInitializedAsync(); + } + + public void ToggleSpace() { + if (OpenedSpaces.Contains(Space)) { + OpenedSpaces.Remove(Space); + } else { + OpenedSpaces.Add(Space); + } + } +} \ No newline at end of file diff --git a/MatrixUtils.Web/Pages/Rooms/Index2Components/MainTabComponents/MainTabSpaceItem.razor.css b/MatrixUtils.Web/Pages/Rooms/Index2Components/MainTabComponents/MainTabSpaceItem.razor.css new file mode 100644 index 0000000..c174567 --- /dev/null +++ b/MatrixUtils.Web/Pages/Rooms/Index2Components/MainTabComponents/MainTabSpaceItem.razor.css @@ -0,0 +1,15 @@ +.spaceNameEllipsis { + padding-left: 8px; + display: inline-block; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + vertical-align: middle; + width: calc(100% - 38px); +} + +.spaceListItem { + display: block; + width: 100%; + height: 50px; +} \ No newline at end of file |