This would occur when bringing SkyDemo to the front after
having viewed a SkyView based demo and then paused
the SkyActivity (by going to the Android Launcher, etc.)
I also fixed deploy_domokit_site.py to ignore .gitignore files
found in packages. We should actually probably ignore these
when creating the packages in the first place, but
this check seems valid regardless. The .gitignore for
sky/lib/assets was causing the assets not to get pushed
to the demo site.
R=abarth@chromium.org, johnmccutchan@google.com
Review URL: https://codereview.chromium.org/1163323007.
This CL implements a basic version of screen rotation where we just relayout at
the new size. In the future, we'll want a fancy version where we transition
between the two layouts.
R=ianh@google.com
BUG=
Review URL: https://codereview.chromium.org/1177563002.
We already know how to talk to the network_service from Dart
via fetch.dart. Might as well use that for Image loading
as well insetad of having ImageLoader do it.
As part of this I've renamed *ImageLoader to *ImageDecoder
and moved all the image loading logic into Dart. This required
me to teach the idl system about mojo handles so that I could
pass the resulting MojoHandle from fetch.dart up through to
ImageDecoder.
R=abarth@chromium.org, jackson@google.com, hansmuller@google.com
Review URL: https://codereview.chromium.org/1173703002.
The popup menu in the stocks app is supposed to size its width to the max
intrinsic width of the menu. This CL teaches it how to do that.
It's a shame that we need to ceilToDouble the output of RenderParagraph. If we
don't do that, we run into floating point layout trouble and the menu triggers
a line break. The correct fix is to do layout in fixed point.
R=ianh@google.com
Review URL: https://codereview.chromium.org/1168113005
This CL splits getIntrinsicDimensions into getMinIntrinsicWidth,
getMaxIntrinsicWidth, getMinIntrinsicHeight, and getMaxIntrinsicHeight so that
we can properly shrink-wrap the stocks app menu. This CL just contains the
refactoring. The use in stocks app will come in a later CL.
R=ianh@google.com
Review URL: https://codereview.chromium.org/1167293003
Rather than appending the custom Foo.dart code to the end of the generated
interface, we now copy it to a CustomFoo.dart file in the output directory.
This allows us to declare it as a proper dependency.
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/1171743002
The popup menu is displayed in the wrong location with the wrong width, but it
does draw. I've also removed the checkbox because the flex container was
causing me trouble. I'll add it back in a later CL.
R=ianh@google.com
Review URL: https://codereview.chromium.org/1166153002
This is just another hack on top of the hack that is LayoutRoot.
We will want to untangle Document ownership further as we
iterate on LayoutRoot. For now LayoutRoot is both very
inefficient (allocates a new Frame for each one!) as well
as crashy like this (by not actually owning the document
but rather grabbing it off the "rootElement" assigned to it).
This at least fixes this common crasher for now.
https://github.com/domokit/mojo/issues/206R=abarth@chromium.org
Review URL: https://codereview.chromium.org/1171643002
This CL is the first step towards getting PopupMenuItem working in fn2. We
introduce the ability to add a minWidth to a Container by creating a
RenderConstrainedBox class to apply the new constraints.
R=ianh@google.com
Review URL: https://codereview.chromium.org/1155683011
This includes making SizedBox default to infinite size, and making
Container default to containing one infinite-sized SizedBox. That way,
you can use an empty Container as a spacer in a flex box.
The rendering doesn't quite work, because of a bug in flex whereby it
doesn't shrink-wrap its contents in the cross-direction, it fills the
parent. Collin is on that.
R=jackson@google.com
Review URL: https://codereview.chromium.org/1163633003
I had to complicate the IDL bindings generation to allow passing an array of
colors. Without these changes, we'd try to convert the dart object to
Vector<SkColor>, which C++ thinks is Vector<unsigned>, and we'd use the wrong
converter. So I added some template grease to force it to use a
Vector<CanvasColor> converter.
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/1152963009
Changes:
- Remove all the old tracing logic since that was a lot of code for
just random printf debugging and nobody seems to use it
- Convert "defunct", a permanent state transition, to "mounted", a
state that can be entered and exitted arbitrarily
- Coallesce mount/unmount notifications so there's only one per frame
- Remove handleRemoved() since we don't use it
- Rename a local variable 'parent' to 'ancestor' to avoid shadowing
the field
- Replace uses of forEach() with for-in
Effects:
- Reusing a node provided to a constructor in a new place in a tree
(especially at a different depth) no longer fails (it used to fail
because the node would be marked defunct then remounted later, at
which point it would fail)
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/1169673002