Skip to content

feat: add support for API 35 EdgeToEdge #2187

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 12 commits into
base: version-9.1.0-dev
Choose a base branch
from

Conversation

Lyokone
Copy link
Contributor

@Lyokone Lyokone commented Feb 28, 2025

Hey there! So you want to contribute to FirebaseUI? Before you file this pull request, follow these steps:

  • Read the contribution guidelines.
  • Run ./gradlew check to ensure the Travis build passes.
  • If this has been discussed in an issue, make sure to mention the issue number here. If not, go file an issue about this to make sure this is a desirable change.
  • If this is a new feature please co-ordinate with someone on FirebaseUI-iOS to make sure that we can implement this on both platforms and maintain feature parity.

Lyokone and others added 9 commits February 14, 2025 13:24
update versions

update version

fix

more tests

fixes

sdk bump

fix gradle

save the response

Sign In working

chore: upgrade Gradle, AGP and Kotlin

chore: move namespace to build.gradle

chore: upgrade Lint API

add new lines at EOF for checkstyle

ci: temporarily stop building proguard-test

test: update robolectric and use Looper

ignore test

clean

update

ci

remove comments

Bad code

fix?

unused imports

more

more

fix

fixes

fix

more fixes
)

* feat: rename setIsSmartLockEnabled to setCredentialManagerEnabled

* fix

* feat: rename setIsSmartLockEnabled to setCredentialManagerEnabled

* feat: rename setIsSmartLockEnabled to setCredentialManagerEnabled

* fix

* remove references
@Lyokone Lyokone force-pushed the feat/edge-to-edge branch from 150bc9d to 2e17c04 Compare March 6, 2025 13:59

<!-- Override the base FirebaseUI theme for edge-to-edge support -->
<style name="FirebaseUI" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
<item name="android:windowOptOutEdgeToEdgeEnforcement">true</item>
Copy link
Member

Choose a reason for hiding this comment

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

We shouldn't rely on windowOptOutEdgeToEdgeEnforcement as that's going away in Android 16: https://developer.android.com/about/versions/16/behavior-changes-16#edge-to-edge

@thatfiredev thatfiredev changed the base branch from version-9.0.0-dev to version-9.1.0-dev March 19, 2025 17:02
const val min = 21
const val compile = 35
const val target = 35
const val min = 23
Copy link
Member

Choose a reason for hiding this comment

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

Let's keep the original comment here

Suggested change
const val min = 23
// Note that auth uses a different minSdk than this and
// should be changed in auth/build.gradle.kts
const val min = 21

Comment on lines +1 to +8
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="ResourceName">

<!-- Override the base FirebaseUI theme for edge-to-edge support -->
<style name="FirebaseUI" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
</style>

</resources>
Copy link
Member

Choose a reason for hiding this comment

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

Now that we're not overriding anything we don't need this file anymore.

super.onCreate(savedInstanceState);

// Enable edge-to-edge for all activities
WindowCompat.setDecorFitsSystemWindows(getWindow(), false);
Copy link
Member

Choose a reason for hiding this comment

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

Given that this is just calling a single method, I'd prefer that we call this method in every other Activity rather than creating this new BaseActivity that is extended by all of them.

When we migrate the sample app to Kotlin, let's try to get rid of all of these "Base..." classes.

@thatfiredev
Copy link
Member

We need some padding on the screen that is shown when the user is signed in:

5785016379152386475

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants