Created base tracker that handles common bookkeeping, and move VPN
to become a tracker. VPN status is now reflected in NetworkInfo, and
is mapped to LegacyVpnInfo.
Legacy VPN now "babysits" any init services it starts, watching for
when they stop unexpectedly.
Bug: 5756357
Change-Id: Iba7ec79da69469f6bd9a970cc39cf6b885b4c9c4
Remove single-user bind mounts, since they need to remain as raw
mounts to correctly propagate when remounted. This means we're back
to using sdcard_r GID to enforce READ_EXTERNAL_STORAGE.
Bug: 6925012
Change-Id: I41b5d7ddc985a5df2e288632a0a80d4724089e00
At present, we did not actually pass the fd. This patch allows us to
make the changes necessary in the future without worrying too much
about broken build.
related-to-bug: 6426185
Change-Id: I125decff9be621a72f2631fd439994a94a526606
Previous to this change the WindowManager was notifying the
BatteryDtatsService about windows that keep the screen on. WM used a
custom WakeLock tag to indicate to PowerManagerService that it had
already notified the BatteryStatsService.
This change eliminates WindowManager notifying the BatteryStatsService
and lets PowerManagerService do the job.
Fixes bug 7030326.
Change-Id: I666dc6ef8f094b8d3d109fea6876be058e057b4f
This allows end-users to generate keys in the keystore without the
private part of the key ever needing to leave the device. The generation
process also generates a self-signed certificate.
Change-Id: I114ffb8e0cbe3b1edaae7e69e8aa578cb835efc9
The notification panel uses LayoutTransition to animate changes to
the list of notifications. This works for the items themselves as
items are added or removed; the new/old items animate in/out and the
existing items animate to make or remove space.
But the handle at the bottom of the list (the gray translucent line) does
not play well with these changes. For example, when an item is swiped away
the handle snaps into its new location before the rest of the items have
finished animating.
The problem comes from a constraint of LayoutTransition; it handles changes
to the container it operates on, and to the parent hierarchy all the way up
to the root. However, it cannot animate changes to siblings of the parents.
So when the list resizes due to item changes, the handle (which is in a sibling
of the list) does not animate this change, but just reacts instantly.
The fix is to draw the handle not as a view itself, but rather as part of the
parent container of the list. So as the list animates a resize, the container will
also animate, and any graphics in the container will animate along with it.
No matter what size the container of the list is, the line will be drawn at
the bottom of it.
Issue #7024902 Notification panel animation incorrect when swiping notification out
Change-Id: Ifc412cb6bcdc6ead35993b0320364a2a95a16e11
Uses the twilight service to determine the hours of
sunrise and sunset. Shortly after sunset or before sunrise
gradually start to apply a gamma correction factor to the
auto-brightness calculations to make the screen a little
dimmer at night.
The effect is relatively small and is mostly noticeable
in dark rooms. This is just a first pass at the algorithm,
we can tweak the adjustment later to ensure that it has even less
impact in moderate or bright environments.
Change-Id: Idf89022a5d0bb52975e04779352d53fa63371178
Moving the detection out of UiModeManagerService will
make it easy for other services to register for the
information.
Fixed a bugs related to updating twilight state
when the time is updated.
We're using the same algorithm as before for passively
tracking the location. Ideally we should update it
to use the new location manager features for low-power
location requests.
Change-Id: I520c53b9946ab6f8d994587d357fd6542c300c07
Auto-brightness adjustment applies a gamma correction factor
between 1/3 and 3 depending on the setting. This feature
is disabled for now.
Change-Id: I2b300b5c455da545bea56b2bae5bc7903e30f30e
It's possible that the mac address is null (getMacAddress() of WifiNative.java).
In this case system_server will crash like:
E AndroidRuntime: *** FATAL EXCEPTION IN SYSTEM PROCESS: WifiWatchdogStateMachine
E AndroidRuntime: java.lang.NullPointerException
E AndroidRuntime: at android.net.arp.ArpPeer.<init>(ArpPeer.java:57)
E AndroidRuntime: at android.net.wifi.WifiWatchdogStateMachine.doArpTest(WifiWatchdogStateMachine.java:866)
Check the mac address before parsing to avoid crashing.
Change-Id: I5d4205c04d479a3a2837172c6382816ea4bf74d6
Change the default master election and arbiration to use broadcast
instead of multicast. As nice as the idea of using multicast for
discovery is, in the end it had just proven to be too unreliable in
random people's home infrastructures as well as the more complicated
managed infrastructures we are using internally. Multicast still
works, and the service can still be configured to use it, but for now
we are switching to broadcast.
Also, add runtime checks to filter out our own broadcast traffic as
there does not seem to be any good sockopt in linux to do this for us
(there is one for multicast, but not broadcast).
Change-Id: I8ada3541cceca2e76c7a0c1a624a72026122c312
Bug: 7020678
The broadcast receiver in GpsLocationProvider now listens for
CONNECTIVITY_ACTION changes. Set the intent filter so that
it catches those actions and updates the network state.
Change-Id: I7efd393dfe2aa8b172dd6701d42ff9ed687648a2
- no need for WebSettings to bounce via WebView to get to the factory
- move this static (non-factory) method into the Statics inner class.
Bug: 6329117
Clean cherry pick: d1c4faa5a4c2be71d529d35572c5f807beee7ddc
Change-Id: I96807df0171c7308421ca8811cfcb1bf710cb007