| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is more complicated than I expected. A lot of complexity is to support enums inside structs/interfaces. Some noteworthy things about this patch:
- Looking up a Kind when encountering a struct field or method parameter got trickier. LookupKind handles the scope resolution rules.
- Inner enums are still not fully supported. You can't refer to them outside the struct they were defined in.
- We assume all enums take up 4 bytes. I'm not sure how to fix this.
Also fixed a small bug with struct padding.
BUG=320090,345119
Review URL: https://codereview.chromium.org/172803003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@254221 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=348080
R=davemoore@chromium.org
Review URL: https://codereview.chromium.org/183273007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@254205 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
WindowTreeHost.
Prior to this change, WindowEventDispatcher owns WindowTreeHost. Code wishing to own an aura::Window hierarchy must create a WindowEventDispatcher, which will either create a default WTH implementation or use the one supplied by the caller.
This relationship made more sense long ago in the days when WED was called RootWindow, and served a purpose broader than just event dispatch bookkeeping. Those days are gone. For code using Aura, it makes more sense for them to create the WTH directly. I predict this may permit some simplification of shutdown code in some situations, since I think it is more intuitive to think of the destruction cascade initiating at the object that most closely binds to the platform accelerated widget. Today, ownership of the window tree sits with WED, which must destroy the window tree and the host.
This CL attempts to make as few changes as possible to invert the ownership. The effect of this is that there is a bunch of code left that probably only needs a WTH but instead has a WED. I will get around to cleaning these up in a future CL.
http://crbug.com/308843
R=sky@chromium.org
Review URL: https://codereview.chromium.org/180003006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@254071 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This aligns this aspect of WindowDelegate with WindowObserver, that I hope to replace this part of WD with in the future. It also allows me to clean up a little bit of the DWTH/DNWA interaction (subsequent CL).
BUG=none
R=sky@chromium.org
Review URL: https://codereview.chromium.org/183143006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253983 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=None
TEST=Existing
TBR=darin
Review URL: https://codereview.chromium.org/180243020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253973 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Reland (committed r253869, reverted r253876; win64 breakage).
R=yzshen@chromium.org
Review URL: https://codereview.chromium.org/182163002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253947 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Given path/to/foo.mojom, change the code generator to output:
<(SHARED_INTERMEDIATE_DIR)/path/to/foo.mojom.cc
<(SHARED_INTERMEDIATE_DIR)/path/to/foo.mojom.h
<(SHARED_INTERMEDIATE_DIR)/path/to/foo.mojom-internal.h
This involves shelling out to a python script to compute "path/to" part as that is not otherwise available from GYP. See build/inverse_depth.py.
DEPTH is now passed to mojom_bindings_generator.py so that it can similarly compute "path/to". With that, we no longer need the include_dir argument, so I dropped it.
R=davemoore@chromium.org, mark@chromium.org
Review URL: https://codereview.chromium.org/177183002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253937 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> Mojo: Add hooks for dispatchers to serialize themselves.
>
> R=yzshen@chromium.org
>
> Review URL: https://codereview.chromium.org/182163002
TBR=viettrungluu@chromium.org
Review URL: https://codereview.chromium.org/183173004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253876 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
R=yzshen@chromium.org
Review URL: https://codereview.chromium.org/182163002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253869 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
logic can be shared between POSIX and Windows.
BUG=None
TEST=mojo_system_unittests
R=viettrungluu@chromium.org
Review URL: https://codereview.chromium.org/169723004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253865 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
R=darin@chromium.org
Review URL: https://codereview.chromium.org/181043010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253816 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
. Runner no longer extends ContextHolder. It will still have a
ContextHolder, but not own it. This enables a couple of
things:
. Runner no longer need own a v8::Context.
. Runner can be lazily created after the ContextHolder.
. Runner becomes a (mostly) pure virtual interface. This enables an
implementation to execute through blink rather than v8 directly.
. What was Runner is now DefaultRunner (and
DefaultRunnerDelegate). I'm not a fan of these names, if you have
better ideas let me know. Maybe DirectRunner?
BUG=none
TEST=none
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/179803007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253732 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I think I really want to move away from "unowned buffer"
MessageInTransits, but I'll do that refactor after this change (since
it'd conflict badly with this change). Also, the format of the secondary
buffer isn't finalized yet.
R=yzshen@chromium.org
Review URL: https://codereview.chromium.org/177123011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253633 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
We can now fold it into EnqueueMessage().
R=yzshen@chromium.org
Review URL: https://codereview.chromium.org/177003011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253337 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In particular, ProxyMessagePipeEndpoint::EnqueueMessage() gets a message with
dispatchers already attached. It will be up to the Channel to force them into a
serialized state.
Note that this is a bit less optimal (especially right now), since we means we
have to create duplicate dispatchers even for things that will be serialized
immediately. However, this structure makes things more flexible, since we can
defer serialization if we want (e.g., we don't want Channel to send everything
to RawChannel in a serialized state immediately).
R=yzshen@chromium.org
Review URL: https://codereview.chromium.org/177073015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253331 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
R=yzshen@chromium.org
Review URL: https://codereview.chromium.org/180423003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253324 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
The new semantics are that it must succeed. (Next, pending another CL that moves
the Dispatchers into the MessageInTransit itself: move the attaching of
dispatchers "up" the stack into message_pipe.cc.)
R=davemoore@chromium.org
Review URL: https://codereview.chromium.org/180133004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253252 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Instead, add the ability to attach dispatchers directly to a
MessageInTransit, and just use a queue of MessageInTransits.
R=yzshen@chromium.org
Review URL: https://codereview.chromium.org/177713007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253249 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=None
TEST=existing
R=mpcomplete@chromium.org
Review URL: https://codereview.chromium.org/180233002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253226 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
We'll need them to implement shared memory.
(Also add TODOs for a bug that I spotted.)
R=darin@chromium.org
Review URL: https://codereview.chromium.org/169463012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252827 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This helps to refactor raw_channel_posix_unittest to run on multiple
platforms.
TEST=mojo_common_unittests,mojo_system_unittests
BUG=None
TBR=viettrungluu@chromium.org
Review URL: https://codereview.chromium.org/176063002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252822 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> Add some handle read/write helpers to mojo/common/test/test_utils.h
>
> This helps to refactor raw_channel_posix_unittest to run on multiple
> platforms.
>
> TEST=mojo_common_unittests,mojo_system_unittests
> BUG=None
> R=viettrungluu@chromium.org
>
> Review URL: https://codereview.chromium.org/172263006
TBR=yzshen@chromium.org
Review URL: https://codereview.chromium.org/175703004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252718 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This helps to refactor raw_channel_posix_unittest to run on multiple
platforms.
TEST=mojo_common_unittests,mojo_system_unittests
BUG=None
R=viettrungluu@chromium.org
Review URL: https://codereview.chromium.org/172263006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252714 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
R=yzshen@chromium.org
Review URL: https://codereview.chromium.org/174593004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252666 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
(Using an evil trick discussed in
https://codereview.chromium.org/174093004/.)
R=yzshen@chromium.org
Review URL: https://codereview.chromium.org/166423003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252665 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
http://crbug.com/308843
TBR=sky@chromium.org
Review URL: https://codereview.chromium.org/174803002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252651 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[Reland: Originally committed r252593, reverted r252596. We should revoke my
commit privileges.]
I really set out to also write no-compile tests, but they're currently totally
disabled. :(
R=sky@chromium.org
Review URL: https://codereview.chromium.org/175343002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252623 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
R=yzshen@chromium.org
Review URL: https://codereview.chromium.org/170013003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252607 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> Mojo: Write some tests for public/system/macros.h.
>
> I really set out to also write no-compile tests, but they're currently totally
> disabled. :(
>
> R=sky@chromium.org
>
> Review URL: https://codereview.chromium.org/175343002
TBR=viettrungluu@chromium.org
Review URL: https://codereview.chromium.org/169433003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252596 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
I really set out to also write no-compile tests, but they're currently totally
disabled. :(
R=sky@chromium.org
Review URL: https://codereview.chromium.org/175343002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252593 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead, make it possibly own a buffer. (This means that we'll make more
allocations for each message; however, this is generally necessary to allow
different kinds of data to be "attached" to the message, at least without going
through extreme contortions.)
R=yzshen@chromium.org
Review URL: https://codereview.chromium.org/174093004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252592 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Apparently, it's not supposed to be followed by a semicolon (which is
extraneous). No compiler has ever complained about it; I don't know what
the standard says about extra semicolons in class definitions, but
conceivably a compiler might still warn about it.
R=darin@chromium.org
Review URL: https://codereview.chromium.org/167343007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252515 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Apparently we'll need it on Windows too.
R=yzshen@chromium.org
Review URL: https://codereview.chromium.org/174073010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252513 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
http://crbug.com/308843
R=sky@chromium.org
Review URL: https://codereview.chromium.org/172743002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252501 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
R=yzshen@chromium.org
Review URL: https://codereview.chromium.org/173333002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252272 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Still more to do, but incremental change is less scary.
R=yzshen@chromium.org
Review URL: https://codereview.chromium.org/172953003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252128 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This avoids destroying contexts on the main thread that are bound to
the compositor thread as this causes DCHECKs to fire and is a bad thing.
The renderer already does this, as it has been threaded much longer on
more platforms so we noticed it. Recently noticed this in browser tests
in the UI compositor too.
This also updates the Mojo DemoContextFactory to match the behaviour of
GpuProcessTransportFactory wrt the offscreen compositor context creation
and destruction.
R=jamesr, piman
BUG=344016
Review URL: https://codereview.chromium.org/167843002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252124 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
R=darin@chromium.org, davemoore@chromium.org
Review URL: https://codereview.chromium.org/172433002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252103 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
This is a small reorganization before a bigger one.
R=yzshen@chromium.org
Review URL: https://codereview.chromium.org/163023004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252082 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TBR=sky@chromium.org
BUG=
Review URL: https://codereview.chromium.org/167563004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251606 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(The new name is consistent with base::FreeDeleter.)
Also, update comments to refer to scoped_ptr rather than the deprecated
scoped_ptr_malloc, and convert scoped_ptr_malloc<...,
ScopedPtrAlignedFree> to scoped_Ptr<..., AlignedFreeDeleter>.
R=brettw@chromium.org, dalecurtis@chromium.org, piman@chromium.org, brettw
TBR=piman, tyoshino
Review URL: https://codereview.chromium.org/167663002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251586 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Because mailboxes are now just a random number, we don't need to round-trip to
the gpu process to generate them, which lets us get rid of IPCs, layers, etc.
It also means generating a mailbox can't fail any more (even on a lost context),
so, removing some code paths and associated tests.
I'm adding a debug-only verification to ensure the mailboxes are generated from
the crypto-random function (in debug, we burn a byte to compute a mini XOR-check
as a sentinel for "we went through the Generate function"). It's not a secure
check, but should hit incorrect/unsafe usage.
BUG=None
Review URL: https://codereview.chromium.org/165393003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251570 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
generating invalid JavaScript bindings. We now translate an enum value like
FOO_VALUE in a mojom file to proper_namespace.EnumName.FOO_VALUE in JS.
I also fixed enum declarations in JS so an enum value can be defined in terms
of itself, e.g.
enum Foo { FOO_1, FOO_2 = FOO_1 * 2 };
BUG=320082
R=darin@chromium.org
Review URL: https://codereview.chromium.org/164873002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251417 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
R=sky@chromium.org
TBR=sky@chromium.org
BUG=
Review URL: https://codereview.chromium.org/160573002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251379 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=None
TEST=None
Review URL: https://codereview.chromium.org/165383002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251253 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
R=sky@chromium.org
Review URL: https://codereview.chromium.org/164693002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251235 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=342543
Review URL: https://codereview.chromium.org/163113002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251179 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The test runner can then inject dependencies into it (just as we do for
system and gles2).
This removes public/tests's base dependency.
R=sky@chromium.org
Review URL: https://codereview.chromium.org/160003007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251115 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=None
TEST=None
TBR=darin
Review URL: https://codereview.chromium.org/164313002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251111 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
cause a variable name collision in JS.
BUG=325500
R=darin@chromium.org
Review URL: https://codereview.chromium.org/159983003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251105 0039d316-1c4b-4281-b951-d872f2087c98
|