Skip to content
This repository was archived by the owner on Jan 7, 2018. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .classpath
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,6 @@
<classpathentry kind="src" path="gen"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
<classpathentry kind="output" path="bin/classes"/>
</classpath>
7 changes: 7 additions & 0 deletions .project
Original file line number Diff line number Diff line change
Expand Up @@ -30,4 +30,11 @@
<nature>com.android.ide.eclipse.adt.AndroidNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
<linkedResources>
<link>
<name>android-17</name>
<type>2</type>
<location>/Users/davis/Downloads/adt-bundle-mac-x86_64-20130522/sdk/sources/android-17</location>
</link>
</linkedResources>
</projectDescription>
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,12 @@
ChormeView works like Android's WebView, but is backed by the latest Chromium
code.

## Required Reading
* [Chromium for Android Build Instructions](https://code.google.com/p/chromium/wiki/AndroidBuildInstructions)
* [Chrome For Developers Docs](http://dev.chromium.org/developers)
* [Chromium Source Code Search](https://code.google.com/p/chromium/codesearch)
* [Android Chromium Build Instructions](https://code.google.com/p/chromium/wiki/AndroidBuildInstructions)
* [Android WebView Talk at Google I/O 2012](https://developers.google.com/events/io/2012/sessions/gooio2012/122/)

## Why ChromeView

Expand Down
Binary file modified assets/webviewchromium.pak
Binary file not shown.
61 changes: 33 additions & 28 deletions crbuild/update.sh
Original file line number Diff line number Diff line change
@@ -1,42 +1,47 @@
#!/bin/bash

# Updates this project with the Chrome build files.
# This script assumes the Chrome build VM is up at crbuild.local

# set this to your build machine's scp user@host
export BLD=crbuild@ubuntu.local

# Clean up.
rm -r assets/*
rm -r libs/*
rm -r src/com/googlecode
rm -r src/org/chromium
rm -rf src/com/googlecode/*
rm -rf src/org/chromium/*

# ContentShell core -- use this if android_webview doesn't work out.
#scp crbuild@crbuild.local:chromium/src/out/Release/content_shell/assets/* \
# assets/
#scp -r crbuild@crbuild.local:chromium/src/out/Release/content_shell_apk/libs/* \
# libs
#scp -r crbuild@crbuild.local:chromium/src/content/shell/android/java/res/* res
#scp -r crbuild@crbuild.local:chromium/src/content/shell/android/java/src/* src
#scp -r crbuild@crbuild.local:chromium/src/content/shell_apk/android/java/res/* res
#scp $BLD:chromium/src/out/Release/content_shell/assets/* assets/
#rm libs/**/gdbserver
#scp -r $BLD:chromium/src/out/Release/content_shell_apk/libs/* libs
#scp -r $BLD:chromium/src/content/shell/android/java/res/* res
#scp -r $BLD:chromium/src/content/shell/android/java/src/* src
#scp -r $BLD:chromium/src/content/shell_apk/android/java/res/* res

# android_webview
scp crbuild@crbuild.local:chromium/src/out/Release/android_webview_apk/assets/*.pak \
assets
scp -r crbuild@crbuild.local:chromium/src/out/Release/android_webview_apk/libs/* \
libs
scp $BLD:chromium/src/out/Release/android_webview_apk/assets/*.pak assets
scp -r $BLD:chromium/src/out/Release/android_webview_apk/libs/* libs
rm libs/**/gdbserver
scp -r crbuild@crbuild.local:chromium/src/android_webview/java/src/* src/
scp -r $BLD:chromium/src/android_webview/java/src/* src/

## Dependencies inferred from android_webview/Android.mk

# Resources.
scp -r crbuild@crbuild.local:chromium/src/content/public/android/java/resource_map/* src/
scp -r crbuild@crbuild.local:chromium/src/ui/android/java/resource_map/* src/
scp -r $BLD:chromium/src/content/public/android/java/resource_map/* src/
scp -r $BLD:chromium/src/ui/android/java/resource_map/* src/

# ContentView dependencies.
scp -r crbuild@crbuild.local:chromium/src/base/android/java/src/* src/
scp -r crbuild@crbuild.local:chromium/src/content/public/android/java/src/* src/
scp -r crbuild@crbuild.local:chromium/src/media/base/android/java/src/* src/
scp -r crbuild@crbuild.local:chromium/src/net/android/java/src/* src/
scp -r crbuild@crbuild.local:chromium/src/ui/android/java/src/* src/
scp -r crbuild@crbuild.local:chromium/src/third_party/eyesfree/src/android/java/src/* src/
scp -r $BLD:chromium/src/base/android/java/src/* src/
scp -r $BLD:chromium/src/content/public/android/java/src/* src/
scp -r $BLD:chromium/src/media/base/android/java/src/* src/
scp -r $BLD:chromium/src/net/android/java/src/* src/
scp -r $BLD:chromium/src/ui/android/java/src/* src/
scp -r $BLD:chromium/src/third_party/eyesfree/src/android/java/src/* src/

# Grab this resource file or org.chromium.chrome.browser.ResourceId.java won't compile
scp -r $BLD:chromium/src/out/Release/chromium_testshell/gen/* src/

# Strip a ContentView file that's not supposed to be here.
rm src/org/chromium/content/common/common.aidl
Expand All @@ -45,15 +50,15 @@ rm src/org/chromium/content/common/common.aidl
rm -r src/com/googlecode/eyesfree/braille/.svn

# Browser components.
scp -r crbuild@crbuild.local:chromium/src/components/web_contents_delegate_android/android/java/src/* src/
scp -r crbuild@crbuild.local:chromium/src/components/navigation_interception/android/java/src/* src/
scp -r $BLD:chromium/src/components/web_contents_delegate_android/android/java/src/* src/
scp -r $BLD:chromium/src/components/navigation_interception/android/java/src/* src/

# Generated files.
scp -r crbuild@crbuild.local:chromium/src/out/Release/gen/templates/* src/
scp -r $BLD:chromium/src/out/Release/gen/templates/* src/

# JARs.
scp -r crbuild@crbuild.local:chromium/src/out/Release/lib.java/guava_javalib.jar libs/
scp -r crbuild@crbuild.local:chromium/src/out/Release/lib.java/jsr_305_javalib.jar libs/
scp -r $BLD:chromium/src/out/Release/lib.java/guava_javalib.jar libs/
scp -r $BLD:chromium/src/out/Release/lib.java/jsr_305_javalib.jar libs/

# android_webview generated sources. Must come after all the other sources.
scp -r crbuild@crbuild.local:chromium/src/android_webview/java/generated_src/* src/
scp -r $BLD:chromium/src/android_webview/java/generated_src/* src/
4 changes: 2 additions & 2 deletions crbuild/vm-build.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ and building the files used in this library.

These are the manual steps for setting up a VM. They only need to be done once.

1. Get the 64-bit ISO for Ubuntu Server 12.10.
* Go to http://releases.ubuntu.com/12.10/
1. Get the 64-bit ISO for Ubuntu Server precise (12.04*).
* Go to http://releases.ubuntu.com/precise/
* Get the `64-bit PC (AMD64) server install image`

2. Set up a VirtualBox VM.
Expand Down
8 changes: 5 additions & 3 deletions crbuild/vm-build.sh
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,15 +1,17 @@
#!/bin/sh
#!/bin/bash
# Builds the Chromium bits needed by ChromeView.

set -o errexit # Stop the script on the first error.
set -o nounset # Catch un-initialized variables.

CPUS=${CPUS-4}
echo "Building with '-j$CPUS'. Set the environment variable CPUS to change the number."

cd ~/chromium/
# https://code.google.com/p/chromium/wiki/UsingGit
gclient sync --jobs 16
cd ~/chromium/src

if [ -f ~/.build_android ] ; then
if [ -f ~/.build_arm ] ; then
. build/android/envsetup.sh --target-arch=arm
android_gyp
ninja -C out/Release -k0 -j$CPUS libwebviewchromium android_webview_apk \
Expand Down
9 changes: 8 additions & 1 deletion crbuild/vm-setup.sh
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
#!/bin/sh
#!/bin/bash
# Idempotent VM setup / upgrade script.

set -o errexit # Stop the script on the first error.
set -o nounset # Catch un-initialized variables.

# Enable password-less sudo for the current user.
sudo sh -c "echo '$USER ALL=(ALL:ALL) NOPASSWD: ALL' > /etc/sudoers.d/$USER"
sudo chmod 0440 /etc/sudoers.d/crbuild

# Sun JDK 6.
if [ ! -f /usr/bin/javac ] ; then
Expand Down Expand Up @@ -75,6 +76,12 @@ fi
# Subversion and git-svn.
sudo apt-get install -y git-svn subversion

# curl is needed for Chrome OS fonts
sudo apt-get install curl

# automatically accept msttcorefonts eula
sudo sh -c "echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true | debconf-set-selections"

# Chromium source.
# https://code.google.com/p/chromium/wiki/UsingGit
# http://dev.chromium.org/developers/how-tos/get-the-code
Expand Down
Binary file modified libs/armeabi-v7a/libwebviewchromium.so
Binary file not shown.
Binary file modified libs/guava_javalib.jar
Binary file not shown.
Binary file modified libs/jsr_305_javalib.jar
Binary file not shown.
Binary file removed libs/x86/libwebviewchromium.so
Binary file not shown.
13 changes: 13 additions & 0 deletions res/drawable/progress.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>

<!-- Copyright (c) 2012 The Chromium Authors. All rights reserved.

Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
-->

<clip xmlns:android="http://schemas.android.com/apk/res/android">
<shape>
<solid android:color="@android:color/holo_blue_light" />
</shape>
</clip>
48 changes: 48 additions & 0 deletions res/layout/shell_view.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
<?xml version="1.0" encoding="utf-8"?>

<!-- Copyright (c) 2012 The Chromium Authors. All rights reserved.

Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
-->

<org.chromium.content_shell.Shell
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<LinearLayout android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:background="@drawable/progress">
<EditText android:id="@+id/url"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="bottom"
android:textSize="18sp"
android:autoText="true"
android:capitalize="sentences"
android:singleLine="true"
android:selectAllOnFocus="true"
android:hint="@string/url_hint"
android:inputType="textUri"
android:imeOptions="actionGo" />
<ImageButton android:id="@+id/prev"
android:layout_width="38dp"
android:layout_height="38dp"
android:src="@android:drawable/ic_media_previous"
android:scaleType="center" />
<ImageButton android:id="@+id/next"
android:layout_width="38dp"
android:layout_height="38dp"
android:src="@android:drawable/ic_media_next"
android:scaleType="center" />
</LinearLayout>
<FrameLayout android:id="@+id/contentview_holder"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
</org.chromium.content_shell.Shell>
9 changes: 8 additions & 1 deletion res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>

<!-- Copyright (c) 2012 The Chromium Authors. All rights reserved.

Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
-->

<resources>
<string name="url_hint">Type URL Here</string>
<string name="default_encoding">text/plain</string>
</resources>
</resources>
13 changes: 13 additions & 0 deletions src/OWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Changes in this folder are guaranteed to affect the downstream
# android_webview build. Adding one of the folks from the below list to the
# review gives us time to prepare a matching change ahead of time so that our
# downstream build can continue running smoothly.
set noparent

benm@chromium.org
boliu@chomium.org
joth@chromium.org
mkosiba@chromium.org
mnaganov@chromium.org
primiano@chromium.org
torne@chromium.org
Loading