Update Companion Version (2.11ai2, Version Code 212).

Change-Id: I1dba7a771a15907dde19d94165c1ab17fdd53b31
BuildServer: pre-dex the runtime libraries

Change-Id: If5b942939e55edd106978ee8a08699d91eb7b1df
Fix issue #668 by adding red error triangles to duplicate component
event handlers.

This version uses ":" rather than "_" as an internal separator
character to defend against problems involving names with underscores.

It also abstracts over error strings (for internationalization)
in blocklyeditor/src/warningHandler.js.

This version abandons the earlier notion of special treatment of
singleton components = components (like AccelerometerSensor) for
which there can be conceptually only one instance. In this version,
all component event handlers are treated the same way.

Care was taken to avoid quadratic-time determination of duplicates
that was a problem in an earlier experimental solution to this problem
and was unacceptable for screens with large numbers of component event
handlers. In this new submission, duplicates event handlers are found
in a process that is linear in the number of component event handler
blocks, and each such block runs a constant-time error check to add
(or remove) the red error triangle.

Change-Id: Id7b0a69a4faf9028b5f534de515201d5a680ad2a
Revisit issue 545: improved project menu option names

* Start new project" => "Start new project ..."
* "Import project to App Inventor server" => "Import project (.aia) from my computer ..."
* "Export project to local computer" => "Export project (.aia) to my computer"
* "App ( save to my computer )" => "App ( save .apk to my computer )"
* "App ( provide QR code )" => "App ( provide QR code for .apk )"

Change-Id: I9e2c32fe3c844762d71ab8dd4c932230c49dcdb7
Minor Wording Change.

Change-Id: I656a2c09346fb3c6a6b090e9137c46e4e3e89faa
Add Support for Google Cloud Storage (GCS)

Add Support for Google Cloud Storage (GCS). This support is off by
default because it requires some setup in GCS before a given instance
will work. To use this code you should set “use.gcs” to “true” in
appengine-web.xml. You should then set “gcs.bucket” to the name of the
GCS bucket where assets and large block files will be stored. Note:
You must create this bucket on your own and ensure that the Google
Service Account for the instance has WRITE access to the bucket.

Once enabled old files in Blobstore will continue to reside in the
Blobstore, but new large files will be written to GCS.

Also note: With this change small (less then 50,000 bytes) blocks
files will be written to the Datastore instead of the Blobstore (or
GCS). This is true even if the “use.gcs” flags is “false”

More information is available at http://appinv.us/ai_gcs_setup

Change-Id: Iec75c50de925f2b99838fb43d45a98bce609a653
Move error checking to onMouseUp events instead of on all blockly workspace changes.

Change-Id: I530a6e34f196d3722d3a50b9555d6dc269943d7a
fix for Twitter API change. Only SSL traffic allowed

Change-Id: I76047e13852ba4112b324014b488b6c0a08358ed
fix for collapsed blocks swallowing other blocks

Change-Id: I71c996463e8dafbb76955ea08da4bca0a3385d9e
Fix to initial lag in drag in large projects and also issue 667.

Removing the onchange handler in lexical_variable_get and lexical_variable_set
eliminates the remaining delay in starting a block drag in large projects.
It also fixes issue 667 in which copying variable setters and getters out
of scope changed the current names to the empty string. Now the names remain,
but the getter/setter block has a red error triangle.

This does *not* improve many other nasty lags involving large projects:
* loading large projects is numbingly slow
* mouse-up on a moved block is very slow because of an unexpectedly large
  number of render calls
* displaying a drop-down list for event-handler component or variable
  is unexpectedly slow.

Change-Id: If06a3011d5b31fc5308fc33e99c2a0adb2fdb160
Add documentation on barcode scanner to reference docs

Change-Id: Iff34a60853724dc43b71298fa6b628278dc404ca
Update Splash Screen in Companion

Change-Id: I7bdf1ec8069e6378c55b1b2a37b903f36b108f48
Fix a NPF in the NearField Component.

Fix a NPF reported via Acra and the Play Store.

Change-Id: Icbac7eb9e71880b1624857c45ee1ad514a39ed4c
Make half-created files empty.

File creation is a two-step process, first the file is created and
then it is populated with data. If the second step fails, the file is
left in an inconsistent state which damages the containing
project. This change causes half-created files to return as empty.

Change-Id: I09147e8eb389b249dde57862d07063434df4f0a3
Update Companion Version to 2.12ai2zx1

Change-Id: Ic0a1e0914eafe10788c96ce8d6d908f91fa6a781
Remove Obsolete AI1 Code

Completely remove the blockslib and blockseditor source from the
source tree. They are AI1 specific and no longer used.

Change-Id: I95de2fd9523d22c468ddd202d754590323ed609a
Don’t Save Corrupted Blocks Files.

Fix Trac #572, make sure that corrupted blocks files are not
over-written.

Change-Id: I4fddf17eae6229c4d1a7c97154af7a314a526215
Remove IE Support.

Remove IE from the GWT compilation list as well as indicate that it is
not supported in “index.html.” People attempting to use IE will now
get a message listing the supported browsers. We can undo this when we
have IE support working.

Change-Id: Ib2728c7a180b8ac3e409370319032d013d5ed8c8
Fixed notifier documentation
Made notifier closekeyboard on text entry
Make cancelable default to TRUE for Notifier.ShowMessage dialog and ShowChooseDialog
Fix notifier Web documentation

Change-Id: I92d27bccfd544a8477c858ac4b781d8b2dfea157
Have the “Reset Connection” Menu always available.

Have the “Reset Connection” Menu always available, even when we
believe there is no connection. Selecting “Reset Connection” will kill
both any running emulator and adb, so it is useful to help reset the
state of things when the user isn’t quite sure what state they are in.

Change-Id: I7a8f099f792eb2090de1c594c7754fecaa2a4df7