Make goog.ui.AutoComplete.Renderer uses goog.positioning
to simplify the logic and provide a better behavior on
viewport overflow (on the x-axis only, since there is
legitimate reason why projects may want the autocompleter
to be fixed on y-axis -- eg, embedded flash content on
one side).

This should only affect edge cases where parts of the
autocompleter strays out of the viewport.

R=nicksantos
DELTA=83  (44 added, 17 deleted, 22 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4695


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1822 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

Implementation of ObservableSet, a set of observables where we can add
or remove observers from all of them.

R=nnaze
DELTA=431  (430 added, 0 deleted, 1 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4697


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1823 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

Change on 2012-05-04 13:23:48-07:00 by chrishenry

	Implementation of ObservableSet, a set of observables where we can add
	or remove observers from all of them.

	R=nnaze
	DELTA=431  (430 added, 0 deleted, 1 changed)

Change on 2012-05-04 16:41:19-07:00 by chrishenry

	Change createFromMap API to specifically treats array
	specially. Previous implementation already did this even
	though the API said it only expects string parameter value
	(except that my recent change fix the bug that makes this
	behavior works).

	The more I see the new API, the more I dislike it, but oh well
	-- goog.uri.utils.QueryValue also define similar special
	treatment...

	R=gboyer,brenneman
	DELTA=28  (20 added, 0 deleted, 8 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4696


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1824 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

1. Bug fix: make goog.i18n.bidi.isRtlLanguage() case-insensitive, which it is supposed to be per the BCP 47 spec.
2. Document why goog.i18n.bidi.IS_RTL does not follow the same rules as goog.i18n.bidi.isRtlLanguage().

R=gboyer
DELTA=24  (12 added, 2 deleted, 10 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4701


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1825 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

Updates a few stray closure ui renderers to use goog.dom.classes.has() instead
of classes.indexOf to check for the existence of a class name.

R=nicksantos
DELTA=68  (12 added, 2 deleted, 54 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4702


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1826 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

ensures that the warnings generation rule collects all warnings

R=chrishenry
DELTA=142  (3 added, 0 deleted, 139 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4703


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1827 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

Temporarily disable the requirement that native transports must send an ACK before marking themselves connected.  Add a timeout before calling the connection callback to cover for the message loss bug the requirement fixed.  This just to get Analytics working again, it isn't a solid solution.  They have their outer frame reconnect to their inner frame, which won't work with the current protocol.  Real solution will be assigning each native transport a random id, which it sends to its counterpart in a SETUP message.  When a transport sees a SETUP message from a transport it doesn't recognize, it will send its own SETUP message again, recreating the full handshake.  Added new crosspagechannel tests to test reconnection cases.

R=nicksantos
DELTA=164  (145 added, 1 deleted, 18 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4704


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1828 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

fix some typing issues

R=chrishenry
DELTA=25  (4 added, 13 deleted, 8 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4705


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1829 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

fix some type warnings

R=nnaze
DELTA=7  (0 added, 0 deleted, 7 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4726


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1830 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

Change on 2012-05-08 08:32:32-07:00 by nicksantos

	fix some type warnings

	R=nnaze
	DELTA=7  (0 added, 0 deleted, 7 changed)

Change on 2012-05-08 10:53:41-07:00 by divye

	Remove extra code to work around a chrome bug since the underlying issue
	has been fixed.

	Tested: cookies_test.html still passes.

	R=arv
	DELTA=16  (0 added, 15 deleted, 1 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4718


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1831 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

Automated g4 rollback

*** Reason for rollback ***

Breaks fixed positioned autocompletes

*** Original change description ***

Make goog.ui.AutoComplete.Renderer uses goog.positioning
to simplify the logic and provide a better behavior on
viewport overflow (on the x-axis only, since there is
legitimate reason why projects may want the autocompleter
to be fixed on y-axis -- eg, embedded flash content on
one side).

This should only affect edge cases where parts of the
autocomplet


NO_SQ = Closure tap broken, this is a clean rollback
... description truncated by g4 rollback ...

R=chrishenry
DELTA=83  (17 added, 44 deleted, 22 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4719


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1832 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

Change goog.ui.prompt to call the base class's focus method. Without this, the input element didn't always get focus (the base class has browser-specific ways to ensuring the dialog has focus).

R=nicksantos
DELTA=5  (3 added, 0 deleted, 2 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4720


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1833 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

Method for adding callbacks to a goog.Disposable. Useful for attaching
cleanup actions to an object's lifetime without having to create a
dependent disposable object.

R=nnaze
DELTA=51  (50 added, 0 deleted, 1 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4727


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1834 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

Change on 2012-05-08 17:33:06-07:00 by skobes

	Method for adding callbacks to a goog.Disposable. Useful for attaching
	cleanup actions to an object's lifetime without having to create a
	dependent disposable object.

	R=nnaze
	DELTA=51  (50 added, 0 deleted, 1 changed)

Change on 2012-05-08 18:15:38-07:00 by nnaze

	Update fireListener to unlisten to a callOnce listener before
	calling a handler.  If the listener dispatches the same event,
	it can cause an infinite loop.

	R=yaroshenko,fuz,jonemerson
	DELTA=36  (19 added, 9 deleted, 8 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4721


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1835 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

Adds an XPC config option for channel role.
When using XPC between a window and its opener CrossPanelChannel.getRole() will return an invalid role.

R=dbk,nicksantos
DELTA=23  (19 added, 0 deleted, 4 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4722


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1836 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

Remove other dead code that was missed

- Inlined navigator.cookiesEnabled
- Removed a constant string that was never being used in the file.

R=arv
DELTA=31  (0 added, 29 deleted, 2 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4723


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1837 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

Deprecate goog.ui.AutoComplete.Basic

R=chrishenry
DELTA=3  (3 added, 0 deleted, 0 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4724


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1838 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

Fix inaccurate comment. closurebuilder.py cannot write deps files.

Fixes issue 179.

R=chrishenry
DELTA=2  (0 added, 0 deleted, 2 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4725


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1839 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

Fix lazy deserialization bug when dealing with already-added (and deserialized) messages.

R=pallosp
DELTA=62  (61 added, 1 deleted, 0 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4728


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1840 0b95b8e8-c90f-11de-9d4f-f947ee5921c8

Previously, in iframe polling transport, if the inner frame didn't find the outer frame's sender iframes immediately on startup, it would begin its reconnection sequence.  That reconnection sequence doesn't seem to work anymore (at least in IE7) possibly due to changes in some browser behavior it relied on.  It's perhaps assuming that setting .name on the iframe element will also control what you get if you do .frames['id'].name?  Not sure, but in any case it can't seem to find a reconnection frame when one exists.  A change in startup timing was causing reconnection to get triggered where it wasn't before.  This change therefore allows the inner frame to poll a limited number of times for the outer frame's sender frames before it starts the reconnection sequence.  If that sequence itself needs repair, that's for another day.

R=nicksantos
DELTA=39  (27 added, 0 deleted, 12 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4729


git-svn-id: https://closure-library.googlecode.com/svn/trunk@1841 0b95b8e8-c90f-11de-9d4f-f947ee5921c8