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

Transparent window icons overlap multiple shapes incorrectly #161

Closed
chrisduerr opened this issue Oct 6, 2020 · 4 comments
Closed

Transparent window icons overlap multiple shapes incorrectly #161

chrisduerr opened this issue Oct 6, 2020 · 4 comments

Comments

@chrisduerr
Copy link
Contributor

When using semi-transparent window icons, there are some areas of increased intensity where different parts of the icons overlap. This seems like the usual problem you get when just rendering things to the target buffer immediately with the target transparency, instead of merging the shapes without any opacity before rendering it all together with the correct one.

Since one image speaks a thousand words:

tmp

@elinorbgr
Copy link
Member

Indeed, I guess our drawing code is too naive here, thanks for reporting it!

@elinorbgr
Copy link
Member

Following #183, the decorations provided in SCTK are explicitly FallbackFrame, a minimalist set of decorations that ensure usability of the window but makes no attempt at particular visual quality. Users of SCTK are invited to create their own implementation of the Frame trait fitting their needs.

@chrisduerr
Copy link
Contributor Author

Users of SCTK are invited to create their own implementation of the Frame trait fitting their needs.

Without having to look into this myself, this should make it trivial to provide external crates that plug into SCTK which provide whatever frame you might want to, right? So in theory this could work like a compile-time plugin system for SCTK frames? Or is there anything in this trait that would make it complicated to implement it in a separate crate?

@elinorbgr
Copy link
Member

The trait (and the rest of the interface of SCTK) is meant to be implementable externally, so yes, a crate providing an implementation for this trait should be possible without difficulty. If not, I'll consider it a bug in SCTK to be fixed.

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

No branches or pull requests

2 participants