How can we create a classic Modal Experience?

How can we create a classic Modal Experience?

iklimis
Advocate Advocate
826 Views
4 Replies
Message 1 of 5

How can we create a classic Modal Experience?

iklimis
Advocate
Advocate

Hello Forma Team!

 

I am returning to the 'modal' or 'popup' topic in order express a significant need within our extension for a traditional modal feature within Forma. Our application heavily relies on modals that cover the entire window and disable interaction with the background content, ensuring a focused and uninterrupted user experience.

While the innovative approach of the 'floating panel' feature that Forma Sdk currently provides is valued, it presents substantial challenges for our use case. The necessity to load content via an iframe(or embedded view  more accurately) and establish communication through window port messaging complicates our implementation significantly. It requires us to relocate a considerable amount of code and logic into the floating panel, which is far from ideal for our extension's architecture and user flow.

Furthermore keep in mind that moving everything into the floating panel is not an option due to a decisive business decision at the executive level.

 

Integrating a traditional modal feature that aligns with the conventional modal behavior — covering the entire window and disabling background interaction —would greatly enhance the functionality and user experience of our extension.

Possible solutions might be: 
- make the Weave modal work in the Forma platform and cover the entire window with backdrop and actions
- adjust the floating panel to look like modal with backdrop and background interaction disabled - maybe not have to use port messaging to communicate with it.
- make possibly an adjustment in order to have access to the main window style?

Any help or ideas would be greatly appreciated!
Thanks a million!
Giannis

 

 

0 Likes
827 Views
4 Replies
Replies (4)
Message 2 of 5

md_amjad_hossain
Autodesk
Autodesk

Hei Giannis:

 

Thanks for your question and for the great suggestion. The first concern that you have about having a full screen modal, could be solved by a `full-screen` floating panel, that we have now. To configure that, you just need to got the extension management and configure your extension(Integration - Buttons(Yaml section)). example below - 

 

 

 

- actions:
    click:
      type: OPEN_FLOATING_PANEL
      placement:
        type: fullscreen
      preferredSize:
        width: 400
        height: 400
      url: http://localhost:9999/
  label: Example

 

 

Note: The full screen feature is an experimental feature, its might subject to change.

 

And, about the other concern, due to the security reason, we cant allow client code to run inside forma. I hope, you can understand that.

Thanks



Md Amjad Hossain
Software Development Engineer
0 Likes
Message 3 of 5

iklimis
Advocate
Advocate

Hey @md_amjad_hossain 

Thanks for your reply.

I have experimented with the floating panel and observed its functionality, but it doesn't quite meet our needs.

I'm interested in whether it's possible to enhance the Floating panel so that it functions similarly to the Weave Modal component.

 

It's crucial for our application that the user is prevented from interacting with any other part of Forma until the modal window is closed. 

This functionality is key to streamlining our development process.

0 Likes
Message 4 of 5

md_amjad_hossain
Autodesk
Autodesk

Hei @iklimis

 

I can understand your problem, and thanks for your suggestion.

 

But, right now, we don't have any feature like modal for extension developer, But, I did raise an internal feature request and lets see if we can prioritise it. 

 

And lastly, I can say, right now, the only way to prevent user interacting with the scene is to open the floating panel as `full screen`. 



Md Amjad Hossain
Software Development Engineer
0 Likes
Message 5 of 5

iklimis
Advocate
Advocate

Hi @md_amjad_hossain !

Thanks for taking the time to raise an internal feature request. A modal feature would certainly be a great help or us

I look forward to seeing how this develops and appreciate your efforts to potentially prioritize it.


Thanks again 
Giannis

 

0 Likes