From 8c9f31ef4534bfdbbbc118c2ac5676bbc20a546d Mon Sep 17 00:00:00 2001 From: bender Date: Thu, 19 Feb 2026 02:25:03 +0000 Subject: [PATCH 1/5] Update src/app/blog/page.tsx --- src/app/blog/page.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/app/blog/page.tsx b/src/app/blog/page.tsx index da5011f..1d7d02f 100644 --- a/src/app/blog/page.tsx +++ b/src/app/blog/page.tsx @@ -19,9 +19,9 @@ export default function BlogPage() { contentWidth="medium" sizing="medium" background="none" - cardStyle="solid" + cardStyle="glass-elevated" primaryButtonStyle="shadow" - secondaryButtonStyle="solid" + secondaryButtonStyle="glass" headingFontWeight="medium" > -- 2.49.1 From edafe120fa48ef88bc4aec151e8293c0a65b0c39 Mon Sep 17 00:00:00 2001 From: bender Date: Thu, 19 Feb 2026 02:25:05 +0000 Subject: [PATCH 2/5] Update src/app/layout.tsx --- src/app/layout.tsx | 79 ++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 66 insertions(+), 13 deletions(-) diff --git a/src/app/layout.tsx b/src/app/layout.tsx index c00788e..44a4a06 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -4,8 +4,6 @@ import { Inter } from "next/font/google"; import "./globals.css"; import { ServiceWrapper } from "@/components/ServiceWrapper"; import Tag from "@/tag/Tag"; -import { Raleway } from "next/font/google"; -import { Instrument_Sans } from "next/font/google"; const dmSans = DM_Sans({ variable: "--font-dm-sans", subsets: ["latin"], @@ -36,16 +34,6 @@ export const metadata: Metadata = { } }; -const raleway = Raleway({ - variable: "--font-raleway", - subsets: ["latin"], -}); - -const instrumentSans = Instrument_Sans({ - variable: "--font-instrument-sans", - subsets: ["latin"], -}); - export default function RootLayout({ children, }: Readonly<{ @@ -54,7 +42,9 @@ export default function RootLayout({ return ( - + {children} @@ -451,6 +441,20 @@ export default function RootLayout({ originalContent = element.textContent; element.contentEditable = 'true'; + + if (!element.dataset.webildOriginalWhiteSpace) { + const computedStyle = window.getComputedStyle(element); + element.dataset.webildOriginalWhiteSpace = computedStyle.whiteSpace; + element.dataset.webildOriginalWordWrap = computedStyle.wordWrap; + element.dataset.webildOriginalOverflowWrap = computedStyle.overflowWrap; + element.dataset.webildOriginalOverflow = computedStyle.overflow; + } + + element.style.whiteSpace = 'pre-wrap'; + element.style.wordWrap = 'break-word'; + element.style.overflowWrap = 'break-word'; + element.style.overflow = 'visible'; + element.focus(); isEditing = true; @@ -560,6 +564,23 @@ export default function RootLayout({ element.contentEditable = 'false'; isEditing = false; + if (element.dataset.webildOriginalWhiteSpace) { + element.style.whiteSpace = element.dataset.webildOriginalWhiteSpace === 'normal' ? '' : element.dataset.webildOriginalWhiteSpace; + delete element.dataset.webildOriginalWhiteSpace; + } + if (element.dataset.webildOriginalWordWrap) { + element.style.wordWrap = element.dataset.webildOriginalWordWrap === 'normal' ? '' : element.dataset.webildOriginalWordWrap; + delete element.dataset.webildOriginalWordWrap; + } + if (element.dataset.webildOriginalOverflowWrap) { + element.style.overflowWrap = element.dataset.webildOriginalOverflowWrap === 'normal' ? '' : element.dataset.webildOriginalOverflowWrap; + delete element.dataset.webildOriginalOverflowWrap; + } + if (element.dataset.webildOriginalOverflow) { + element.style.overflow = element.dataset.webildOriginalOverflow === 'visible' ? '' : element.dataset.webildOriginalOverflow; + delete element.dataset.webildOriginalOverflow; + } + if (element.dataset.beforeInputHandler === 'true') { element.removeEventListener('beforeinput', () => {}); delete element.dataset.beforeInputHandler; @@ -865,6 +886,9 @@ export default function RootLayout({ const handleScroll = () => { if (!isActive) return; + + if (isEditing) return; + if (selectedElement) { makeUneditable(selectedElement, false); selectedElement.classList.remove(selectedClass); @@ -1238,6 +1262,31 @@ export default function RootLayout({ window.addEventListener('scroll', handleScroll, true); window.addEventListener('message', handleMessage, true); + let lastPathname = window.location.pathname; + + const notifyPageChange = () => { + window.parent.postMessage({ + type: 'webild-page-changed', + data: { pathname: window.location.pathname } + }, '*'); + }; + + window.addEventListener('popstate', () => { + if (lastPathname !== window.location.pathname) { + lastPathname = window.location.pathname; + notifyPageChange(); + } + }, true); + + const urlCheckInterval = setInterval(() => { + if (lastPathname !== window.location.pathname) { + lastPathname = window.location.pathname; + notifyPageChange(); + } + }, 500); + + notifyPageChange(); + window.webildCleanup = () => { isActive = false; @@ -1248,6 +1297,10 @@ export default function RootLayout({ removeHoverOverlay(); removeElementTypeLabel(); + if (urlCheckInterval) { + clearInterval(urlCheckInterval); + } + document.removeEventListener('mouseover', handleMouseOver, true); document.removeEventListener('mouseout', handleMouseOut, true); document.removeEventListener('click', handleClick, true); -- 2.49.1 From 270eae2e7b8f1198c44d93537c10858396b5c1de Mon Sep 17 00:00:00 2001 From: bender Date: Thu, 19 Feb 2026 02:25:06 +0000 Subject: [PATCH 3/5] Update src/app/page.tsx --- src/app/page.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/app/page.tsx b/src/app/page.tsx index f3651b8..011faf5 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -21,9 +21,9 @@ export default function LandingPage() { contentWidth="medium" sizing="medium" background="none" - cardStyle="solid" + cardStyle="glass-elevated" primaryButtonStyle="shadow" - secondaryButtonStyle="solid" + secondaryButtonStyle="glass" headingFontWeight="medium" >