Clarify context for the separator parts in the duration message
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53508948
Mark goog.ui.editor.ToolbarFactory.LEGACY_SIZE_TO_PX_MAP_ as non-nullable.

This will unblock the @template-ization of goog.array.lastIndexOf.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53513724
RFC: XhrLike interface and typedef.

There are multiple ways we can spin it, but I went with this route
since it only required adding one file, but the "OrNative" thing is
weird.

We also considered adding an interface directly to the externs, but we
thought that might be weird.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53516438
goog.json.parse can return null if passed null or the string 'null' -
update its JsDoc (and tests) to reflect this.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53521177
Add a @template parameter to goog.array.lastIndexOf.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53559154
Fix compile warnings in listenable.js:
javascript/closure/events/listenable.js:102: WARNING - Bad type annotation. Unknown type goog.events.EventId
* @param {string|!goog.events.EventId.<EVENTOBJ>} type The event type id.
^
javascript/closure/events/listenable.js:126: WARNING - Bad type annotation. Unknown type goog.events.EventId
* @param {string|!goog.events.EventId.<EVENTOBJ>} type The event type id.
^
javascript/closure/events/listenable.js:142: WARNING - Bad type annotation. Unknown type goog.events.EventId
* @param {string|!goog.events.EventId.<EVENTOBJ>} type The event type id.
^
javascript/closure/events/listenable.js:214: WARNING - Bad type annotation. Unknown type goog.events.EventId
* @param {string|!goog.events.EventId.<EVENTOBJ>} type The type of the
^
javascript/closure/events/listenable.js:231: WARNING - Bad type annotation. Unknown type goog.events.EventId
* @param {string|!goog.events.EventId} type The type of the listeners to fire.
^
javascript/closure/events/listenable.js:244: WARNING - Bad type annotation. Unknown type goog.events.EventId
* @param {string|!goog.events.EventId.<EVENTOBJ>} type The name of the event
^
javascript/closure/events/listenable.js:262: WARNING - Bad type annotation. Unknown type goog.events.EventId
* @param {string|!goog.events.EventId.<EVENTOBJ>=} opt_type Event type.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53568550
Replace XhrIo.js w/ goog.labs.net.xhr.  Saves ~ 1kb non-gzipped.

Removed goog.structs.map as acceptable argument type for extra logging leaders.  I couldn't find any instances of someone passing goog.structs.map so this should be innocuous.

Fixed tests in ads/circulars/javascript/... that were relying on calls to xhrio.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53574027
Remove goog.dom.classes from goog.ui. Menus.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53588746
Added an abstract method to abstractbubbleplugin to cleanup extra elements needed for an extension of the plugin, and also refactored a couple of methods in the trogedit imagebubble plugin such that it is easier to extend and override its behaviour in an extension of the image bubble plugin.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53598260
Add ability for errorreporter to include effective POST body size in error
reports.  This will be helpful for backends that impose static limits or to
detect external (proxy) truncations before a request reaches the server.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53619593
Add support for the optional column number and error for window.onerror
functions that is now supported in Chrome.

See https://mikewest.org/2013/08/debugging-runtime-errors-with-window-onerror
for more information.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53620311
On IE11+, listen to LOAD events instead of READY_STATE_CHANGE events to signal image load events.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53628547
Remove goog.dom.classes from goog.ui.ContainerRenderer
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53637097
Fixed a bug in goog.structs.CircularBuffer.prototype.getNewestValues

bug behavior:
var buffer = new goog.structs.CircularBuffer(2);
buffer.add("a");
buffer.add("b");
buffer.getNewsestValue(1); // [undefined, "b"];

expected behavior:
buffer.getNewsestValue(1); // ["b"];
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53689543
Ecatcher reports that there are sometimes no matches.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53694833
Add the ability to change the placeholder attribute on a textarea
to provide a hint (new in HTML5) and to fake it for non-html5 browsers
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53694894
Automated g4 rollback of changelist 52406765.

*** Reason for rollback ***

This breaks the category suggestion dropdown in Local Business Center.

*** Original change description ***

Roll forward of 52317490 with a fix.

Remove goog.dom.classes usages in javascript/closure/ui/ac/*.  Also, allow legacy clients to set the classname to be space-separated and potentially end in a space by trimming and then splitting the class name(s).

***
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53701446
If the placeholder is empty and we're replacing the placeholder.... do nothing.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53706678
Automated g4 rollback of changelist 53706678.

*** Reason for rollback ***

--@google.com pointed out that if there is text already present to start with in the text area, then getValue() now returns an empty string. More testing needs to go into this before I submit again. Rolling back this first fix before I roll back the main placeholder CL.

*** Original change description ***

If the placeholder is empty and we're replacing the placeholder.... do nothing.

***
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53708130
Automated g4 rollback of changelist 53694894.

*** Reason for rollback ***

***
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=53708696