Hi everyone,
I’m Lindsay, a product manager at Bubble, here with an update and the latest improvements we’ve shipped to the redesigned property editor.
Coming soon: In the next couple weeks, we’ll be opening the beta to all users, who will be able to easily opt in or out via toggle, so this will be our last progress post before then.
Thanks to your input, we’ve gotten the new property editor to a place where we’d like more users to try it out. We’ll continue to prioritize improving the property editor after the beta launches, so please keep the feedback coming!
Here are the latest updates:
UX and UI improvements
Dynamic expressions are back inline. We’ve removed the dynamic expressions popover, so you can edit dynamic expressions inline again, with the option to expand them into a larger popover when more room is needed.

Workflow fields and custom states can be set inline instead of in a popover. Setting workflow fields and custom state values have been brought back inline to remove an extra layer of nesting and make editing feel faster and more direct. When adding or editing a field, inputs are now editable inline and automatically focus from field to operator to value. The new default state also shows Add all fields up front and consistently.

Make first / previous / next / last is back. We’ve brought element positioning back into the property editor, along with additional hotkeys to make editing faster and more reliable. We added new hotkeys for make first and make last, and we updated the make next and make previous shortcuts from the previous version (arrows) for accessibility reasons. They should now work more globally and consistently, not just when an element is selected on the canvas.
Try them out:
- Make first: Option + Cmd + [
- Make last: Option + Cmd + ]
- Move left/up: Cmd + [
- Move right/down: Cmd + ]
Min/max width and height are surfaced more prominently again (with infinity pixels). We updated these controls so they’re always visible instead of hidden behind a plus icon and use clearer labels. We also added back infinity pixels as a placeholder for elements without a max width or max height.
Workflows are now displayed more prominently in the Interaction tab. We introduced a clearer empty state to draw attention to workflows, made the button larger and easier to click, moved workflows higher in the section order, added a button to Add another workflow next to Edit workflow, and included a workflow count on the tab so it is easier to see how many workflows an element has.
Conditionals now prominently display the trash icon, scroll into view upon creation, and have a larger add property button. It’s now easier to delete conditionals, add new properties to them, and find them upon creation, since they scroll into view. Plus, Inherited from Style is now collapsed by default.
Operator dropdowns now use symbols consistently instead of words. To make options easier to scan, we’ve replaced labels like equals and greater than with symbols like = and >. Each symbol also includes searchable synonyms, so typing terms like “equals” or “greater than” will still surface the right option.
Child popovers will now consistently close upon clicking on a parent popover. This prevents child popovers from remaining open after focus shifts to a higher-level menu, so your screen and edits are easier to manage. Popovers should also no longer snap to the top left corner.
Color pickers now default to a static value instead of dynamic data because setting a fixed color is the more common use case.
Inputs for text, email body, static choices, and HTML content are now taller allowing more breathing room to write.
The Text section has been moved up to be right below the Styles section to make Text easier to access. For icon elements and buttons with icons, the Icon section will appear right below Styles as well.
Bug fixes
- User-defined plugin documentation will now be surfaced properly in the new PE
- Rich text editor actions (like font size, font color, links, emails, image) now work properly
- Create new accelerators are restored, including the ability to create a new field directly from workflows
- The background popover is more stable and no longer jumps around unexpectedly
- Random sorting and Unsorted now appear without requiring you to select a sort field first
- Base64-encode the result is now a toggle instead of an input field
- Rendering errors tied to certain inherited style conditionals have been fixed, including cases involving background and all-padding conditionals
- You can now set background style to none for an element conditional
- The backend workflow Modify types button now surfaces the correct popup
- Pages made with the new property editor now default to 1080px width again instead of 800px
- Make private no longer appears in two places for picture and file uploaders
- You can now set an arbitrary date/time value in search constraints
- Reusables that are groups or popups now show their associated styles
- Overridden style dropdowns no longer incorrectly change background color when clicked
- Parameters should now always be its own section instead of buried within Configure
- Search constraints based on unique ID now default correctly to = for backwards compatibility
- Placeholder color no longer disappears when selected as a conditional property
- You can now set a text shadow to none in conditionals
- Dynamic text inputs in constraints now hide when the selected operator doesn’t need a value, like empty or isn’t empty
- Mobile map marker image properties now show the correct properties as choices
- Static image inputs now show a clearer Upload empty state, which was lacking
- In background image popovers, background color is now labeled as background color if empty to improve clarity
- The Styles tab for text elements now includes HTML tags
- Page conditional background labels no longer incorrectly show MISSING
- Dropdown plugin fields will are displayed at 100% width so they feel less crammed
- Static values can now be added inside dynamic expressions
- Inputs will no longer ever say just Dynamic with no plus icon
- Reusable elements will no longer retain properties from the previous reusable element upon triggering a custom event
- The popup styles tab now includes Grayout color and Grayout blur attributes
- SliderInput initial content appears will no longer appear invalid when set to a range
- The mobile Go to view action will now always properly save after refreshing the page or logging out.
- Inputs which can’t set a fit width will no longer present that option
- The search range and origin constraint fields for the is within operator will no longer be flagged as missing when populated
- Plugin-specific parameters will now always be available in conditional properties
Thanks for continuing to share feedback, it’s making a real difference. We’ll keep improving reliability, bringing back features that matter most, and adding new ones!
Lindsay



