Conductor

A small, yet full-featured framework that allows building View-based Android applications

APACHE-2.0 License

Stars
3.9K
Committers
39

Bot releases are hidden (Show)

Conductor -

Published by EricKuck over 7 years ago

  • Fixed issue where child controllers added while the parent is in the process of transitioning off the screen would not be properly restored (#256)
  • Now ensures view hierarchy-affecting calls are made on the main thread. (#255)
  • Args and savedInstanceState bundles now have classLoaders properly set. (#246)
  • Now passes along the correct view state for RestoreViewOnCreateController (#258)
Conductor -

Published by EricKuck over 7 years ago

  • Added missing nullity annotations for pager adapters (#219)
  • Routers now properly remove views of all owned controllers on destroy (#221)
  • TransitionChangeHandler is now much more flexible (doesn’t force you to add/remove views)
  • Added startIntentSenderForResult method to controller (#235)
  • Added ability to specify the maximum number of pages for which states should be saved (#236)
  • Fixes popToTransaction calls when removesViewOnPush is set to false in a change handler (#239)
Conductor -

Published by EricKuck over 7 years ago

  • Added documentation for cases where @Nullable methods can return null (#218)
  • Now ensures getActivity() will not return null in preDestroyView for child Controllers (#208)
  • Fixed incorrect alpha values when FadeChangeHandler was prematurely aborted (#205)
  • Now correctly calls onDetach when the host Activity is stopped, even if the view was not detached from the window (#213)
  • Revamped how child backstacks are handled to be more reliable with unforseen uses of state restoration (#194, #217)
  • Deprecated ControllerPagerAdapter in favor of using RouterPagerAdapter everywhere, as it is more robust and has feature parity.
Conductor -

Published by EricKuck over 7 years ago

  • Fixes a memory leak introduced in 2.0.6
  • setRoot now passes the from view to the change handler correctly
  • Fixed issues with aborted AnimationChangeHandlers leaving view artifacts in the hierarchy
  • Fixed controllers deep in the backstack potentially not having a reference to their hosting Router when added via setBackstack
Conductor -

Published by EricKuck over 7 years ago

  • Lint checks should run much faster now (#184)
  • Now internally ensures change handlers are not reused (#179)
  • Ensures onSaveViewState is called for an edge case (#185)
  • Now throws an exception when pushing destroyed controllers
  • Fixed child controllers being removed before the parent is animated out (#199)
  • Now ensures the entire view hierarchy is attached before calling onAttach (#201)
  • Now ensures the view state Bundle has a valid ClassLoader before use (#198)
Conductor - 2.0.5

Published by EricKuck almost 8 years ago

  • Added support for RxLifecycle2 (RxJava 2)
  • Added a RouterPagerAdapter to conductor-support. This should be used over a ControllerPagerAdapter when individual pages might have their own backstacks and navigation).
  • Lots of bug fixes (#165, #166, #172)
Conductor - 2.0.4

Published by EricKuck almost 8 years ago

  • Lots of bug fixes (#113, #136, #137, #138, #140, #145, #160)
  • Added @Nullable and @NonNull annotations throughout
Conductor -

Published by EricKuck about 8 years ago

  • Lots of bug fixes (#116, #124, #127) . Updating soon is recommended.
  • Also brings updated RxJava and RxLifecycle dependencies if using that additional dependency.
Conductor -

Published by EricKuck over 8 years ago

Bug fixes for reattach issues

Conductor - Version 2.0

Published by EricKuck over 8 years ago

  • All controllers can now have child routers
  • Backstacks can now be synthesized for better deep linking
  • Lots of little bug fixes and improvements
Conductor -

Published by EricKuck over 8 years ago

Fixed maven central artifacts

Conductor -

Published by EricKuck over 8 years ago

Fixes some issues around views re-attaching after rotation.

Conductor -

Published by EricKuck over 8 years ago

  • Router, Activity, target controller, etc is all available in onRestoreInstanceState() now
  • Added lifecycle listener methods for onSaveViewState() and onRestoreViewState()
Conductor - Added external onActivityResult method to Controllers

Published by EricKuck over 8 years ago

Host activities can now call the router's onActivityResult method to propagate the call to controllers that have registered for it with registerForActivityResult.

Conductor - Added options menu support to Controllers

Published by EricKuck over 8 years ago

Controllers can now opt to receive onCreateOptionsMenu(Menu, MenuInflater), onPrepareOptionsMenu(Menu), and onOptionsItemSelected(MenuItem) callbacks by registering with the setHasOptionsMenu(boolean) method.

Conductor - Lifecycle Update [Breaking Changes]

Published by EricKuck over 8 years ago

I know, I know, breaking changes do not belong in a minor release. This project was not ready for a v2 yet though, so we opted to break that rule. Sorry everyone!

Breaking Lifecycle Updates

  • onSaveViewState() and onRestoreViewState() are now called symmetrically and live outside of onAttach() and onDetach(), as per #6
  • inflateView() and onBindView() have been merged into onCreateView(), as per #8
  • onUnbindView() has been renamed to onDestroyView() to match the new onCreateView() method

Other Changes

  • setTargetController() is no longer final. It can now be overridden in order to allow controllers to block others from setting their target, in an effort to address #5 without creating too many confusing constructor options.