-
-
Notifications
You must be signed in to change notification settings - Fork 128
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
Make the Application
fully composable
#705
base: main
Are you sure you want to change the base?
Conversation
@@ -39,7 +39,7 @@ export { type IPlugin }; | |||
* UI applications with the ability to be safely extended by third | |||
* party code via plugins. | |||
*/ | |||
export class Application<T extends Widget = Widget> { | |||
export class Application<T extends Widget | HTMLElement = Widget> { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe it could be useful to detail the benefit for providing an HTMLElement
directly, instead of creating a new Widget()
with its node
option?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the review @jtpio
I updated the PR description. Does it answer your question?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
5c89d1f
to
d722a13
Compare
This follows the extraction of the plugin logic #703 to make the
Application
fully composable.It also reduces the constrain on the shell to be a raw html element. The reason to remove the
Widget
constrains is to allow other frameworks to be used with the Lumino Application without using the widgets framework (as the context menu can be switched to a custom one).