Skip to content

Part 3 - Add "Switch to new Web IDE" in legacy Web IDE

What does this MR do and why?

This MR implements part of the UX proposal in this comment. When the vscode_web_ide feature is enabled (disabled by default) and the user has use_legacy_web_ide=true (false by default), then we show an open sidebar tab, inviting the user to try out the new Web IDE (still in development).

Screenshots or screen recordings

Feature flag off Feature flag on Confirm Error
Screen_Shot_2022-10-28_at_12.14.56_PM Screen_Shot_2022-10-28_at_12.13.53_PM Screen_Shot_2022-10-28_at_12.13.32_PM Screen_Shot_2022-10-28_at_12.13.14_PM

How to set up and validate locally

Setup local environment:

  1. Start rails console with rails c
  2. Enable feature flag Feature.enable(:vscode_web_ide)
  3. Update root user's legacy Web IDE preferences User.find(1).update!(use_legacy_web_ide: true)

Test:

  1. Login to root User in local environment
  2. Open Web IDE for any project
  3. The right sidebar should have a tab opened by default, prompting the user to switch to the new Web IDE
  4. (optional) This MR only adds the "legacy" to "new Web IDE" experience, so to go back you'll have to update the database with User.find(1).update!(use_legacy_web_ide: true).

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #370139 (closed)

Edited by Paul Slaughter

Merge request reports