Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ability to drag to reorder tabs #256

Open
austincondiff opened this issue Mar 25, 2022 · 12 comments
Open

Ability to drag to reorder tabs #256

austincondiff opened this issue Mar 25, 2022 · 12 comments
Assignees
Labels
enhancement good first issue
Projects

Comments

@austincondiff
Copy link
Collaborator

@austincondiff austincondiff commented Mar 25, 2022

We should be able to reorder tabs like the default tabs in macOS. They should animate as you are dragging just as they do here...

Screen.Recording.2022-03-25.at.4.35.21.PM.mov
@austincondiff austincondiff added the enhancement label Mar 25, 2022
@lukepistrol lukepistrol added the good first issue label Mar 29, 2022
@austincondiff austincondiff added this to Features To do in Release 1.0 Mar 30, 2022
@austincondiff austincondiff changed the title [FEAT] - Ability to drag to reorder tabs Ability to drag to reorder tabs Mar 31, 2022
@lukepistrol
Copy link
Collaborator

@lukepistrol lukepistrol commented Apr 4, 2022

Consider this solution.

@lilingxi01
Copy link
Collaborator

@lilingxi01 lilingxi01 commented Apr 18, 2022

Can assign this to me.

@austincondiff
Copy link
Collaborator Author

@austincondiff austincondiff commented Apr 20, 2022

@lilingxi01 you might take the same approach @jav-solo did in #477 to do this.

The order needs to be remembered even after closing and reopening the app. It will of corse not be in Preferences as it is project dependent.

Keep in mind that we also plan #338.

@lukepistrol
Copy link
Collaborator

@lukepistrol lukepistrol commented Apr 20, 2022

It's probably best to save it to the projects .codeedit folder. You can extend the AppPreferences or even better make a ProjectPreferences module to fetch/save settings that are project related.

Screen Shot 2022-04-20 at 17 10 51

@austincondiff
Copy link
Collaborator Author

@austincondiff austincondiff commented Apr 20, 2022

@lukepistrol I don’t think that it should be in the project .codeedit directory. We should take VS code’s lead on this one and not create a project .codeedit directory unless absolutely necessary (aka project preferences are modified). Some people don’t know to add that file to their gitignore.

Xcode doesn’t do this, VS code doesn’t do this, there’s no reason we should either imo

@lilingxi01
Copy link
Collaborator

@lilingxi01 lilingxi01 commented Apr 20, 2022

The order needs to be remembered even after closing and reopening the app. It will of corse not be in Preferences as it is project dependent.

I wonder which file has done the "remembering" behavior?

@lukepistrol
Copy link
Collaborator

@lukepistrol lukepistrol commented Apr 20, 2022

@austincondiff ok but how do we store it then? We need some way to uniquely identify a project. The path will not work since it is subject to change. Some git hash also won't work since some projects might not be a git repository. I think it is the only option to make some kind of project specific .codeedit folder that lives in the root of the project. We could automatically add it to .gitignore once created.

@austincondiff
Copy link
Collaborator Author

@austincondiff austincondiff commented Apr 20, 2022

I just confirmed how it works in VS Code. I opened a project directory, opened a few tabs. Then in Finder I renamed the parent directory's name. I went back to VS Code and my files disappeared from my sidebar. I tried expanding the empty root directory and it said directory not found. I closed VS Code, reopened and I opened the project in the new location. When it opened no tabs were opened.

tldr; It does in fact use the path as the identifier.

@austincondiff
Copy link
Collaborator Author

@austincondiff austincondiff commented Apr 20, 2022

But I can't stress enough, do not clutter up the users directory unless absolutely necessary.

@lilingxi01
Copy link
Collaborator

@lilingxi01 lilingxi01 commented Apr 20, 2022

I think it is the only option to make some kind of project specific .codeedit folder that lives in the root of the project. We could automatically add it to .gitignore once created.

Can you confirm how VSCode did it? I remember VSCode does not automatically add .vscode into .gitignore, but I also do not see any "opened-tab" or "tab-order" related modifications from other's commits.

Update:

So, should we store the "opened-tab" or "tab-order" in Application Support? Or should we just not store them at all?

@austincondiff
Copy link
Collaborator Author

@austincondiff austincondiff commented Apr 21, 2022

@lilingxi01 after discussing this with @lukepistrol, we have come to this conclusion: #513

Go ahead and start implement the ability to drag to reorder and by the time you are done with that @lukepistrol will be have his piece in place so that we can persist the order.

@austincondiff austincondiff moved this from Features To do to In progress in Release 1.0 Jun 1, 2022
@stale stale bot added the wontfix label Jun 20, 2022
@CodeEditApp CodeEditApp deleted a comment from stale bot Jun 20, 2022
@austincondiff austincondiff removed the wontfix label Jun 20, 2022
@austincondiff austincondiff moved this from In progress to Urgent / Blocking other issues in Release 1.0 Jun 22, 2022
@austincondiff
Copy link
Collaborator Author

@austincondiff austincondiff commented Jun 22, 2022

Blocking

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement good first issue
Projects
Release 1.0
Urgent / Blocking other issues
Development

No branches or pull requests

3 participants