···77777878 const settings = {
7979 // Core block-editor settings: a custom mediaUpload routes uploads to the PDS (SP3).
8080- editor: mediaUpload ? { mediaUpload } : {},
8080+ editor: {
8181+ ...( mediaUpload ? { mediaUpload } : {} ),
8282+ // isolated-block-editor defaults to a fixed top toolbar (the block tools
8383+ // dock into the header). Turn that off so the contextual block toolbar
8484+ // floats with — and follows — the selected block as you write.
8585+ hasFixedToolbar: false,
8686+ },
8187 iso: {
8288 moreMenu: false,
8389 footer: true,
+32-4
src/styles/editor-chrome.css
···241241.skypress-editor .iso-editor .interface-interface-skeleton__header {
242242 padding-top: 1rem;
243243}
244244+/* isolated-block-editor doesn't bundle `@wordpress/edit-post`'s header layout, so
245245+ `.editor-header` ships with no flex rule — the right-hand settings region (which
246246+ holds the Settings cog) has nothing pushing it to the top-right and reads as
247247+ missing. Lay the header out ourselves: tools on the left, settings on the right. */
248248+.skypress-editor .iso-editor .editor-header {
249249+ display: flex;
250250+ align-items: center;
251251+ justify-content: space-between;
252252+}
244253.skypress-editor .iso-editor .edit-post-visual-editor {
245254 background-color: transparent;
246255}
···267276.skypress-editor .iso-editor .components-accessible-toolbar .components-button {
268277 color: var(--ink);
269278}
279279+/* The Settings (cog) button lives in the header's settings region — outside the
280280+ toolbar groups re-skinned above — so it keeps Gutenberg's hard-coded near-black
281281+ (#1e1e1e) icon colour and disappears against the dark paper surface. Tint it
282282+ from the ink token like the toolbar buttons. */
283283+.skypress-editor .iso-editor .editor-header__settings .components-button {
284284+ color: var(--ink);
285285+}
286286+/* The block-inspector popover opened by that cog (`.iso-inspector`) collapses to
287287+ its content width: isolated-block-editor doesn't bundle `@wordpress/interface`'s
288288+ complementary-area sizing, so the panel has no width of its own. Give it the
289289+ standard editor sidebar width. The popover portals out of `.skypress-editor`,
290290+ so this rule is deliberately unscoped (the class is unique to this editor). */
291291+.iso-inspector .components-popover__content {
292292+ width: 280px;
293293+ max-width: calc( 100vw - 2rem );
294294+}
270295/* Both toolbar rows (document tools: insert/undo/redo; and the block tools that
271296 appear on selection) sat flush against the editor's left edge — and the block
272297 row carried no inline padding at all, so it didn't line up with the row above.
···276301 padding-left: 0.75rem;
277302 padding-right: 0.75rem;
278303}
279279-/* The "Show/Hide block tools" collapse toggle (`<<`/`>>`). The header toolbar
280280- stacks its rows vertically, so this toggle lands orphaned on its own line —
281281- and it's redundant here anyway: the block tools auto-expand whenever a block
282282- is selected, so the toggle never has a useful effect. Hide it. */
304304+/* We run the editor with `hasFixedToolbar: false` so the block tools float with
305305+ the selected block. But the package still renders a *docked* copy of the block
306306+ toolbar in the header (gated only by viewport, not by the fixed-toolbar setting),
307307+ so we'd get two block toolbars at once. Hide the docked one — the floating
308308+ contextual toolbar is the single source of block tools — along with its now-
309309+ pointless "Show/Hide block tools" collapse toggle (`<<`/`>>`). */
310310+.skypress-editor .iso-editor .editor-collapsible-block-toolbar,
283311.skypress-editor .iso-editor .edit-post-header__block-tools-toggle {
284312 display: none;
285313}