mirror of
https://github.com/block/buzz.git
synced 2026-08-18 06:50:31 +02:00
Fix inbox header blur content offset.
This commit is contained in:
@@ -314,7 +314,8 @@ export function InboxDetailPane({
|
||||
|
||||
<div
|
||||
aria-busy={isThreadContextLoading}
|
||||
className="min-h-0 flex-1 overflow-y-auto overscroll-contain pb-32"
|
||||
className="-mt-13 min-h-0 flex-1 overflow-y-auto overscroll-contain pb-32 pt-13"
|
||||
data-testid="home-inbox-detail-scroll"
|
||||
>
|
||||
<div>
|
||||
{displayMessages.map((message, index) => (
|
||||
|
||||
@@ -435,7 +435,7 @@ export function InboxListPane({
|
||||
|
||||
{isReminders ? (
|
||||
<div
|
||||
className="flex min-h-0 flex-1 flex-col overflow-hidden"
|
||||
className="-mt-13 flex min-h-0 flex-1 flex-col overflow-hidden pt-13"
|
||||
data-testid="home-inbox-reminders"
|
||||
>
|
||||
{reminderPubkey ? (
|
||||
@@ -444,7 +444,7 @@ export function InboxListPane({
|
||||
</div>
|
||||
) : (
|
||||
<div
|
||||
className="min-h-0 flex-1 overflow-y-auto overscroll-contain"
|
||||
className="-mt-13 min-h-0 flex-1 overflow-y-auto overscroll-contain pt-13"
|
||||
data-testid="home-inbox-list"
|
||||
ref={scrollRef}
|
||||
>
|
||||
|
||||
@@ -37,14 +37,34 @@ test.describe("home inbox header collapsed-sidebar chrome clearance", () => {
|
||||
await expect(page.getByTestId("home-inbox-detail")).toBeVisible();
|
||||
|
||||
const homeInbox = page.getByTestId("home-inbox");
|
||||
const listScroller = page.getByTestId("home-inbox-list");
|
||||
const detailScroller = page.getByTestId("home-inbox-detail-scroll");
|
||||
const firstInboxItem = page
|
||||
.locator('[data-testid^="home-inbox-item-"]')
|
||||
.first();
|
||||
const selectedMessage = page.getByTestId("home-inbox-selected-message");
|
||||
const sharedBackdrop = page.getByTestId(
|
||||
"home-inbox-shared-header-backdrop",
|
||||
);
|
||||
await expect(sharedBackdrop).toHaveCount(1);
|
||||
await expect(firstInboxItem).toBeVisible();
|
||||
await expect(selectedMessage).toBeVisible();
|
||||
|
||||
const [homeBox, backdropBox, backdropFilter] = await Promise.all([
|
||||
const [
|
||||
homeBox,
|
||||
backdropBox,
|
||||
listScrollerBox,
|
||||
detailScrollerBox,
|
||||
firstInboxItemBox,
|
||||
selectedMessageBox,
|
||||
backdropFilter,
|
||||
] = await Promise.all([
|
||||
homeInbox.boundingBox(),
|
||||
sharedBackdrop.boundingBox(),
|
||||
listScroller.boundingBox(),
|
||||
detailScroller.boundingBox(),
|
||||
firstInboxItem.boundingBox(),
|
||||
selectedMessage.boundingBox(),
|
||||
sharedBackdrop.evaluate(
|
||||
(element) => getComputedStyle(element).backdropFilter,
|
||||
),
|
||||
@@ -52,10 +72,26 @@ test.describe("home inbox header collapsed-sidebar chrome clearance", () => {
|
||||
|
||||
expect(homeBox).not.toBeNull();
|
||||
expect(backdropBox).not.toBeNull();
|
||||
expect(listScrollerBox).not.toBeNull();
|
||||
expect(detailScrollerBox).not.toBeNull();
|
||||
expect(firstInboxItemBox).not.toBeNull();
|
||||
expect(selectedMessageBox).not.toBeNull();
|
||||
expect(Math.round(backdropBox?.x ?? 0)).toBe(Math.round(homeBox?.x ?? 0));
|
||||
expect(Math.round(backdropBox?.width ?? 0)).toBe(
|
||||
Math.round(homeBox?.width ?? 0),
|
||||
);
|
||||
expect(Math.round(listScrollerBox?.y ?? 0)).toBe(
|
||||
Math.round(backdropBox?.y ?? 0),
|
||||
);
|
||||
expect(Math.round(detailScrollerBox?.y ?? 0)).toBe(
|
||||
Math.round(backdropBox?.y ?? 0),
|
||||
);
|
||||
expect(Math.round(firstInboxItemBox?.y ?? 0)).toBeGreaterThanOrEqual(
|
||||
Math.round((backdropBox?.y ?? 0) + (backdropBox?.height ?? 0)),
|
||||
);
|
||||
expect(Math.round(selectedMessageBox?.y ?? 0)).toBeGreaterThanOrEqual(
|
||||
Math.round((backdropBox?.y ?? 0) + (backdropBox?.height ?? 0)),
|
||||
);
|
||||
expect(backdropFilter).not.toBe("none");
|
||||
|
||||
await waitForAnimations(page);
|
||||
|
||||
Reference in New Issue
Block a user