Commit Graph

32027 Commits

Author SHA1 Message Date
Dave Platt
98a027a506 Merge "Harden NsdManager against null-dereference crashes" into klp-dev 2014-03-19 00:50:30 +00:00
Daniel 2 Olofsson
09421fab07 Re-initialize error after attach
If flag for error after attach is not reinitialized, it may cause
NullPointerException on subsequent onAttachedWindow if error text
was reset to null.

Change-Id: I8976c28a6ca71017e5c4b3f29d4eeeb2eda48c38
2014-03-14 14:49:23 -07:00
Dave Platt
97121c923c Harden NsdManager against null-dereference crashes
Due to race conditions or programming errors, the NsdManager
can attempt to process an asynchronous status message (and issue
a callback to the listener) after the listener has already been
removed from the NsdManager state.  This causes dereferencing of
null objects, and a crash.

Split out the three async-queue message cases:  these are ones
in which message.arg2 does not hold an NsdManager array index
and the code should not interpret this field as if it were.

Add an explicit check for "null listener" (the array index in the
message has already been released), log a warning, and exit early.

Safeguard accesses to the "NSD service type" string from a possibly
null) NsdServiceInfo object... return a constant "?" string rather
than crashing.

Bug: 9016259

Manual cherrypick of commit b1fbb14122a99c62363a949dd634294f5e887ef,
change-ID I7a6ff6842cf035cefbafe2a023ae1fd43734081e in master.

Change-Id: I8d9b7a1763d47d061a0f46b3cb453de4bdb8c2ed
2014-03-13 17:27:03 -07:00
JP Abgrall
7baa7c8045 Merge "ConnectivityService: add support to set TCP initial rwnd" into klp-dev 2014-03-13 20:33:44 +00:00
Chad Brubaker
8e240af51d Merge "Remove SO_BINDTODEVICE from VPN protect" into klp-dev 2014-03-13 18:09:58 +00:00
Svetoslav
11b7d9fa66 Merge "PrintSpooler crash if printer is reported to have only one color mode." into klp-dev 2014-03-13 17:26:44 +00:00
JP Abgrall
3f7f3221df ConnectivityService: add support to set TCP initial rwnd
The value for the TCP initial receive window comes from,
in order,

kernel
  /proc/sys/net/ipv4/tcp_default_init_rwnd

init.rc (via properties)
  net.tcp.default_init_rwnd

properties
  net.tcp.default_init_rwnd

gservices
  Settings.Global.TCP_DEFAULT_INIT_RWND

Bug: 12020135
Change-Id: I0e271be19472900fa9f3bab037d53383ec014a9e
2014-03-12 20:22:47 -07:00
Jeff Brown
73bd57f7ab Merge "Retain display when creating specialized contexts. (DO NOT MERGE)" into klp-dev 2014-03-13 00:12:53 +00:00
Svetoslav
b628dd825b PrintSpooler crash if printer is reported to have only one color mode.
bug:11993304

Change-Id: I4932cf1b5b9b89f0cbf97011782ede037e7d814c
(cherry picked from commit b0d97b87ba)
2014-03-12 14:20:27 -07:00
Jeff Brown
f86c3a44f2 Retain display when creating specialized contexts. (DO NOT MERGE)
Fixed a bug that cause Context.createPackageContext() to discard
display information.  Likewise also fixes issues where the
activity token, override configuration, user handle, and
restriction state might be discarded.

As part of this change, reworked how Contexts are created to make
initialization easier to understand and less error-prone.
The init() methods have been removed and most of the state is
now stored in final variables.

Bug: 12015587
Change-Id: If795851f1cd078bef889b76a52e00d9b3c06ab11
2014-03-11 20:43:52 -07:00
Adam Powell
7f2c9e9420 Merge "Add a config override for ViewConfiguration#hasPermanentMenuKey" into klp-dev 2014-03-11 23:19:37 +00:00
Adam Powell
15b13a792c Add a config override for ViewConfiguration#hasPermanentMenuKey
Allow device overlays to override the behavior of the
hasPermanentMenuKey method at build time. This is useful for devices
that do not behave as the usual autodetection mechanism expects.

Device overlays should set config_overrideHasPermanentMenuKey to 1 if
the device DOES have a permanent menu key or 2 if the device DOES NOT
have a permanent menu key.

Bug 11698700

Change-Id: I467b68528cf681b08adcaebc2402d8bdd84f6b5c
2014-03-11 21:20:13 +00:00
Chad Brubaker
a1d7c74449 Remove SO_BINDTODEVICE from VPN protect
SO_BINDTODEVICE is not needed with policy routing.
SO_BINDTODEVICE was also used on the default iface which causes problems
when the default iface is IPv6 only and the socket tries to connect to a
IPv4 address.

Bug: 12940882
Change-Id: I5b2bde0ac5459433fc5749f509072a548532f730
2014-03-11 10:58:19 -07:00
Chad Brubaker
decfd7079b Merge "Add the calling package name to requestRouteToHost" into klp-dev 2014-03-11 17:51:45 +00:00
Alan Viverette
6e6dc23c69 Merge "DO NOT MERGE Quick fix for updating the FastScroller long list property" into klp-dev 2014-03-11 02:12:13 +00:00
Alan Viverette
e910a7ce8b Merge "DO NOT MERGE Check item type before re-binding transient state views" into klp-dev 2014-03-11 02:12:05 +00:00
Alan Viverette
6a5b7c6ffb Merge "DO NOT MERGE Ensure transient state views are temporarily detached" into klp-dev 2014-03-11 02:11:58 +00:00
Wei Wang
1327e59f36 Merge "DO NOT MERGE BLE peripheral mode (3/4): Add peripheral mode API." into klp-dev 2014-03-08 02:01:02 +00:00
Alan Viverette
bca20aaf0e DO NOT MERGE Quick fix for updating the FastScroller long list property
BUG: 12553181
Change-Id: I5305b0ec4ae8e069fc98d45dc3d5daaa0628ca79
2014-03-07 16:50:24 -08:00
Alan Viverette
df262cd922 DO NOT MERGE Check item type before re-binding transient state views
BUG: 12701797
Change-Id: I180613cc342d24b63f80fd699937c7543c38fc20
2014-03-07 15:20:13 -08:00
Alan Viverette
e8d2846fb9 DO NOT MERGE Ensure transient state views are temporarily detached
BUG: 12024471
Change-Id: I02659d65d664b3fd8991a0527bd23801db6f1a9d
2014-03-07 14:08:02 -08:00
Chris Wren
70d5ed2692 Merge "use relative positioning for notification actions" into klp-dev 2014-03-07 15:08:29 +00:00
Svetoslav
8cb232cb79 Merge "ProgressBar is important for accessibility by default." into klp-dev 2014-03-07 00:37:14 +00:00
Jay Shrauner
a3ea4be542 Prevent SpellChecker from setting invalid range - DO NOT MERGE
Add check for invalid range before setting for further check
at end of parse() loop.

Bug:12936072
Change-Id: Ie0b33b8e69fe47e5d3371640be5681f13a4e4f6e
(cherry picked from commit ea4adf2847)
2014-03-06 22:29:12 +00:00
Chris Wren
be63a95d2b use relative positioning for notification actions
Bug: 10531101
Change-Id: Ia1d7cac880f620a9760271344edf920caf0d852d
2014-03-06 14:55:23 -05:00
Svetoslav
6a1846a084 ProgressBar is important for accessibility by default.
If a view does not have callbacks, or content description, or does not draw
content, and it is marked as important for accessibility auto, then the system
decides it is not important and does not report it. Apparently progress bar
draws content that means something and it should be important for accessibility
by default.

Change-Id: Icd3837fb8b9e208c98b90707f3b195622d71949e
(cherry picked from commit 7face75f2c)
2014-03-06 19:31:19 +00:00
Wei Wang
ee0b3e9f82 DO NOT MERGE BLE peripheral mode (3/4): Add peripheral mode API.
Add bluetooth adv data, APIs in BluetoothAdpater etc.

Cherry picking ble advertising changes from master to KLP MR2.
b/13137996

Change-Id: Id9d2f566b6d9ed0fffe73b67efad2e3d045360b4

Conflicts:
	core/java/android/bluetooth/BluetoothAdapter.java
	core/java/android/bluetooth/BluetoothGatt.java

Conflicts:
	core/java/android/bluetooth/BluetoothAdapter.java
2014-03-06 18:45:17 +00:00
Michael Wright
c5dea68e98 Merge "Revert Japanese special case fallback keys." into klp-dev 2014-03-06 00:50:15 +00:00
Fabrice Di Meglio
1ff2df6194 Merge "Fix bug #12066726 java.lang.NullPointerException at android.widget.CalendarView.onScroll(CalendarView.java:1216) - DO NOT MERGE" into klp-dev 2014-03-06 00:29:35 +00:00
Chad Brubaker
18dd015e6e Add the calling package name to requestRouteToHost
The calling package name will be used to check if an application is a
system application when deciding if a route should be exempt from VPN
routing rules.

Bug: 12937545
Change-Id: I2c09c875fe9bb9685871a0a801ddcbb32fc17405
2014-03-05 13:35:20 -08:00
Fabrice Di Meglio
25d9ce4058 Fix bug #12066726 java.lang.NullPointerException at android.widget.CalendarView.onScroll(CalendarView.java:1216) - DO NOT MERGE
- fix the NPE by checking the validity of the child reference retrieved by View.getChildAt(...)

Change-Id: I61b9233345a4f1110aa06ea563a81dcdf6b35783
2014-03-05 18:42:56 +00:00
Fabrice Di Meglio
b3670c54e6 Fix bug #12422326 Unable to change text direction programmatically using setTextDirection Android SDK API - DO NOT MERGE
- force TextView internal layout recreation when its TextDirection is changed

Change-Id: I7d6b088a9235362e03cb6694392df71bbf5a323a
(cherry picked from commit 22228fec05)
2014-03-05 18:41:36 +00:00
John Spurlock
ca4d040342 Volume panel should not clear system ui flags.
Remove private WM flag (used only by the volume panel) to force
the clearable system UI flags clear.

Instead, always lay out the volume panel as if the bars are visible,
as we do for system dialogs - and don't clear the flags.

Reverts part of I25f29af5b6518aba695b64a75977ae240b742118

Bug:11986621
Change-Id: I842729d729d2a6eb2a687d0b930ddb160c6a1b57
2014-03-04 10:12:01 -05:00
Jay Shrauner
4ef0aabe93 Merge "Catch ActivityNotFoundException in quick contacts badge" into klp-dev 2014-03-03 21:56:18 +00:00
Jonathan Dixon
efe1b2402a DO NOT MERGE: Fix build after checkThread fix merge to master
Follow up to Change-Id: Ibc2496d5cef97b4685e001086f712fcaac231024 - this
method did not exist in klp-dev branch.

Change-Id: Ie64dd3b2357e0abefb4c7d3492f02d23d347f89f
(cherry picked from commit b212b9f2ba)

Cherry pick to klp-dev as part of Bug: 13246014
2014-03-03 18:48:00 +00:00
Primiano Tucci
f4e2723244 DO NOT MERGE: Adding freeMemoryForTests static method to WebView.
This is going to be used by pagecycler tests.
See: b/10629847

Change-Id: Ie3fda214e7808429d7ed63734ab301525f58513f
(cherry pick of 2442675002)

Cherry pick to klp-dev as part of Bug: 13246014

Conflicts:
	core/java/android/webkit/WebViewClassic.java
	core/java/android/webkit/WebViewFactoryProvider.java
(cherry picked from commit 54daaf1cffddad6366fac2ccfceb1e042dd8e90e)

Change-Id: I8471ee5cfaac2ff72704c2391a1961f441aaa1e6
2014-03-03 18:01:53 +00:00
Yorke Lee
535c9e74d3 Catch ActivityNotFoundException in quick contacts badge
Bug: 12015287
Change-Id: I2fa5daaa54cc7cc0cad9dee0828d751302cb5be7
(cherry picked from commit 4fc601a650)
2014-03-01 18:07:22 +00:00
Michael Wright
bdffc3ad05 Revert Japanese special case fallback keys.
Reverts commits 4567e40eb0 and
a977707d6e, which added special case fallbacks
for game controllers in the Japanese locale.

Bug: 12923922
Change-Id: I229126e589e11fb5de86772ef9c59d09723af941
2014-02-26 15:43:48 -08:00
Dave Platt
76e5ca81b3 Fix descriptor leak after accepting connections
After accepting a connection on a listening socket and
storing the resulting FileDescriptor into a newly created
LocalSocketImpl, the new impl's "descriptor was created
locally and should be closed normally" flag should be set.

Bug: 11805817

(cherry picked from commit 3e7305c6bf)

Change-Id: I723d7c5544ee4b6858894c215716cbc32a958df1
2014-01-06 14:31:28 -08:00
Jeff Brown
ce468a35b3 Stop wifi display discovery when no longer needed.
Keep track of how many clients are requesting scans and scan
continuously until all of them are gone then explicitly terminate the
scan instead of letting it time out as before.

Suspend wifi display scans while connecting or connected to a remote
display.  This is handled by both the display manager and media router
since neither has complete information about what is happening.
Much of this code will no longer be needed once wifi display support
is integrated directly into the media router service.

Ensure that we don't attempt to scan or connect to wifi displays
while the wifi display feature is off.

Infer when a connection attempt fails and unselect the wifi display
route automatically so it doesn't appear to be connecting forever.

Fix issues around correctly canceling and retrying connection attempts.
Often we would cancel but not retry.

Improved connection reliability somewhat.  It seems that discovery must
already be in progress in order for a connection attempt to succeed.

Ensure QuickSettings uses exactly the same logic as the MediaRouteButton
to determine when the remote display tile should be made visible.

Bug: 11717053
Change-Id: I18afc977b0e8c26204b8c96adaa79f05225f7b6e
2013-11-21 19:32:59 -08:00
Svetoslav Ganov
c6db9c3b37 Merge "Revert "PreferenceFragment showing the breadcrumb when not needed."" into klp-dev 2013-11-21 20:12:13 +00:00
Svetoslav Ganov
4d159661f4 Merge "Revert "PreferencesFragment showing the breadcrumb area in single pane mode."" into klp-dev 2013-11-21 20:12:02 +00:00
Svetoslav Ganov
8fc552e695 Revert "PreferenceFragment showing the breadcrumb when not needed."
This reverts commit 7db97b0a29.

Change-Id: Iefe9807fd75baf04e61ec59b508e438320c80fe3
2013-11-21 19:36:22 +00:00
Svetoslav Ganov
68e7f13e22 Revert "PreferencesFragment showing the breadcrumb area in single pane mode."
This reverts commit 2b8795a9db.

Change-Id: If8dcc7190cbe66af09945d8b23a3e1d8fd791b1d
2013-11-21 19:33:53 +00:00
Christopher Tate
b0183f0ae3 Harden against transiently unavailable backup transports
The init & clear operations are particularly important to ensure
delivery when at all possible, so we retry those periodically
if the transport is unavailable when we first attempt them.

Now with 100% less build break.

Bug 11716868

Change-Id: I2af4e93788068cfac97c0a48d3568c561eefa23d
2013-11-19 11:24:46 -08:00
Sascha Prueter
d5965cb506 Trying to unbreak build...
Revert "Harden against transiently unavailable backup transports"

This reverts commit 8f98252afe.

Change-Id: I3aabb80f1a5932d530bce6b82d4b30c6cd1cdd5a
2013-11-19 06:51:21 +00:00
Christopher Tate
8f98252afe Harden against transiently unavailable backup transports
The init & clear operations are particularly important to ensure
delivery when at all possible, so we retry those periodically
if the transport is unavailable when we first attempt them.

Bug 11716868

Change-Id: I4860fe3d4e99618b2cd194c83162bd7cbd5a83a9
2013-11-18 16:12:38 -08:00
Jeff Brown
3de885bef2 Merge "Disallow applications from initiating cast screen." into klp-dev 2013-11-15 08:35:50 +00:00
Jeff Brown
af574183c2 Disallow applications from initiating cast screen.
Only allow the system ui and settings to connect to a remote display.
To do this, we essentially hide the remote displays from applications
by using the ROUTE_TYPE_REMOTE_DISPLAY then add permission checks
around the operations that connect to them.

As a bonus, this may actually save power on devices since applications
that use MediaRouter will not longer be performing discover on
remote display routes at all.

Bug: 11257292
Change-Id: I9ea8c568df4df5a0f0cf3d0f11b39c87e2110795
2013-11-15 00:29:43 -08:00
Mindy Pereira
5823352c6c Cancel double tap mode on action_up
fixes b/11592408 Dragging immediately after double touch turns gesture into double touch drag

Change-Id: I3e7926a4f6f9ab4951f380bd004499c78b3bda69
2013-11-15 02:48:06 +00:00