Explore a "Classic" UI mode (2007-style SL layout, like Firestorm): chosen at startup, live switch as a bonus #489

Open
opened 2026-10-06 14:15:23 +00:00 by sky_line · 1 comment
Owner

Explore offering a "Classic" UI mode organised like the 2007-era Second Life viewer: a bottom button bar (Chat, IM, Friends, Groups, Fly, Snapshot, Search, Build, Map, Mini-map, Inventory), a classic menu layout, and floater-based windows rather than side panels.

Firestorm's default layout is organised this way today, so it's a good reference for how it should be laid out and behave. Many long-time residents expect it, and it's often why people stick with FS.

Approach to explore

  • A UI mode chosen in Preferences → Interface and in the first-run setup / login screen.
  • Applied at startup if live switching is too hard (restart prompt, like the skin change). Live switching would be a bonus: rebuild the toolbars, menus and side-panel/floater hosting without a relaunch.
  • Likely pieces:
    • a toolbar preset (classic bottom bar) and a classic menu bar (menu_viewer.xml variant)
    • floaters instead of the side panel for People, Places, Inventory, Profile and Appearance
    • classic chat bar placement
    • nearby chat as its own window
  • Separate the mode (layout and behaviour) from the skin (colours and art), so Classic works with any skin.

Constraints

  • Write our own XUI, layout and code. Use Firestorm as a reference for organisation and behaviour, not as a source to copy. If anything is ever ported, it must come from a released FS version with credit, and no FS artwork (see the recent skin licensing cleanup and the released-code-only rule).
  • Must not regress the default (modern) UI or its performance.
  • UI-scale correct at 100%/125%/150% (#460).

Deliverable for the exploration

A short write-up covering:

  • which floaters, panels, menus and toolbars change;
  • what blocks live switching (floater/panel re-parenting, menu rebuild, saved rects);
  • an estimate;
  • a prototype of the bottom bar and menu layout behind a debug setting.
Explore offering a **"Classic" UI mode** organised like the 2007-era Second Life viewer: a bottom button bar (Chat, IM, Friends, Groups, Fly, Snapshot, Search, Build, Map, Mini-map, Inventory), a classic menu layout, and floater-based windows rather than side panels. Firestorm's default layout is organised this way today, so it's a good **reference for how it should be laid out and behave**. Many long-time residents expect it, and it's often why people stick with FS. ## Approach to explore - A UI mode chosen in **Preferences → Interface** and in the first-run setup / login screen. - **Applied at startup** if live switching is too hard (restart prompt, like the skin change). **Live switching** would be a bonus: rebuild the toolbars, menus and side-panel/floater hosting without a relaunch. - Likely pieces: - a toolbar preset (classic bottom bar) and a classic menu bar (`menu_viewer.xml` variant) - **floaters instead of the side panel** for People, Places, Inventory, Profile and Appearance - classic chat bar placement - nearby chat as its own window - Separate the **mode** (layout and behaviour) from the **skin** (colours and art), so Classic works with any skin. ## Constraints - **Write our own** XUI, layout and code. Use Firestorm as a reference for organisation and behaviour, not as a source to copy. If anything is ever ported, it must come from a **released** FS version with credit, and **no FS artwork** (see the recent skin licensing cleanup and the released-code-only rule). - Must not regress the default (modern) UI or its performance. - UI-scale correct at 100%/125%/150% (#460). ## Deliverable for the exploration A short write-up covering: - which floaters, panels, menus and toolbars change; - what blocks live switching (floater/panel re-parenting, menu rebuild, saved rects); - an estimate; - a prototype of the bottom bar and menu layout behind a debug setting.
sky_line added this to the Slipstream project 2026-10-06 15:04:14 +00:00
Author
Owner

Owner notes from user feedback (running list)

  1. Received Items as a real inventory folder. Received items should be an actual folder in the inventory tree that behaves like any other folder (open it in its own window, drag in / out, sort, filter), the way Firestorm presents it. Drop our current dropdown / panel presentation of received items in favour of this.
  2. Click-through nearby chat overlay. The nearby chat popups in the bottom left can be made click-through (no mouse input; clicks reach the world behind them) -- a new option, on by default when the user picks "Firestorm" in the welcome screen's "where did you come from" choice.
  3. Contacts inside Conversations (Firestorm choice). For users who picked "Firestorm" in the welcome screen, the contacts list lives in the Conversations window: the Contacts button opens the contacts pane inside Conversations instead of a separate window.
  4. Configurable fade time for the bottom-left nearby chat. Expose how long nearby chat stays and how long it fades in Preferences (today only the debug settings NearbyToastLifeTime 23 s / NearbyToastFadingTime 3 s). When the user comes from Firestorm, use FS's default.
    • Note from FS's released defaults: FS's toast timings are the same as ours (23 s / 3 s), but FS shows nearby chat in a console by default (FSUseNearbyChatConsole on: plain text lines in the world view, not floaters), where a line stays 20 s (ChatPersistTime) with up to 40 lines (ConsoleMaxLines). So "FS's default" here means a 20 s persist time -- and the FS feel likely comes from the console style itself (click-through, no boxes), which relates to note 2.
  5. Console-style nearby chat (decided). Add a nearby chat display mode that renders incoming nearby chat as console lines over the world view (plain text, no boxes, never takes mouse input), alongside today's overlay/cards. Users who pick "Firestorm" in the welcome screen get the console mode by default, with a 20 s persist time and up to ~40 lines; persist time, fade and line count configurable in Preferences. (Supersedes the FS-specific part of notes 2 and 4: the overlay's own click-through option and fade time stay for everyone else.)
  6. Preferences: cover FS's missing tabs and preferences. Expand Preferences to include what FS's "User Interface" and "Firestorm" tabs (and other FS-only preference controls) offer, where the preference applies to us: map each FS preference to an existing setting of ours, a new setting worth adding, or "not applicable" -- then place them. (Measured gap at FS 7.2.5: only ~31% of FS's preference controls exist here; FS's UI + Firestorm tabs hold 188 settings with no equivalent.) Goes with #143 (Preferences rework + search).
  7. Window organisation: case by case. FS organises several windows differently. For each such window, decide on UX merit whether to adopt FS's layout or keep ours -- no blanket copying. Track the decision per window (window, FS layout, ours, decision, why).
## Owner notes from user feedback (running list) 1. **Received Items as a real inventory folder.** Received items should be an actual folder in the inventory tree that behaves like any other folder (open it in its own window, drag in / out, sort, filter), the way Firestorm presents it. **Drop our current dropdown / panel presentation** of received items in favour of this. 2. **Click-through nearby chat overlay.** The nearby chat popups in the bottom left can be made click-through (no mouse input; clicks reach the world behind them) -- a new option, **on by default when the user picks "Firestorm" in the welcome screen's "where did you come from" choice**. 3. **Contacts inside Conversations (Firestorm choice).** For users who picked "Firestorm" in the welcome screen, the contacts list lives in the Conversations window: the Contacts button opens the contacts pane inside Conversations instead of a separate window. 4. **Configurable fade time for the bottom-left nearby chat.** Expose how long nearby chat stays and how long it fades in Preferences (today only the debug settings `NearbyToastLifeTime` 23 s / `NearbyToastFadingTime` 3 s). When the user comes from Firestorm, use FS's default. - Note from FS's released defaults: FS's toast timings are the same as ours (23 s / 3 s), but FS shows nearby chat in a **console** by default (`FSUseNearbyChatConsole` on: plain text lines in the world view, not floaters), where a line stays **20 s** (`ChatPersistTime`) with up to 40 lines (`ConsoleMaxLines`). So "FS's default" here means a 20 s persist time -- and the FS feel likely comes from the console style itself (click-through, no boxes), which relates to note 2. 5. **Console-style nearby chat (decided).** Add a nearby chat display mode that renders incoming nearby chat as console lines over the world view (plain text, no boxes, never takes mouse input), alongside today's overlay/cards. Users who pick "Firestorm" in the welcome screen get the console mode by default, with a 20 s persist time and up to ~40 lines; persist time, fade and line count configurable in Preferences. (Supersedes the FS-specific part of notes 2 and 4: the overlay's own click-through option and fade time stay for everyone else.) 6. **Preferences: cover FS's missing tabs and preferences.** Expand Preferences to include what FS's "User Interface" and "Firestorm" tabs (and other FS-only preference controls) offer, where the preference applies to us: map each FS preference to an existing setting of ours, a new setting worth adding, or "not applicable" -- then place them. (Measured gap at FS 7.2.5: only ~31% of FS's preference controls exist here; FS's UI + Firestorm tabs hold 188 settings with no equivalent.) Goes with #143 (Preferences rework + search). 7. **Window organisation: case by case.** FS organises several windows differently. For each such window, decide on UX merit whether to adopt FS's layout or keep ours -- no blanket copying. Track the decision per window (window, FS layout, ours, decision, why).
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
sky_line/Slipstream#489
No description provided.