Wim Leers: XB week 21: web standards-powered bug fixes
The typical post-DrupalCon slow week — from travel woes to taking some time off, to passing on learnings to the rest of the team. But there’s still some interesting things to note this week :)
The funny bug fixed with one line of HTML
During DrupalCon, Chris “cosmicdreams” Weber spotted a funny edge case we somehow hadn’t triggered during development: after placing a component using Experience Builder (XB), using the component props form to specify values and pressing Enter, no it actually submits the form, because that’s what forms do! But in this case, it is not meant to be submitted: the preview is updated live and saving will (eventually) happen automatically.
I investigated, and discovered the existence of <form method="dialog">
, which turns out to be perfect for this use case! 1
Thanks to Chris in particular for not just reporting this, but also persevering in fixing this, including writing his very first end-to-end Cypress test! Along the way, half the team contributed either in-person at DrupalCon (Ben “bnjmnm” Mullins and Bálint “balintbrews” Kléri) or remotely (Jesse “jessebaker” Baker, Utkarsh “utkarsh_33”, Deepak “deepakkm” Mishra and I).
The bug fixed with CSS instead of JS and even net-deleting CSS
When placing components and causing the height to change, the UI became jumpy — not good.
Gaurav “gauravvvv” started working on a fix, and in reviewing it, Jesse thought of a different approach altogether … the result: a +8,-53
diffstat that deleted a bunch of JS (one entire file even) and replaced it with a pure CSS solution (fit-content
) — even one CSS line less than before!
Research mode: continued
I mentioned last week that a bunch of us were in research mode.
Ted “tedbow” Bowman and Travis “traviscarden” Carden continued research on #3475672: auto-saving, drafts, and all possible ways to achieve that — with Travis overhauling that issue summary in such a magnificently structured way that has rarely been seen on drupal.org. It really helps streamline the discussion!
Similarly, Harumi “hooroomoo” Jang, Xinran “xinran” Cao, and Alex “effulgentsia” Bronstein continued iterating on #3475363: in-UI (JS) component creation Proof-of-Concept using StackBlitz — stay tuned for a demo! :D
Missed a prior week? See all posts tagged Experience Builder.
Goal: make it possible to follow high-level progress by reading ~5 minutes/week. I hope this empowers more people to contribute when their unique skills can best be put to use!
For more detail, join the #experience-builder
Slack channel. Check out the pinned items at the top!
Assorted clean-up & bugfixes
- Deepak lifted all methods out of
SdcController
2 into separate invokable services-as-controllers, which turned a single massive file into much more easily digestible pieces — and he was able to remove some former controller methods that had lost their usages. - Shyam “shyam_bhatt” Bhatt, Omkar “omkar-pd” Deshpande and Jesse fixed the zoom buttons behaving erratically.
- … and a bunch more small bugs that are less interesting :)
Week 21 was September 30–October 6, 2024.
-
I love that after all these years there’s still more to discover in the HTML spec, and more affordances are available that others have thoughtfully constructed that I’ve never before needed! ↩︎
-
Originally named just fine, but definitely in need of a rename to prepare for #3454519: [META] Support component types other than SDC! ↩︎