Skip to content

Conversation

@ferenci84
Copy link
Contributor

@ferenci84 ferenci84 commented Feb 9, 2025

Description

Simple tab feature integrated with the current history. This is a minimal usable version of this feature. More features may be added.

Issue (opened by me):
#4030
(fork feature is not added)

Related issues:
#774
#1858

Checklist

  • The relevant docs, if any, have been updated or created
  • The relevant tests, if any, have been updated or created

Screenshots

Will provide image in a comment.

Testing instructions

The following user actions are handled:

  • User can add new tabs
  • User can close tabs, but it makes sure at least one tab is opened.
  • User can open existing history
  • Tab name is updated upon changing the session name
  • Adding new session in other way like Cmd+L or Cmd+Shit+L also adds new tab, clicking last session goes back to the previously opened tab.

Missing:

  • For a new tab, session name not updated before the user changes tabs
  • Model name is not assigned to the current tab - if you change model name on one tab, it will be the same on every other tabs too.

Implementation notes:

  • A single TabBar component is added, and a tabsSlice redux slice.
  • The existing Chat component is not changed, only new session, load session, save session is called to imitate tab changing.

@netlify
Copy link

netlify bot commented Feb 9, 2025

Deploy Preview for continuedev canceled.

Name Link
🔨 Latest commit 763d93a
🔍 Latest deploy log https://app.netlify.com/sites/continuedev/deploys/67b0c5ace8df4c0008f47772

@ferenci84
Copy link
Contributor Author


Screenshot 2025-02-09 at 10 47 41

@ferenci84
Copy link
Contributor Author

Screenshot 2025-02-09 at 10 49 43

@mshostack
Copy link

Love it!

@ferenci84 ferenci84 mentioned this pull request Feb 13, 2025
2 tasks
@ferenci84
Copy link
Contributor Author

Note to myself. Possible improvements:

  • If, for any reason, a new empty tab is opened, any other non-active empty tab, that is not active, should be closed. Saving the number of messages (that is 0 for empty tabs) may help to implement this behaviour, otherwise the non-active session may need to be loaded.
  • middle-button should close the tab
  • X icon should be larger, and should have a color on hover, just like editor tabs in VS code.

Copy link
Contributor

@tomasz-stefaniak tomasz-stefaniak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is an excellent contribution! Thank you @ferenci84. I can't wait to start using this!

@tomasz-stefaniak tomasz-stefaniak merged commit 0115910 into continuedev:main Feb 27, 2025
31 checks passed
@Symfomany
Copy link

Very nice :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants