1. 30 Sep, 2015 1 commit
  2. 29 Sep, 2015 1 commit
  3. 25 Sep, 2015 2 commits
  4. 24 Sep, 2015 1 commit
    • James Robinson's avatar
      Update to Mojo 4e4d51ce28a8edcb32b9c7f555e38e2ae84a825e, update deps · e854d745
      James Robinson authored
      This updates to mojo 4e4d51ce28a and mojo sdk 711a0bcfb141b4 and updates the sky
      package's pubspec.yaml dependency to '>=0.1.0 <0.2.0' to be compatible with
      the current mojo package. This includes an update to the Mojo Dart generator to
      produce real classes for enums and the corresponding updates for users of the
      KeyboardType enum in Sky as well as one scoped_ptr->std::unique_ptr in shell
      corresponding to a change in the Mojo EDK.
      
      When a new version of the sky and sky_services package are pushed this will fix
      domokit/mojo#440.
      e854d745
  5. 21 Sep, 2015 1 commit
    • Adam Barth's avatar
      Remove EventDisposition · 051354ae
      Adam Barth authored
      All the use cases for EventDisposition are now addressed by the gesture
      detection system.
      051354ae
  6. 17 Sep, 2015 1 commit
  7. 09 Sep, 2015 1 commit
  8. 08 Sep, 2015 1 commit
  9. 07 Sep, 2015 1 commit
  10. 02 Sep, 2015 1 commit
    • Adam Barth's avatar
      Move widgets and rendering inside src · 693ddcd8
      Adam Barth authored
      Code outside of package:sky should import this code using
      
      package:sky/rendering.dart
      package:sky/widgets.dart
      
      Moving this code into the "src" directory is a convention that signifies that
      and it cleans up the generated dartdoc because the libraries in the src
      directory aren't included in the generated documentation. Instead, the classes
      are documented in the widgets.dart and rendering.dart libraries.
      693ddcd8
  11. 28 Aug, 2015 1 commit
    • Hixie's avatar
      Rationalise the Key API. · 9047830c
      Hixie authored
      Add a way of having keys based on numeric types or DateTimes by having a ValueKey<T> class.
      Remove the redundant ways of declaring things, except for leaving one shorthand -- you can say `new Key(s)` instead of `new ValueKey<String>(s)`.
      9047830c
  12. 22 Aug, 2015 1 commit
  13. 20 Aug, 2015 1 commit
  14. 07 Aug, 2015 1 commit
  15. 06 Aug, 2015 1 commit
  16. 04 Aug, 2015 1 commit
    • James Robinson's avatar
      Teach event system about disposition and make 'consumed' disposition terminal · 53163f8b
      James Robinson authored
      This introduces the notion of event disposition and allows event
      targets (widgets and render objects) to consume events that should not
      be processed further. This is needed by the Switch component in the
      Drawer in the stocks example. The Switch is embedded in a DrawerItem.
      The Switch handles the gesture tap event to toggle its state and should
      handle pointer events to allow swiping and draw its own radial
      reaction. The DrawerItem also handles gesture taps to allow toggling
      the switch value when tapping anywhere on the drawer and to draw its
      own ink splash. When tapping on the switch, both the switch's render
      object and the DrawerItem's listener are in the event dispatch path.
      The Switch needs to signal in some fashion that it consumed the event
      so the DrawerItem does not also try to toggle the switch's state.
      53163f8b
  17. 28 Jul, 2015 2 commits
  18. 24 Jul, 2015 1 commit
  19. 23 Jul, 2015 2 commits
    • Hixie's avatar
      Track global keys globally. · eb90899a
      Hixie authored
      Assert that there are no duplicates.
      Export GlobalKey from basic.dart, so that people don't have to import widgets.dart just for that.
      Fix the "initialFocus" feature which actually didn't work.
      eb90899a
    • Eric Seidel's avatar
      Focus support. · 4da27671
      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
      4da27671
  20. 22 Jul, 2015 1 commit
    • Hixie's avatar
      Introduce an explicit Key type. · 74575775
      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.
      74575775
  21. 16 Jul, 2015 1 commit