Skip to content

Decouple multi-file editor from file list

The multi-file editor began as an replacement to the existing file list, blob viewer and blob editor. As the vision and ambition for an integrated editing experience has grown, tightly coupling the editor with the repository isn't the optimal direction.

Instead, we should decouple the multi-file editor so that we have a pathway to allow users to edit multiple projects and branches simultaneously. This is useful in a number of situations like when a user is working on their own branch, but wants to simultaneously review changes to a different branch/merge request.

Proposal

image

  • Decouple the editor from repository and branches, for example a route like gitlab.com/editor/{project}/{branch}
    • In future we may want to allow users to invite others to join their workspace which wouldn't work with the scheme above

Out of scope:

  • Persisting the workspace if the users leaves the page or closes the browser

Subtasks

  • Create own route (/-/ide)
  • Add vue-router
  • Add Button to Files Viewer based on Cookie
  • Remove Multi File Viewer Components
  • Rename Components to IDE
  • Support Project routes
  • Render Loaded Projects
  • Support Branch Routes
  • Render Branches under Projects
  • Render File based on route
  • Sidebar Layout + collapsable
  • Bottom Status Bar
  • File Area Layout
  • Cache TreeList result

Feature checklist

Make sure these are completed before closing the issue, with a link to the relevant commit.

Edited by Tim Zallmann