Skip to content

Improv bundles - #2288

Merged
wash2 merged 5 commits into
masterfrom
improv-bundles
Nov 10, 2026
Merged

wash2 merged 5 commits into
masterfrom
improv-bundles

Conversation

@wash2

@wash2 wash2 commented Nov 10, 2026

Copy link
Copy Markdown
Contributor

should fix some issues with long theme names, and weird behavior with frosted theme variables not being fully rebuilt on activation. Also fixes reset to default.


  • I have not included any LLM (also known as AI) generated content in this PR, including code, comments, and descriptions.
  • I understand these changes in full and will be able to respond to review comments.
  • My change is accurately described in the commit message.
  • My contribution is tested and working as described.
  • I have read the Developer Certificate of Origin and certify my contribution under its conditions.
  • I have read and followed all of the above requirements. For more information, see our contributor guide.

@wash2
wash2 requested review from a team November 10, 2026 05:31
mmstick
mmstick previously approved these changes Nov 10, 2026
@jklgrasso jklgrasso assigned jklgrasso and unassigned jklgrasso Nov 10, 2026

@jacobgkau jacobgkau left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

This applies a character limit to the name input box for new themes that are saved; the limit also applies in the Import dialog box, so I can't cause breakage by manually editing the files in an exported theme bundle. I can still cause the issue by editing the installed theme's file in ~/.config/cosmic/com.system76.CosmicThemeBundle.test-theme.Theme/v2/name, however. Are we sure we don't want to limit the actual display of an installed theme's text in the GUI to guard against that better?

@wash2

wash2 commented Nov 10, 2026

Copy link
Copy Markdown
Contributor Author

This applies a character limit to the name input box for new themes that are saved; the limit also applies in the Import dialog box, so I can't cause breakage by manually editing the files in an exported theme bundle. I can still cause the issue by editing the installed theme's file in ~/.config/cosmic/com.system76.CosmicThemeBundle.test-theme.Theme/v2/name, however. Are we sure we don't want to limit the actual display of an installed theme's text in the GUI to guard against that better?

Sure, I can apply the limit to the display of the name in the GUI as well, just in case. 👍

@hojjatabdollahi

Copy link
Copy Markdown
Contributor

Why not use ellipsis and allow for longer names?

@hojjatabdollahi

Copy link
Copy Markdown
Contributor

Something like this probably:

let name = text::body(name)
    .ellipsize(Ellipsize::End(EllipsizeHeightLimit::Lines(1)))
    .apply(container)
    .max_width(NAME_MAX_WIDTH);

@jacobgkau

jacobgkau commented Nov 10, 2026 •

Copy link
Copy Markdown
Member

@wash2 I did see that 40 characters is not short enough when COSMIC Settings is at its minimum window width. @WatchMkr had suggested making the minimum short enough to still see the edit/delete buttons when at the minimum window width. Below is the current 40-character max:

Screenshot_2026-11-10_12-14-56

So, it would need to be a few characters shorter if we're going with that approach. Otherwise, we could try an ellipses approach like @hojjatabdollahi is suggesting, if Carl's okay with it. But again, space needs to be reserved for the buttons if we do that, too.

@wash2

wash2 commented Nov 10, 2026

Copy link
Copy Markdown
Contributor Author

But again, space needs to be reserved for the buttons if we do that, too.

We can use a flex row to make this row responsive. I've added that in the latest commit, which should help.

@hojjatabdollahi

Copy link
Copy Markdown
Contributor

In my humble opinion: I think this page should be improved a bit more.
image

The "edit name" and "edit" feels confusing, when I edit the theme, it should show the name on the top with the ability to change it:
image

and the delete button should be on all custom themes' card. So to delete a theme I don't need to first activate it, wait for it to get applied, and then delete it.

Also the "Edit >" button being on the top makes it harder to edit, because I have to select a theme, scroll up and click on "edit", instead of just clicking on "Edit" on any theme I'm looking at in the list (imagine you have a long list of themes, scrolling up to edit is not cool).

I think the constellation cards should show the name on the card (maybe in the selected font), and have the edit and delete button (with the selected corner radius) on the card.

For example I have to click on the two Windows XP cards and scroll up to see their title, to know which one is which, and then scroll down activate the one I wanna delete and then scroll up and click delete.
image

@jacobgkau

Copy link
Copy Markdown
Member

@hojjatabdollahi While I agree with everything you're pointing out (and brought up the lack of names on the cards myself a few days ago), we're needing to get an initial version of this out shortly. We can definitely discuss those improvements with @maria-komarova for future updates, but I don't think we're going to want to delay a whole lot longer for pre-release improvements.

@jacobgkau jacobgkau left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Regression from master to this branch: if I change a theme's wallpaper, the theme's preview shows my new wallpaper when that theme is selected, but shows the theme's default wallpaper when it's not selected.

2026-11-10.13-37-03.mp4

On master, it shows the wallpaper the theme is currently set to whether the theme's selected or not, which seems like the correct behavior.

@wash2
wash2 requested a review from jacobgkau November 10, 2026 20:47

@jacobgkau jacobgkau left a comment •

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Alright, that last issue's fixed, and everything else seems to still be working like it was before.

(Edit: I forgot to add the majority of my review remarking on the features fixed earlier, so I'll put that in below.)

On 5aac863, the rename/delete/edit buttons now wrap to the next line if necessary, while using ellipses to truncate the theme name if it needs to be shortened beyond the width of the page:

Screenshot_2026-11-10_13-25-09 Screenshot_2026-11-10_13-29-54 Screenshot_2026-11-10_13-24-58

While nobody asked for the buttons to wrap to the next line, this is accomplishing the goal of keeping the buttons visible, and handles long theme names more visually gracefully than they were before.

We are still limiting the new name length to 40 characters in the rename & import dialogs, which can probably be removed later.

I'm seeing the frosted/glassy setting stay on what I set it to after changing the theme, so I think that bug is fixed. Resetting a theme to default works as expected.

These changes are only touching the appearance page and theme bundle config library, so regression testing the rest of the pages is not necessary.

@leviport
leviport requested a review from a team November 10, 2026 21:15
@wash2
wash2 merged commit 6aaf30d into master Nov 10, 2026
10 checks passed
@wash2
wash2 deleted the improv-bundles branch November 10, 2026 21:25
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.

5 participants