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
|