feat: add host-local custom project icons (#2335)
* feat(projects): add local icons and colors * refactor(projects): simplify appearance handling * fix(projects): serialize appearance saves * test(app): update project appearance expectations * test: fix project appearance CI expectations * refactor(projects): organize appearance code * fix(server): adopt main's reconcile model in project appearance updates * fix(projects): preserve host-local appearance targets * fix(desktop): restore Linux development startup Ubuntu can block Electron's unprivileged user-namespace fallback while the npm-installed sandbox helper is not SUID. Disable the Chromium process sandbox only in the Linux development runner so packaged desktop policy remains unchanged. * feat(projects): add custom project icons Keep URL acquisition in the client so the host daemon only validates uploaded bytes. Project name and icon changes share one adaptive edit sheet. * refactor(settings): scope projects by host --------- Co-authored-by: Mohamed Boudra <boudra.moha@gmail.com>
This commit is contained in:
co-authored by
Mohamed Boudra
parent
706ae3d9bb
commit
800bd2bef1
@@ -6,6 +6,7 @@ export interface WorkspaceStructureHostPlacement {
|
||||
projectId: string;
|
||||
iconWorkingDir: string;
|
||||
worktreeSupport: "supported" | "unsupported" | "unknown";
|
||||
customIconRevision?: string | null;
|
||||
}
|
||||
|
||||
export interface WorkspaceStructureProject {
|
||||
@@ -158,6 +159,7 @@ function addProjectToView(input: {
|
||||
projectId: project.projectId,
|
||||
iconWorkingDir: project.projectRootPath,
|
||||
worktreeSupport: project.projectKind === "git" ? "supported" : "unsupported",
|
||||
customIconRevision: project.projectCustomIconRevision,
|
||||
};
|
||||
const draft = byProject.get(viewKey);
|
||||
if (!draft) {
|
||||
|
||||
Reference in New Issue
Block a user