gpu: Refactor GpuMemoryBuffer framework for multi-process support.

This removes the ImageFactory interface and adjusts the buffer
allocation system for future multi-process support.

Also includes proper plumbing of internalformat to GLImage implementation
and makes sure the compositor is using the correct format.

TEST=gpu_unittests --gtest_filter=MockGpuMemoryBufferTest.Lifecycle
BUG=261649

Review URL: https://chromiumcodereview.appspot.com/20017005

(CM: Add the newly added file to the makefiles)
Signed-off-by: Chirayu Desai <cdesai@cyanogenmod.org>
Signed-off-by: Joel Teichroeb <joel@teichroeb.net>
Change-Id: Iff859f68f7097a36262bd24c0face0edf63f4a4c
Some changes added to compile and run with Java 6 and Java 7.

  + [base/**/jni_generator.py]
      javap 5 and 6 don't show generics.
      This feature is added on javap 7 and higher.
      To retrieve the same behavior, javap (7 and higher) have a new option "-XDcompat".

Change-Id: I761064f14dcb38d52fd735ef462a2c08b8c12cab
Signed-off-by: Jerome Pilliet <pilliet@univ-mlv.fr>
Merge tag 'android-4.4.1_r1' into HEAD

Android 4.4.1 Release 1
Revert "Some changes added to compile and run with Java 6 and Java 7."

 * Breaking build on Linux Mint with OpenJDK 6.
   http://pastebin.com/zciG3W68

This reverts commit 85e22e7ff8f2c3d925b645a88f9b1410307d0f95.

Change-Id: I438c4281654fcb66a317883302527bde3c560125
Update android generator to handle java7.

This is a combination of several commits made
to these files:

https://chromiumcodereview.appspot.com/23587011
https://codereview.chromium.org/23702057
https://codereview.chromium.org/40523002
https://codereview.chromium.org/49913003

Change-Id: Id944decfde8590c3a6e548ac66f598c45de7169e
android_webview: add to support file uploading

This commit changes function from empty implementation
to abstract function interface in AwContentsClient for
supporting uploading file in browser. Its subclass will
override this function. In Android 4.4, browser is based
on chromium not webkit engine, chromium engine support
uploading file and will callback to client to show file
chooser, but android_webview client has empty
implementation within this callback for file chooser.

So we solve this issue by adding implementation in framework
chromium client which extends android_webview client, function
in framework webkit client and corresponding functions in
browser app.

Change-Id: I50375573848879f3c30069b1831b314f0c536163
chromium: clear favicon bitmap prior to load an url

Favicon bitmap reference should be clear before every call to loadUrl. Otherway, webclient
reports the incorrect favicon. Xe: Aosp browser display the old favicon if the new page
doesn't have a favicon, because webview.getFavicon() returns the old bitmap (about:blank page
shouldn't have to have a favicon).

Patchset 2: Better bug code's description comment

Change-Id: I9c41e3b240c4453092428b895556b94fb938e06f
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Webview: Release MediaMetadataRetriever after get media info

- MediaResourceGetter create an object of MediaMetadataRetriever,
  in order to get the duration, width, height of the clip.
- After got enough info, the object should be released.
- Especially in streaming, MediaMetadataRetriever will create a
  connection which will require the data continuously in
  background.

Change-Id: I20dc9f4ca7c38fe7968c78c5b8e2274d6864579d
Webview: Implement the suspend/resume operation in webview of chromium

- To use the new APIs (suspend/resume) of MediaPlayer
- Suspend will release the decoders and maintain the cached data for
  http streaming, instead of release the whole player.
- Resume will init the decoders before start() is called.

Change-Id: Iab7a7c8abb00368cb1eb15ba267f92689cc50be3
Fix JNI generation on Darwin and XCode 5.1

clang now errors out if an unknown argument is used:
$ cpp -fpreprocessed
clang: error: unknown argument: '-fpreprocessed' [-Wunused-command-line-argument-hard-error-in-future]
clang: note: this will be a hard error (cannot be downgraded to a warning) in the future

This is ugly but works...

Change-Id: I47d91f132f6222413147807ffd2ac5bcc4256896
Revert "gpu: Refactor GpuMemoryBuffer framework for multi-process support."

This reverts commit dd37648c2dfb0405e11028c264ef37200ef75001.
Revert "Webview: Implement the suspend/resume operation in webview of chromium"

This reverts commit ff0a1c91939a6f9cb78ca62cf04cceb7a5550744.
Merge tag 'android-4.4.3_r1' into HEAD

Android 4.4.3 release 1

Conflicts:
	android_webview/java/src/org/chromium/android_webview/AwContents.java
	base/android/jni_generator/jni_generator_tests.py

Change-Id: Ida7aa7f295ad28e229b2f34e42543c2a43c597ab