Code Monkey home page Code Monkey logo

edge-to-edge's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

edge-to-edge's Issues

Edge-to-edge behaviour on Android R

On Android R, the behaviour of ViewCompat.setOnApplyWindowInsetsListener has changed to support IME (see for example https://proandroiddev.com/exploring-windowinsets-on-android-11-a80cf8fe19be).

I currently have a fragment that is used in two different location in my app:

  1. As the main fragment of a single activity
  2. As a fragment inside a CoordinatorLayout in another activity

My app is build like so:

  1. The fragment calls edgeToEdge() to include padding for the top system bar
  2. The CoordinatorLayout also calls edgeToEdge() to include padding for the top system bar

In API 29, the fragment inside the CoordinatorLayout won't get OnApplyWindowInsetsListener called
In API 30, the fragment do get OnApplyWindowInsetsListener called (probably due to the change for the new IME code)

Now, my fix right now is just to check if the fragment is not inside a CoordinatorLayout to call fragment.edgeToEdge().

But I'm wondering if there is anything that could be done in the edge-to-edge library to fix this instead. What do you think?

set Navigationbar color transparent ,but in android Q the navigationbar color is half black

1600966370805

The navigation bar color is transparent, But the navigationBar in Android Q it displays half black.

Then I check the google calendar app, the navigation bar can be half white. can it be we set the navigationBar transparent, the navigation bar goes with the theme color, Or we can set the navigation bar look the normal color half white?

The Google suggests set the color transparent , so if we set another color can use perform the adapter color change which the Android Q help us achieve the function

1600966330072

Issue on Android 29

It appears that the implementation doesn't work properly when I set edge-to-edge on an Activity. The bottom navigation bar is still fully transparent. For example:

device-2020-06-15-073908

What I want is to have the bottom navigation bar semi-transparent:
device-2020-06-15-074115

My fix is to have the Edge-to-Edge use the "android.R.id.content" view as the root view instead of the decor view.

I have created a project that shows the issue and the fix. See https://github.com/thierryd/EdgeToEdgeActivityIssue

Transparent navigation bar causes UI issues on pre-Q devices

Thanks for such a convenient library.

Wanted to report that the way you suggest in the README file works good for screens with no navigation bar, but for devices with good old navigation bar (like we have in Android versions before 9) setting navigation color to transparent causes issues with these navigation bars making navigation buttons almost invisible.

Here is a screenshot taken from your sample app on Android 7:
Screenshot 2020-04-14 at 19 38 02

I guess it should be mentioned in README that such transparent navigation bar should be set only for values-29 as it is mentioned in Google`s doc: https://developer.android.com/training/gestures/gesturenav#transparent-bars

I will open a PR quit later mentioning it if you don't mind.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.