Skip to content

Android 15 support #4876

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 18 commits into
base: master
Choose a base branch
from
Open

Android 15 support #4876

wants to merge 18 commits into from

Conversation

mahibi
Copy link
Collaborator

@mahibi mahibi commented Apr 15, 2025

This PR will add Android 15 support.

Edge to Edge support is a pain.. some challenges:

  • Handle both Compose and XML (one more reason to focus on migration to Compose!)
  • handle Android 15 as well as older Android version
  • keyboard handling
    • in ChatActivity (XML)
    • ContactsActivity (Compose) -> Refactoring was necessary to avoid weird bugs with the keyboard
  • handle paddings

🖼️ Screenshots Android 15

Conversations (XML) (navigation bar is overlapped as expected, statusbar is white) Diagnosis report (Compose) (navigation bar is overlapped as expected, statusbar is themed) Chat View (XML)*
grafik 454509525-67525cd1-5c0b-4330-83ff-f89281529297 grafik

-* XML views except the conversations list have a white statusbar when using Android >=15. This might be improved in followup PR's or migration to Compose makes this obsolete.

🖼️ Screenshots Android 13

Conversations (XML) Diagnosis report (Compose) Chat View (XML)
grafik grafik grafik

🚧 TODO

  • possible improvements for followup PR's:
    • handling of notch in landcape mode
    • theme statusbar of XML screens (other than conversations list) / or migrate them to Compose

🏁 Checklist

  • ⛑️ Tests (unit and/or integration) are included or not needed
  • 🔖 Capability is checked or not needed
  • 🔙 Backport requests are created or not needed: /backport to stable-xx.x
  • 📅 Milestone is set
  • 🌸 PR title is meaningful (if it should be in the changelog: is it meaningful to users?)

@mahibi mahibi added this to the 21.1.0 milestone Apr 15, 2025
@mahibi mahibi self-assigned this Apr 15, 2025
@mahibi mahibi modified the milestones: 21.1.0, 22.0.0 Jun 4, 2025
@mahibi mahibi force-pushed the targetAndroid15 branch from d145bc9 to cc33384 Compare June 12, 2025 14:10
@mahibi mahibi added the 3. to review Waiting for reviews label Jun 12, 2025
@mahibi mahibi marked this pull request as ready for review June 12, 2025 17:50
@mahibi mahibi added 2. developing Work in progress and removed 3. to review Waiting for reviews labels Jun 13, 2025
@mahibi mahibi force-pushed the targetAndroid15 branch from 48df4c4 to ce9543e Compare June 13, 2025 10:58
@mahibi mahibi added 3. to review Waiting for reviews and removed 2. developing Work in progress labels Jun 13, 2025
@mahibi mahibi changed the title WIP targetSdkVersion 35 Android 15 support Jun 13, 2025
@mahibi mahibi enabled auto-merge June 13, 2025 11:02
@mahibi mahibi force-pushed the targetAndroid15 branch from ce9543e to a74ffcf Compare June 13, 2025 14:10
sowjanyakch

This comment was marked as resolved.

mahibi added 12 commits June 20, 2025 10:57
Signed-off-by: Marcel Hibbe <[email protected]>
…pose and keyboard handling)

Signed-off-by: Marcel Hibbe <[email protected]>
color statusbar for composable screens by adding a colored Box where the statusBar is (or fallback to coloring via window.statusBarColor)

Signed-off-by: Marcel Hibbe <[email protected]>
Signed-off-by: Marcel Hibbe <[email protected]>
Signed-off-by: Marcel Hibbe <[email protected]>
Signed-off-by: Marcel Hibbe <[email protected]>
Signed-off-by: Marcel Hibbe <[email protected]>
Signed-off-by: Marcel Hibbe <[email protected]>
add comment on adjustUIForAPILevel35

Signed-off-by: Marcel Hibbe <[email protected]>
mahibi added 6 commits June 20, 2025 10:57
= Change navigationBarStyle to SystemBarStyle.light

This is done to align with the XML screens, see comment.

Signed-off-by: Marcel Hibbe <[email protected]>
... to improve edge to edge design.

Signed-off-by: Marcel Hibbe <[email protected]>
.. by not executing duplicated checks and not using the common lib for now (needs to be aligned if possible)

Signed-off-by: Marcel Hibbe <[email protected]>
by adding a SpacerItem (legacy code...-> migrate to Compose!)

Signed-off-by: Marcel Hibbe <[email protected]>
Signed-off-by: Marcel Hibbe <[email protected]>
@mahibi mahibi force-pushed the targetAndroid15 branch from a74ffcf to 486d8d1 Compare June 20, 2025 10:09
@mahibi mahibi requested a review from sowjanyakch June 20, 2025 10:10
Copy link
Contributor

APK file: https://www.kaminsky.me/nc-dev/android-artifacts/4876-talk.apk

qrcode

To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud Talk app.

Copy link
Contributor

Codacy

Lint

TypemasterPR
Warnings10095
Errors100

SpotBugs

CategoryBaseNew
Bad practice66
Correctness1616
Dodgy code6767
Internationalization33
Malicious code vulnerability33
Performance44
Security11
Total100100

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

Successfully merging this pull request may close these issues.

2 participants