Skip to content

Latest commit

 

History

History
57 lines (42 loc) · 2.96 KB

CHANGES.textile

File metadata and controls

57 lines (42 loc) · 2.96 KB

1.1

Changes

  • Widgets now reside in app/widgets/ and have the Widget appendix per convention, identical to cells and controllers. This introduces the following changes, illustrated with an imaginary CommentsWidget:
    • widget(:comments, ...) will search and instantiate CommentsWidget (note the missing “Widget”).
    • The CommentsWidget views are searched in app/widgets/comments/ (note the missing “_widget”).
  • Including Apotomo::Rails::ControllerMethods by hand is optional. The first call to Controller.has_widgets will include the real module.
  • You can now #render_widget in your widget views to render children.
  • #widget now accepts one arg only (the widget prefix). widget(:comments) sets id to :comments. We also removed the start state argument.
  • Start states are no longer accepted, you have to explicitely pass the state to #render_widget. That’s why #invoke now requires an explicit state as well.
  • #replace/#update now append a ; to the JavaScript expression. You may pass an arbitrary selector string as first argument (optional).
  • The event is no longer added to #options at triggering time.
  • Options passed in #render_widget are no longer merged with #options. They are passed as state-args to reduce complexity.
  • We no longer have @opts and @params but #options and #params from Cell::Base.
  • The params hash is appended to the event in RequestProcessor#process_for. You can now live completely without accessing the global #params.
  • #respond/#update with :selector does not longer prefix the selector with #. It’s up to you.
  • Event delegates #[] to #data.

Removals

  • Removed #param, it is simply too complex.
  • Removed render :render_children and :invoke options. Use #render_widget in your state/view.
  • Removed render :suppress_js as it was ugly and kills children.
  • Removed #jump_to_state and #last_state.
  • Removed `@cell`, now longer available in state views.
  • Removed #cell, #container and #section widget shortcuts.
  • Removed rendered_children local in views. Use #render_widget.
  • Removed ContainerWidget, nobody needs it.

Bugfixes

  • Widget.responds_to_event no longer shares its options with multiple widget instances of the same class.

1.0.4

Bugfixes

  • Caching states works, again. Thanks to Gudleik Rasch for spotting.
  • We cleanly require cells-3.4.x now. Thanks to Ryan Bates who remarked that Apotomo 1.0.x tries to require cells-3.5, which was wrong.

Notes

  • Removed the usage of state-args. If you want the event instance in your triggered state, use @opts[:event] or upgrade to apotomo-1.1.

1.0.3

Bugfixes

  • fixed gemspec to not require useless gem dependencies.

1.0.2

Changes

  • removals from ViewHelper: #trigger_event, #form_to_event and friends as they use deprecated Rails helpers.

Bugfixes

  • Widget#fire now accepts payload data for the fired event.
  • triggered states now receive the event object if they expect one argument.