- 23 Jul, 2015 11 commits
-
-
Adam Barth authored
-
Adam Barth authored
Switch sky_tool to use a Dart-based HTTP server
-
Eric Seidel authored
This is supposed to make Viktor's game faster, but it's not clear to me that it actually does. I've left the code using the dart version of drawAtlas for now until Viktor can verify that it looks correct. I also added a wrapper for SkFilterQuality in the process of debugging SkCanvas.drawAtlas since all drawAtlas examples in Skia use FilterQuality.low. The bug which blocked me for so long turned out to be that SkCanvas.drawAtlas doesn't draw anything if antialiasing is turned on. Issue #138. R=abarth@google.com
-
Hixie authored
RenderConstrainedBox was ignoring its additional constraints for its intrinsic size logic when it had no child.
-
Adam Barth authored
Fix analyzer warnings
-
Adam Barth authored
- Remove unused imports - Remove unused, broken constructor for MineDiggerApp
-
Hixie authored
-
Eric Seidel authored
This patch provides a class to manage focus, Focus, and a class to manage ownership of the keyboard, KeyboardHandle. Inherited (in widgets.dart) is adjusted to support subclasses that need to copy state from instance to instance. A GlobalKey key type is introduced that is basically the same as UniqueKey. Component classes that need a globally-unique key can specify that their 'key' constructor argument is a GlobalKey. Focus ----- You can use `Focus.at(this)` to determine if you, a Component, are currently focused. You can use `Focus.moveTo(this)` to take the focus or give it to a particular component. For this to work, there has to be a Focus class in the widget hierarchy. Currently, there can only be one Focus class, because nested scopes aren't supported. We should add support for that in a future patch. See issue #229. KeyboardHandle -------------- Instead of directly interacting with the keyboard service, you now ask for a KeyboardHandle using `_keyboard.show(client)`. This returns a KeyboardHandle class. On that class, you can call `handle.release()` when you want to hide the keyboard. If `handle.attached` is still true, and you need to reshow the keyboard after the user hid it, then you can can `handle.showByRequest()`. The point of this is that the `keyboard.show()` method maintains the invariant that only one KeyboardHandle is live at a time. There are some issues with the keyboard service that I filed as a result of doing this patch: #226 #227
-
Adam Barth authored
Accessing the network created a race condition that would sometimes cause other tests to fail.
-
Adam Barth authored
The Python HTTP server was caching too agressively. Instead, use an HTTP server written in Dart from the sky_tools package.
-
Ian Hickson authored
Fix the crash when going to settings after showing the popup menu.
-
- 22 Jul, 2015 29 commits
-
-
Hixie authored
-
Hans Muller authored
-
Viktor Lidholt authored
-
Viktor Lidholt authored
-
Collin Jackson authored
-
Collin Jackson authored
Conflicts: sky/sdk/example/fitness/lib/feed.dart
-
Hixie authored
If your constraints are tight when you get laid out, you don't get a relayout subtree root. If you don't have a relayout subtree root, and you get marked dirty, you go through layoutWithoutResize() rather than layout(), so we don't get a parentUsesSize. If you're not dirty and your constraints didn't change, layout() skips your layout. So then if your initial layout had parentUsesSize:true, and then you got marked dirty directly, you would set your size with parentCanUseSize=false, and then later if your parent tried to lay you out then read your size, it would crash because your size wasn't set up to allow you to get your size. The fix is to actually remember the last setting of parentUsesSize, even in the case of the constraints being tight and you later being marked as needing layout directly.
-
Hixie authored
In theory, before, if you had the same image twice in a scrolling container, you'd get an assertion with no way around it. This makes those nodes not bother making keys by default, which is cheaper and more correct.
-
Adam Barth authored
-
mpcomplete authored
Make SnackBar animate itself. This introduces a bit of a regression - the FloatingActionButton no longer animates. I'm not sure yet how to animated the FAB along with the SnackBar. Maybe some notion of anchoring a node to another. Also remove last use of AnimationBuilder.
-
Hixie authored
This fixes some theoretical bugs whereby we were using hashCode to try to get unique keys for objects, but really we wanted object identity. It also lays the groundwork for a new GlobalKey concept. I tried to keep the impact on the code minimal, which is why the "Key" constructor is actually a factory that returns a StringKey. The code has this class hierarchy: ``` KeyBase | Key--------------+---------------+ | | | StringKey ObjectKey UniqueKey ``` ...where the constructors are Key and Key.stringify (StringKey), Key.fromObjectIdentity (ObjectKey), and Key.unique (UniqueKey). We could instead of factory methods use regular constructors with the following hierarchy: ``` KeyBase | LocalKey---------+---------------+ | | | Key ObjectIdentityKey UniqueKey ``` ...with constructors Key, Key.stringify, ObjectIdentityKey, and UniqueKey, but I felt that that was maybe a more confusing hierarchy. I don't have a strong opinion on this.
-
Viktor Lidholt authored
Fixes issues with invalidating matrix for SpriteBox & adds HUD to demo game
-
Viktor Lidholt authored
-
Matt Perry authored
-
Matt Perry authored
-
Matt Perry authored
-
Ian Hickson authored
Many code improvements to Mine Digger.
-
Adam Barth authored
Fix type error found by dartanalyzer --strong
-
Adam Barth authored
Grammar
-
Adam Barth authored
We were declaring that the function passed to setState should return a Function. In reality, we want the function to return void (and everyone calls it with a function that returns void).
-
Adam Barth authored
Fix 2 crashes found by Hixie's fuzzer.
-
Adam Barth authored
-
Adam Barth authored
Update sky_tool now that sky:// isn't a thing
-
Adam Barth authored
Instead, just use a normal http URL.
-
Adam Barth authored
-
Adam Barth authored
-
Adam Barth authored
-
Hixie authored
Text styles are now a global constant instead of being initialised dynamically. There are now sufficient text styles for 8 mines around a square. I coallesced Game and MineDiggerApp. Used an enum instead of constants for the cell state. Used setState() instead of scheduleBuild(). Used an O(N) algorithm for mine laying instead of the previous potentially-never-ending algorithm. Moved the listener on the cells to the app, so that the logic survives a rebuild. Various other minor changes.
-
Collin Jackson authored
-