* refactor(room-list): migrate SpaceStore off the legacy room list store SpaceStore.setActiveRoomInSpace iterated the legacy RoomListStore's `orderedLists` in `TAG_ORDER`; switch it to the space-aware RoomListStoreV3.getSortedRoomsInActiveSpace() accessor. This drops the last non-UI dependency on the legacy store and on `TAG_ORDER` (exported from LegacyRoomList, deleted next). * feat(room-list)!: remove the legacy room list UI Delete the old sublist-based room list and its components now that the new RoomListPanel is the default. Removed: LegacyRoomList, LegacyRoomListHeader, RoomSublist, ExtraTile, RoomTile (+ Subtitle/ CallSummary), RoomBreadcrumbs and RoomSearch, plus their styles and tests. LeftPanel collapses to the RoomListPanel-only path. The shared `contextMenuBelow` helper is relocated into RoomResultContextMenus (its only remaining consumer). * feat(room-list)!: remove the legacy RoomListStore The legacy sublist-based room list UI is gone, so the old `stores/room-list` store (Algorithm, sorters, filters, layout store, space watcher) has no remaining consumers. Delete the directory and its tests. MatrixChat.forgetRoom no longer calls the legacy `manualRoomUpdate`; the new room list store removes the room on the `AfterForgetRoom` dispatch that still fires. Drop the `mxRoomListStore`/`mxRoomListLayoutStore` globals and the now-dead test imports. * feat(room-list)!: remove the feature_new_room_list labs flag The new room list is now the only room list, so remove the feature_new_room_list labs flag and make its enabled behaviour unconditional everywhere it was gated: - LoggedInView: always use the resizable layout and NEW_ROOM_LIST_MIN_WIDTH; drop the collapsible/minimized legacy path. - SpaceStore: People and Favourites are dropped from metaSpaceOrder (per the long-standing TODO on the removed accessor). - MessagePreviewStore: stop appending thread replies to previews. - Settings, SidebarUserSettingsTab, PreferencesUserSettingsTab, QuickSettingsButton, SpacePanel, LandmarkNavigation: drop the flag reads and legacy branches. Update the tests that toggled the flag; the People/Favourites meta space tests covered behaviour that the flag (default on) already disabled. * feat(room-list)!: remove the dead legacy left-panel resizer LoggedInView still built the old `Resizer`/`CollapseDistributor` over an `lp-resizer` ResizeHandle and persisted `mx_lhs_size`. That handle is no longer rendered (the resizable layout is now driven by LeftResizablePanelView + ResizerViewModel, which persists its own state via RoomList.panelSize/RoomList.isPanelCollapsed), so the old resizer was inert dead code left over from the legacy room list. Remove createResizer/loadResizer/loadResizerPreferences, the _resizeContainer/resizeHandler refs, the ResizeHandle render, the mx_lhs_size handling and NEW_ROOM_LIST_MIN_WIDTH, plus the unit tests that exercised the mocked resizer. * feat(room-list)!: update i18n files * refactor(room-list): remove the now-unused collapseLhs state `collapseLhs` is write-only since the left panel no longer collapses: it was last read by LoggedInView's `shouldUseMinimizedUI`, removed with the feature_new_room_list flag. Drop it from MatrixChat's IState (and its assignments), collapsing the hide/show_left_panel handlers to just the `notifyLeftHandleResized()` call they still need, and from LoggedInView's IProps and the test props. * fix(room-list): instantiate message previewers lazily Removing the unused SettingsStore import from MessagePreviewStore (when the feature_new_room_list flag was dropped) changed module load order and exposed a latent circular dependency: ReactionEventPreview imports MessagePreviewStore, which eagerly did `new ReactionEventPreview()` at module-eval — so importing ReactionEventPreview first (as its unit test does) hit "ReactionEventPreview is not a constructor". Construct the previewers lazily on first use (cached) instead of at module load, so nothing dereferences a mid-evaluation module. Fixes ReactionEventPreview-test. * test(room-list): remove `feature_new_room_list` labs flag in e2e tests * chore: remove remaining `newRoomList` flag * chore: cleanup theme files * fix: restore the re-resizable TouchEvent polyfill * chore: remove usage of breadcrumbs settings in BreadcrumbStore * Revert "fix(room-list): instantiate message previewers lazily" This reverts commit 4e6eedfff0449c68a96c0470a4eb425b5aec5512. * chore: remove unused function in BreadCrumbStore * test: remove unused fuction of BreadcrumStore in tests * test: add tests for RoomResultContextMenu
144 lines
6.0 KiB
Plaintext
144 lines
6.0 KiB
Plaintext
/*
|
|
Copyright 2024 New Vector Ltd.
|
|
Copyright 2019 The Matrix.org Foundation C.I.C.
|
|
|
|
SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only OR LicenseRef-Element-Commercial
|
|
Please see LICENSE files in the repository root for full details.
|
|
*/
|
|
|
|
$font-family: var(--font-family, $font-family);
|
|
$monospace-font-family: var(--font-family-monospace, $monospace-font-family);
|
|
|
|
/* Colors from Figma Compound https://www.figma.com/file/X4XTH9iS2KGJ2wFKDqkyed/Compound?node-id=559%3A741 */
|
|
$accent: var(--accent-color, $accent);
|
|
$alert: var(--alert, $alert);
|
|
$links: var(--links, $links);
|
|
$primary-content: var(--primary-content, $primary-content);
|
|
$secondary-content: var(--secondary-content, $secondary-content);
|
|
$tertiary-content: var(--tertiary-content, $tertiary-content);
|
|
$quaternary-content: var(--quaternary-content, $quaternary-content);
|
|
$quinary-content: var(--quinary-content, $quinary-content);
|
|
$system: var(--system, $system);
|
|
$system-transparent: var(--system-transparent, #e1e6ec00);
|
|
$background: var(--background, $background);
|
|
$panels: var(--panels, var(--cpd-color-gray-600));
|
|
$panel-actions: var(--panels-actions, var(--cpd-color-gray-300));
|
|
|
|
/* --timeline-background-color */
|
|
$custom-theme-background: var(--timeline-background-color, var(--cpd-color-bg-canvas-default));
|
|
$button-secondary-bg-color: $custom-theme-background;
|
|
$lightbox-border-color: $custom-theme-background;
|
|
$menu-bg-color: $custom-theme-background;
|
|
$message-action-bar-bg-color: $custom-theme-background;
|
|
$background: $custom-theme-background;
|
|
$togglesw-ball-color: var(--cpd-color-bg-action-primary-rest);
|
|
$togglesw-off-color: var(--togglesw-off-color);
|
|
$droptarget-bg-color: var(--timeline-background-color-50pct); /* still needs alpha at .5 */
|
|
$authpage-modal-bg-color: var(--timeline-background-color-50pct); /* still needs alpha at .59 */
|
|
$roomheader-bg-color: $custom-theme-background;
|
|
|
|
/* --roomlist-highlights-color */
|
|
$panel-actions: var(--roomlist-highlights-color);
|
|
|
|
/* --sidebar-color */
|
|
$spacePanel-bg-color: var(--sidebar-color);
|
|
$tooltip-timeline-bg-color: var(--sidebar-color);
|
|
$dialog-backdrop-color: var(--sidebar-color-50pct);
|
|
|
|
/* --roomlist-background-color */
|
|
$header-panel-bg-color: var(--roomlist-background-color);
|
|
$header-panel-bg-hover: var(--cpd-color-bg-action-secondary-hovered);
|
|
$panel-gradient: var(--roomlist-background-color-0pct), var(--roomlist-background-color);
|
|
/* these were #f2f5f8 instead of #f3f8fd, but close enough */
|
|
$dark-panel-bg-color: var(--roomlist-background-color);
|
|
$input-lighter-bg-color: var(--roomlist-background-color);
|
|
$secondary-accent-color: var(--roomlist-background-color);
|
|
$selected-color: var(--roomlist-background-color);
|
|
$widget-menu-bar-bg-color: var(--roomlist-background-color);
|
|
$roomlist-bg-color: var(--roomlist-background-color);
|
|
|
|
/* --timeline-text-color */
|
|
$message-action-bar-fg-color: var(--timeline-text-color);
|
|
$primary-content: var(--timeline-text-color);
|
|
$roomtopic-color: var(--timeline-text-color-50pct);
|
|
/* was #212121 */
|
|
$topleftmenu-color: var(--timeline-text-color);
|
|
/* was #45474a */
|
|
$dialog-title-fg-color: var(--timeline-text-color);
|
|
/* was #4e5054 */
|
|
$authpage-lang-color: var(--timeline-text-color);
|
|
/* was #232f32 */
|
|
$authpage-primary-color: var(--timeline-text-color);
|
|
|
|
/* --roomlist-separator-color */
|
|
$input-darker-bg-color: var(--roomlist-separator-color);
|
|
$primary-hairline-color: var(--roomlist-separator-color); /* originally #e5e5e5, but close enough */
|
|
$secondary-hairline-color: var(--secondary-hairline-color);
|
|
|
|
/* --timeline-text-secondary-color */
|
|
$authpage-secondary-color: var(--timeline-text-secondary-color);
|
|
$pinned-color: var(--timeline-text-secondary-color);
|
|
$settings-subsection-fg-color: var(--timeline-text-secondary-color);
|
|
$roomheader-addroom-bg-color: var(--timeline-text-secondary-color);
|
|
/* was #747474 */
|
|
$light-fg-color: var(--timeline-text-secondary-color);
|
|
$focus-bg-color: var(--focus-bg-color, $focus-bg-color);
|
|
$room-highlight-color: var(--room-highlight-color);
|
|
|
|
$rte-room-pill-color: $room-highlight-color;
|
|
|
|
/* was #888888 */
|
|
$info-plinth-fg-color: var(--timeline-text-secondary-color);
|
|
|
|
/* --primary-color */
|
|
$accent-alt: var(--primary-color);
|
|
|
|
/* --warning-color */
|
|
$button-danger-disabled-bg-color: var(--warning-color-50pct); /* still needs alpha at 0.5 */
|
|
|
|
/* --timeline-highlights-color */
|
|
$event-selected-color: var(--timeline-highlights-color);
|
|
$event-highlight-bg-color: var(--timeline-highlights-color);
|
|
|
|
/* redirect some variables away from their hardcoded values in the light theme */
|
|
$settings-grey-fg-color: $primary-content;
|
|
|
|
/* --eventbubble colors */
|
|
$eventbubble-self-bg: var(--eventbubble-self-bg, $eventbubble-self-bg);
|
|
$eventbubble-others-bg: var(--eventbubble-others-bg, $eventbubble-others-bg);
|
|
$eventbubble-bg-hover: var(--eventbubble-bg-hover, $eventbubble-bg-hover);
|
|
|
|
$reaction-row-button-selected-bg-color: var(
|
|
--reaction-row-button-selected-bg-color,
|
|
$reaction-row-button-selected-bg-color
|
|
);
|
|
|
|
$menu-selected-color: var(--menu-selected-color, $menu-selected-color);
|
|
$pill-bg-color: var(--other-user-pill-bg-color, $pill-bg-color);
|
|
$pill-hover-bg-color: var(--other-user-pill-bg-color, $pill-hover-bg-color);
|
|
$pill-press-bg-color: var(--other-user-pill-bg-color, $pill-press-bg-color);
|
|
$icon-button-color: var(--icon-button-color, $icon-button-color);
|
|
|
|
$strong-input-border-color: var(--strong-input-border-color, $strong-input-border-color);
|
|
$inverted-bg-color: var(--strong-input-border-color, $inverted-bg-color);
|
|
|
|
/**
|
|
* Variation of the accent color.
|
|
* Generate this colour scale using LeonardoColor
|
|
* TODO: Add link
|
|
*/
|
|
$accent-100: var(--accent-color-100);
|
|
$accent-200: var(--accent-color-200);
|
|
$accent-300: var(--accent-color-300);
|
|
$accent-400: var(--accent-color-400);
|
|
$accent-500: var(--accent-color-500);
|
|
$accent-600: var(--accent-color-600);
|
|
$accent-700: var(--accent-color-700);
|
|
$accent-800: var(--accent-color-800);
|
|
$accent-900: var(--accent-color-900);
|
|
$accent-1000: var(--accent-color-1000);
|
|
$accent-1100: var(--accent-color-1100);
|
|
$accent-1200: var(--accent-color-1200);
|
|
$accent-1300: var(--accent-color-1300);
|
|
$accent-1400: var(--accent-color-1400);
|