Page 1 of 1

Decoupling the presentation layer so it's no longer hard coded

Posted: Sun Jan 24, 2021 12:21 pm
by Teddyboy
Hi Paul,

I think you may have already started down this path with the inclusion of a HTML component library in CMC in beta 8. Depending on how you do this, it could lead to users able make a their own skin for CMC. Sage TV did this with there own external WYSIWYG html application Sage TV Studio. I think it would make CMC's presentation more agnostic and easier for you to make changes to it. Not everything would be completely customizable. You'd have to maintain some uniformity for settings and what not. Of course this won't happen overnight as it's going to be some work to decouple the engine from the presentation layer and reintegrate them.

This might make it easier for you to capture windows messages to display them within the CMC interface. I really hate it when a windows dialog box pops up in the middle of the interface. It really ruins the experience for me. I get that you need to display those messages, but I just want to keep it in the interface like WMC did.

Re: Decoupling the presentation layer so it's no longer hard coded

Posted: Sun Jan 24, 2021 1:47 pm
by Pauven
I've been thinking the exact same thing.

One of the big decisions I'll have to make is whether I try to shoehorn a new presentation layer into the current CMC codebase, or actually start over from scratch with a clean-sheet design.

I'm actually leaning towards a clean-sheet design. I had no idea where MM Browser was going when I started this project 3.5 years ago. Now that I know, some of the early design choices are getting in the way of improving CMC. A clean-sheet design isn't as crazy as it sounds, as 90% of the functional logic would port right over.

I doubt any of this will occur in 2021.