Skip to content
Snippets Groups Projects
  1. Sep 29, 2023
    • Caitlin Shkuratov's avatar
      [CS] 5/ Move status bar mode & appearance to repository. · 44efafd6
      Caitlin Shkuratov authored
      This change majorly involves:
      1) Replacing the methods inside SystemBarAttributesListener to be in
      flows form instead.
      2) Moving CentralSurface's bar mode calculations to the repo.
      
      This change also minorly involves:
      1) Adding an OngoingCallRepository that has the ongoing call status.
      2) Updating StatusBarBoundsProvider to have an #addListener method
         instead of injecting the listeners directly.
      3) Updating LetterboxAppearanceCalculator to have the status bar bounds
         passed to it instead of fetching them.
      
      Bug: 300519002
      Fixes: 301605450
      
      Test: Assortment of letterboxing tests, including:
       - On landscape tablet, open landscaped app. Move app to be center,
         left, and right, and verify status bar icons are visible in all
         locations. Verify newly added status bar icons get the right color.
       - Without rotating device at all (aka ensure #onStatusBarBoundsChanged
         is never called), letterbox an app and verify it looks correct.
       - Enter split screen in landscape with letterboxed app on left, typical app on
         right. Verify icons are correct in all split screen sizes. Rotate to
         portrait then rotate back. Verify icons get correct color again.
      -  Enter split screen in portrait with typical light app on top. Rotate to
         landscape then rotate back. Verify system icons are still dark
         colored afer rotation.
      
      Test: Assortment of ongoing call tests, including:
       - Start ongoing call then enter immersive mode in app. Verify status
         bar still displays with semi-transparent background. Verify status
         bar can be swiped away.
       - General smoke test
      
      Test: Assortment of bar mode tests, including:
       - Use app in low profile mode -> verify notif icons disappear (replaced
         by dot) and only battery icon shows on the right and is dimmed
       - Verify status bar is transparent on homescreen background with
         sufficient contrast
       - Verify status bar has gradient scrim on homescreen background that
         needs extra contrast
       - Verify status bar appears correctly with apps that request specific
         background color
      
      Test: Verify dumps of StatusBarModeRepositoryImpl and
      LetterboxAppearanceCalculator
      
      Test: atest StatusBarModeRepositoryImplTest OngoingCallControllerTest
      LetterboxAppearanceCalculatorTest LightBarControllerTest
      Test: atest SystemUITests
      
      Change-Id: I5b084356691fca03411461748f56fe6841f1b83e
      44efafd6
  2. Sep 27, 2023
Loading