Kotlin evaluates `object` declarations lazily.
We have to access `Flags` before it will populate
the list, and we were asking for the list during
construction of our dagger graph.
Bug: 257302229
Test: manual
Change-Id: Iadfbbbc50ee2fb09260f5d119898fb50b3cc90f9
On debug builds, restart as soon as the screen goes off.
On release builds, restart after the device is plugged in,
the screen is off, and the device has been idle for a few
seconds.
The flag app does not yet reflect this change, but it will
allow multiple flags to be flipped.
Bug: 257302229
Test: manual
Change-Id: I9da58f9881973d69fc0e35b394ca42a4166ceb08
A step along they way to sharing the flagging code as a library.
Bug: 249121873
Test: atest SystemUITests
Change-Id: Id48d33a6ce0d058c4b2d3c282865297841753bb7
This works in both debug and release builds. In debug builds,
all flags can be overridden via the same mechanisms as before,
but can also be overridden by flags defined on the server.
On release builds, only `ReleasedFlag`s can be overridden.
`UnreleasedFlag`s remain set in their default state.
With this cl, server side flags do not get their new value
until SystemUI is restarted (via a reboot or a crash).
Bug: 239863271
Test: atest SystemUITests
Change-Id: I08166cb90675dea06b2671669cecfc16ac58ab61
Merged-In: I08166cb90675dea06b2671669cecfc16ac58ab61
This is meant to replace Build.IS_DEBUGGABLE and allow compile-time optimizations
Fixes: 214238812
Test: manual builds
Change-Id: Id4b3c48a0c88f1e4cff7752907cf72d19295571d
Rename FeatureFlagManager version to
FeatureFlagsDebug and FeatureFlagsRelease, implementing
the FeatureFlags interface.
Bug: 203548827
Test: manual
Change-Id: I4b78757a5e7ee3d5ee06f9124e2b8f670e611d4f
The meaningful contents of FeatureFlags only relates to debug
builds and has been moved into the debug version of
FeatureFlagManager.
Bug: 203548872
Test: atest SystemUITests && manual
Change-Id: Ifcef0cfe4e2d07daec34dfc7a6cbe2d305b312b5
The FlagManager now partially implements the FlagReader interface.
The FeatureFlagManager, part of SystemUI proper, now uses the
FlagManager to read flag values, helping to ensure consistency between
the two separate systems.
Bug: 203548827
Test: manual
Change-Id: Ia3b103f783a846cfe9437cd8e6b987962cebabde