Skip to content

Bug 2036752: Use correct registry path for PreXULSkeletonUI in enterprise builds and allow skeleton UI when MOZ_BYPASS_FELT is set#808

Open
victhorlopez wants to merge 1 commit intomozilla:enterprise-mainfrom
victhorlopez:bug/PreXULSkeletonUI
Open

Bug 2036752: Use correct registry path for PreXULSkeletonUI in enterprise builds and allow skeleton UI when MOZ_BYPASS_FELT is set#808
victhorlopez wants to merge 1 commit intomozilla:enterprise-mainfrom
victhorlopez:bug/PreXULSkeletonUI

Conversation

@victhorlopez
Copy link
Copy Markdown
Contributor

@victhorlopez victhorlopez commented Apr 28, 2026

Description

Bugzilla: Bug-2036752

In enterprise builds, the PreXULSkeletonUI startup check requires the -felt flag to be present, but mochitests don't pass this flag, so adding MOZ_BYPASS_FELT as an alternative allows the skeleton UI to run during tests and prevents browser_preXULSkeletonUIRegistry from failing on enterprise builds.

Additionally the MOZ_APP_BASENAME is used in C++ to compute the registry path, vs a hardcoded "firefox" on the test, which fails on enterprise


Dependencies / Related Issues

  • Depends on:

Screenshots


Testing

@victhorlopez victhorlopez self-assigned this Apr 28, 2026
@victhorlopez victhorlopez force-pushed the bug/PreXULSkeletonUI branch from 92de57f to b2b5414 Compare April 29, 2026 13:03
@victhorlopez victhorlopez changed the title Bug X: Fix felt condition to disable PreXULSkeletonUI Bug X: add case for ci on PreXULSkeletonUI Apr 29, 2026
@victhorlopez victhorlopez force-pushed the bug/PreXULSkeletonUI branch from b2b5414 to 3eecd0b Compare May 4, 2026 12:13
@victhorlopez victhorlopez changed the title Bug X: add case for ci on PreXULSkeletonUI Bug 2036752: add case for ci on PreXULSkeletonUI May 4, 2026
@victhorlopez victhorlopez force-pushed the bug/PreXULSkeletonUI branch from 3eecd0b to 0b33c33 Compare May 4, 2026 12:58
Comment thread browser/base/content/test/startup/browser_preXULSkeletonUIRegistry.js Outdated
victhorlopez added a commit to victhorlopez/enterprise-firefox that referenced this pull request May 4, 2026
@victhorlopez victhorlopez marked this pull request as ready for review May 5, 2026 07:22
@victhorlopez victhorlopez requested a review from a team May 5, 2026 07:23
Comment thread mozglue/misc/PreXULSkeletonUI.cpp Outdated
Comment thread mozglue/misc/PreXULSkeletonUI.cpp Outdated
@victhorlopez victhorlopez changed the title Bug 2036752: add case for ci on PreXULSkeletonUI Bug 2036752: Use correct registry path for PreXULSkeletonUI in enterprise builds and allow skeleton UI when MOZ_BYPASS_FELT is set May 5, 2026
@victhorlopez victhorlopez force-pushed the bug/PreXULSkeletonUI branch 2 times, most recently from 5c48c8c to 50b6afd Compare May 5, 2026 09:20
@victhorlopez victhorlopez added test-greening Fixes failing or flaky tests to restore passing CI status without changing core application logic branch:main PR that should be merged on enterprise-main branch labels May 5, 2026
@victhorlopez victhorlopez requested a review from lissyx May 5, 2026 11:53
WindowsRegistry: "resource://gre/modules/WindowsRegistry.sys.mjs",
});

const kRegPath = `Software\\Mozilla\\${AppConstants.MOZ_APP_BASENAME}\\PreXULSkeletonUISettings`;
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.

I think it's worth upstreaming this directly (and getting proper review from owners of that code).

Maybe @Mossop can help?

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.

Sure, if you can submit it I can review it, easy r+!

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

@victhorlopez victhorlopez force-pushed the bug/PreXULSkeletonUI branch 3 times, most recently from e39ace4 to 3c02f64 Compare May 6, 2026 17:06
…prise builds and allow skeleton UI when MOZ_BYPASS_FELT is set
@victhorlopez victhorlopez force-pushed the bug/PreXULSkeletonUI branch from 3c02f64 to 23a8412 Compare May 6, 2026 17:10
victhorlopez added a commit to victhorlopez/enterprise-firefox that referenced this pull request May 6, 2026


class BrowserSkeletonUI(BaseBrowserSignout):
def test_skeleton_ui_not_shown_for_felt(self):
Copy link
Copy Markdown
Contributor Author

@victhorlopez victhorlopez May 7, 2026

Choose a reason for hiding this comment

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

@Mossop can you shed some light?

I wrote this test to verify that the skekelton UI is working, firefox enterprise actually is always using same binary.

That means we also share same registry keys cause they also have same MOZ_APP_BASENAME etc.

In this code we hold a lock on FELT (parent process).

[task 2026-05-07T13:58:38.991+00:00] 13:58:38     INFO -  PreXULSkeletonUI: Opening reg key
[task 2026-05-07T13:58:39.000+00:00] 13:58:39     INFO -  PreXULSkeletonUI: Opened/created reg key (disposition 2)
[task 2026-05-07T13:58:39.003+00:00] 13:58:39     INFO -  PreXULSkeletonUI: CreateAndStorePreXULSkeletonUI failed with error 9

Do we actually want to show the skeleton UI the first time we open the Felt browser (i.e child firefox process)?

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.

You definitely don't want to show the skeleton UI in the FELT process as it wouldn't look correct so you should be able to skip it in that case, which should resolve any locking issue with the child Firefox process.

Whether you want to show the skeleton UI at all is a product decision I guess, I'm not sure it is really relevant to the enterprise use.

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

Labels

branch:main PR that should be merged on enterprise-main branch test-greening Fixes failing or flaky tests to restore passing CI status without changing core application logic

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants