Enable chromium http stack for x86

Use chromium http stack as the online media http stack for x86 platform.

Change-Id: I16a7a8697127a51fab8105833f7463911852f0b3
libstagefright: Stop fetching data after EOS is reached for http streaming

Stop fetching data after EOS is reached for http streaming, otherwise
it tries to fetch the data till the player is closed. Also stop sending
buffering notifications to media player once MEDIA_PLAYBACK_COMPLETE
notification is received.

CRs-Fixed: 336447
(cherry picked from commit a9be564f6564005d2a19667c58b950193115cc38)

Change-Id: I22383ea8b36b8761ec36e584fb3b6542541502b5
WallpaperManagerService does not properly propagate setDimensionHints()

During bootstrap, Launcher could be initialized in between
WallpaperManagerService and ImageWallpaper. In case Launcher's
WindowManager.suggestDesiredDimenstions() is called after
WallpaperManagerService begin to create ImageWallpaper and before
ImageWallpaper Engine attached, that mostly resulted in Black Edge
of image wallpaper.

This can be reproduced easily (1 in 3)
 - set image wallpaper other than default.
 - modify Launcher/Workspace to call suggestDesiredDimenstions(w,h)
 - reboot

To fix Black Edge, WallpaperManagerService modified to maintain
a flag mDesiredDimensionChanging and set desired size at Engine
attach. Black Edge still can be shown for some moment. but, always
recoverd. To eliminate Black Edge it seems that
IWallpaperConnection.aidl need more method.

NOTE: Many market launcher and some phone vendor launcher call
suggestDesiredDimenstions with argument (w,h) instead aosp's
original (w*2,h) for single page wallpaper.

Change-Id: Ib28636e6b2964d9deeee1f1e1d304554cc7a837e
libstagefright: Pass width and height in android_native_rect

- android_native_rect expects four fields; top, left, bottom, right.
- Contrary to what it looks like, the bottom and right fields
  are to be used as width & height (instead of co-ordinates)
- Fixing use of native_window_set_crop to use the adjusted values

(cherry picked from commit d1050e76b966a405e539a89a1aa2aee4c972b6ca)

Change-Id: I80f0de1c1e73d979f3499fcd0a7289e6ab00332b
surfaceflinger: call perform function with custom events to HAL

- SF will call perform with event and value to inform HALS about
  custom events(external display, orientation change etc.,)
- remove actionsafe related functions.

CRs-Fixed: 341947
(cherry picked from commit ca1e7b9ee353bc4d2fdc2234d8860e84bbff74f1)

Change-Id: Icfe5f2f8ce56561c6959e206771b2850a3597e70
Ad-hoc network support (framework part)

Based on GB patch by havlenapetr

Change-Id: I588b6b46c00b883a6a85317cdefdf5626bebae43
Allow customization of SoftAp

Support for device with SoftAp only relying on one interface.
Support for device with SoftAp that does not required manual firmware.

Change-Id: If2db6e8ce675c3214ce645231c7a354f41ea0cc6
Use the Hotspot driver call from WIFI HAL

Change-Id: Ie27de1c073681e92ba1602dcd40ef1aa297fd4f4
Fix a couple of nasty heap corruption bugs.

- When replacing the buffer pointer with another one, the allocated
  length wasn't updated. As the TI encoder relies of those being matched
up (it e.g. does a memset(pBuffer, 0, nAllocLen) at certain places), this
could lead to random memory being overwritten (or to a segfault when
reaching the end of the mapping)
- When replacing the buffer, the old buffer wasn't saved and restored
  before calling freeBuffer. This led to a different address passed to
free() than was returned by malloc(), could lead to all kinds of weird,
undefined behaviour.