From 238b58a6497ea8a7bc82b083802f6f89b34ee05b Mon Sep 17 00:00:00 2001
From: Brandy Smith <6577830+brandyscarney@users.noreply.github.com>
Date: Mon, 19 Jan 2026 10:28:17 -0500
Subject: [PATCH 1/3] feat(content): add content-fullscreen class when
fullscreen is applied
---
core/src/components/content/content.tsx | 1 +
1 file changed, 1 insertion(+)
diff --git a/core/src/components/content/content.tsx b/core/src/components/content/content.tsx
index 361939f7c27..72b156fafe0 100644
--- a/core/src/components/content/content.tsx
+++ b/core/src/components/content/content.tsx
@@ -462,6 +462,7 @@ export class Content implements ComponentInterface {
role={isMainContent ? 'main' : undefined}
class={createColorClasses(this.color, {
[mode]: true,
+ 'content-fullscreen': this.fullscreen,
'content-sizing': hostContext('ion-popover', this.el),
overscroll: forceOverscroll,
[`content-${rtl}`]: true,
From 23f883a5ee9c279130e22abb6a5037f12c19295b Mon Sep 17 00:00:00 2001
From: Brandy Smith <6577830+brandyscarney@users.noreply.github.com>
Date: Mon, 19 Jan 2026 10:28:27 -0500
Subject: [PATCH 2/3] test(content): add e2e test checking for
content-fullscreen class
---
.../content/test/fullscreen/content.e2e.ts | 28 +++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/core/src/components/content/test/fullscreen/content.e2e.ts b/core/src/components/content/test/fullscreen/content.e2e.ts
index d0d0d1f4e5d..c00c246a32e 100644
--- a/core/src/components/content/test/fullscreen/content.e2e.ts
+++ b/core/src/components/content/test/fullscreen/content.e2e.ts
@@ -13,5 +13,33 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, screenshot, co
await expect(page).toHaveScreenshot(screenshot(`content-fullscreen`));
});
+
+ test('should have content-fullscreen class when fullscreen is true', async ({ page }) => {
+ await page.setContent(
+ `
+
+ Hello
+
+ `,
+ config
+ );
+
+ const content = page.locator('ion-content');
+ await expect(content).toHaveClass(/content-fullscreen/);
+ });
+
+ test('should not have content-fullscreen class when fullscreen is false', async ({ page }) => {
+ await page.setContent(
+ `
+
+ Hello
+
+ `,
+ config
+ );
+
+ const content = page.locator('ion-content');
+ await expect(content).not.toHaveClass(/content-fullscreen/);
+ });
});
});
From 39819f5eff51bc9c7e8cf2e169a836a852a8a6bb Mon Sep 17 00:00:00 2001
From: Brandy Smith <6577830+brandyscarney@users.noreply.github.com>
Date: Mon, 26 Jan 2026 15:45:34 -0500
Subject: [PATCH 3/3] test(content): add comment explaining why test is needed
---
core/src/components/content/test/fullscreen/content.e2e.ts | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/core/src/components/content/test/fullscreen/content.e2e.ts b/core/src/components/content/test/fullscreen/content.e2e.ts
index c00c246a32e..8fb7e9a9f22 100644
--- a/core/src/components/content/test/fullscreen/content.e2e.ts
+++ b/core/src/components/content/test/fullscreen/content.e2e.ts
@@ -14,6 +14,11 @@ configs({ modes: ['md'], directions: ['ltr'] }).forEach(({ title, screenshot, co
await expect(page).toHaveScreenshot(screenshot(`content-fullscreen`));
});
+ /**
+ * The content-fullscreen class is added when fullscreen is true. The
+ * fullscreen attribute is not reflected in Angular, Vue, or React, so
+ * the class is needed for users to create custom themes.
+ */
test('should have content-fullscreen class when fullscreen is true', async ({ page }) => {
await page.setContent(
`