Skip to content

Hide BottomAppBar in FacilityConfigPage when in app context #15545 - #15701

Merged
marcellamaki merged 1 commit into
learningequality:developfrom
tushaar-05:fix-facility-config-bottom-bar-15545
Oct 30, 2026
Merged

marcellamaki merged 1 commit into
learningequality:developfrom
tushaar-05:fix-facility-config-bottom-bar-15545

Conversation

@tushaar-05

@tushaar-05 tushaar-05 commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

Closes #15545

Summary

  • Headline: Prevent an empty bottom app bar from showing up on the Facility Settings page in the app.
  • Motivation: On the Facility Settings page, the save button already shows up directly inside the form when viewed in the Android app. However, the bottom bar component was still being rendered, leaving a blank 72px floating bar at the bottom of the screen that blocked content.
  • Approach:
    • Moved the !isAppContext check up to <BottomAppBar> itself (similar to how DeviceSettingsPage handles it), so the bar is completely hidden in the app.
    • Updated the existing unit test in FacilityConfigPage.spec.js to confirm the bottom bar isn't rendered in app mode.

References

Visual Changes (Videos / Screenshots)

Before Fix After Fix
kolibriUI.mp4
fix.mp4

Reviewer guidance

  • Verification performed:
    • Ran unit tests with pnpm test-jest for FacilityConfigPage.spec.js and all other facility tests (all 129 tests passed).
    • Ran linter and pre-commit checks locally with no issues.
  • Reviewer testing steps:
    • In a standard browser view, confirm the "Save changes" button still appears in the bottom bar as expected.
    • In app mode (isAppContext: true), check that the empty bottom bar is gone and the save button sits inside the page form.

AI usage

I used an AI assistant to help compare the template logic with DeviceSettingsPage and adjust the corresponding test in FacilityConfigPage.spec.js. I reviewed and tested all changes locally before submitting.

@tushaar-05
tushaar-05 requested review from a team and leq-bot and a balanced review from Copilot October 28, 2026 05:15

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota.

An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing. Review the Copilot code review billing settings.

@github-actions github-actions Bot added APP: Facility Re: Facility App (user/class management, facility settings, csv import/export, etc.) DEV: frontend SIZE: small labels Oct 28, 2026
@learning-equality-bot

Copy link
Copy Markdown
Contributor

👋 Hi @tushaar-05, thanks for contributing!

For the review process to begin, please verify that the following is satisfied:

  • Contribution is aligned with our contributing guidelines

  • Pull request description has correctly filled AI usage section & follows our AI guidance:

    AI guidance

    State explicitly whether you didn't use or used AI & how.

    If you used it, ensure that the PR is aligned with Using AI as well as our DEEP framework. DEEP asks you:

    • Disclose — Be open about when you've used AI for support.
    • Engage critically — Question what is generated. Review code for correctness and unnecessary complexity.
    • Edit — Review and refine AI output. Remove unnecessary code and verify it still works after your edits.
    • Process sharing — Explain how you used the AI so others can learn.

    Examples of good disclosures:

    "I used Claude Code to implement the component, prompting it to follow the pattern in ComponentX. I reviewed the generated code, removed unnecessary error handling, and verified the tests pass."

    "I brainstormed the approach with Gemini, then had it write failing tests for the feature. After reviewing the tests, I used Claude Code to generate the implementation. I refactored the output to reduce verbosity and ran the full test suite."

📢✨ Before we assign a reviewer:

  • @rtibblesbot will pre-review this pull request. Its comments are generated by an LLM, and should be evaluated accordingly.
  • We'll also invite community pre-review. See the community review guidance for both authors and reviewers.

Also check that issue requirements are satisfied & you ran pre-commit locally.

Pull requests that don't follow the guidelines will be closed.

Reviewer assignment can take up to 2 weeks.

@rtibblesbot

rtibblesbot commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

🟡 Waiting for changes

Outcome: reviewed 9e0d93b

Last updated: 2026-10-28 05:31 UTC

@github-actions

Copy link
Copy Markdown
Contributor

@rtibblesbot rtibblesbot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR #15701: no findings.

Moving v-if="!isAppContext" onto <BottomAppBar> fixes #15545. DeviceSettingsPage already hides its bar the same way.

  • CI passing.
  • Jest not run locally: the worktree has no node_modules.
  • Manual QA did not complete, so the app-context layout is unverified in a running app.

Next step: Needs a full code review by a human engineer, then manual QA once that reviewer sets Needs QA.

  • The author is outside the team: confirm this should be built at all.
  • User-visible files changed: kolibri/plugins/facility/frontend/views/FacilityConfigPage/index.vue.
  • In app context, confirm the facility settings page shows no empty bottom bar and Save changes still works from the page body.

Written by rtibblesbot, an LLM-based coding agent.

it('shows Save changes in the page content instead of the bottom app bar', () => {
renderPage({ isAppContext: true });
const bottomBar = screen.getByTestId('bottom-bar');
expect(screen.queryByTestId('bottom-bar')).not.toBeInTheDocument();

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

praise: This test now fails without the fix. The old assertion passed even with the bug's empty bar rendered.

@marcellamaki marcellamaki left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code review + manual QA confirm. Thank you @tushaar-05

@marcellamaki
marcellamaki merged commit 6351dba into learningequality:develop Oct 30, 2026
154 checks passed
@rtibblesbot

Copy link
Copy Markdown
Contributor

Quick check on rtibblesbot's review of this PR: react 👍 helpful · 😕 mixed · 👎 not helpful. Reply with anything specific.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

APP: Facility Re: Facility App (user/class management, facility settings, csv import/export, etc.) community-review DEV: frontend SIZE: small

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[UI] Empty BottomAppBar rendered on Facility Config page in app context (Android)

4 participants