In a discussion titled ‘Custom composer fullscreen issue’ under the Dev category, saish reports that customizations added via the composer-fields connector disappear in fullscreen mode, likely because the connector isn’t available in that template. Attempts to use pluginOutlet with composeState and lazyHash failed. NateDhaliwal suggests using api.onToolbarCreate() for toolbar buttons, but saish clarifies they’re adding a full custom form (inputs, selects, file uploads) and hiding the default textarea. NateDhaliwal then proposes the before-composer-fields connector, which reportedly persists in fullscreen. saish acknowledges this might work but notes the drawback: they’d need to manually rebuild the entire composer UI, including the category selector and other default components, which currently rely on built-in functionality. The issue centers on maintaining custom form elements across composer modes without duplicating core UI logic.
I created a custom composer using the composer-fields connector, which works as expected in the standard (docked) composer view. However, when switching to fullscreen mode, the customizations do not appear. I believe this is because the connector I used does not exist in the fullscreen composer template.
To address this, I attempted to use a pluginOutlet within a conditional block based on composeState, passing the composer.model through outletArgs with lazyHash. Unfortunately, this approach did not work. I also experimented with different connectors, but none of them produced the desired results.
If anyone has suggestions or best practices for resolving this issue, I would greatly appreciate the guidance.
I am adding a custom form within the composer-fields connector, which includes elements such as input fields, text areas, select options, and file uploads. In order to accommodate this, I have hidden the default d-textarea-wrapper.
Yes, I believe this approach will work. However, the challenge is that I would need to recreate the entire composer. Currently, I am relying on the default category selector, which means I would also need to add it manually within the before-composer-fields connector, along with the other required elements.