Skip to content

Releases: Zhuinden/simple-stack

Simple Stack 0.9.5

13 Feb 13:18
Compare
Choose a tag to compare
Simple Stack 0.9.5 Pre-release
Pre-release

Simple Stack 0.9.5 (2017-02-13)

  • INTERNAL CHANGE: clearStatesNotIn() now receives both keyStateMap and StateChange, instead of just the new state.
  • ENHANCEMENT: Added HistoryBuilder.from(Backstack) and HistoryBuilder.from(BackstackDelegate) convenience methods.
  • ENHANCEMENT: Added HistoryBuilder.isEmpty() method, and implements Iterable<Parcelable>.
  • ADDED: flow-masterdetail-fragments example.
  • FIX: A bug in flow-masterdetail sample that prevented Master's state from being persisted if detail directly opens a detail.

Simple Stack 0.9.3

12 Feb 13:34
Compare
Choose a tag to compare
Simple Stack 0.9.3 Pre-release
Pre-release

Simple Stack 0.9.3 (2017-02-12)

  • ENHANCEMENT: Added ability to force execute pending state changes with Backstack.executePendingStateChange().
  • INTERNAL CHANGE: BackstackDelegate.onDestroy() calls backstack.executePendingStateChange() to prevent hanging state changes.
  • ADDED: ObjectAnimator-based segue animation to MVP example.

Simple Stack 0.9.2

11 Feb 15:13
Compare
Choose a tag to compare
Simple Stack 0.9.2 Pre-release
Pre-release

Simple Stack 0.9.2 (2017-02-11)

  • BREAKING CHANGE(?): CompletionListener no longer receives isPending parameter.
  • ADDED: Backstack.isStateChangePending() to replace isPending.
  • ENHANCEMENT: Added some missing @NonNull and @Nullable annotations.
  • ADDED: Apache license notes, and improved the README.

Simple Stack 0.9.1

09 Feb 15:49
Compare
Choose a tag to compare
Simple Stack 0.9.1 Pre-release
Pre-release

Simple Stack 0.9.1 (2017-02-09)

  • _BREAKING CHANGE(!)_: BackstackDelegate has a new method which must be called: backstackDelegate.onDestroy()
    Not calling backstackDelegate.onDestroy() will most likely result in memory leak, so please make sure you call it paired with onCreate().
  • BREAKING CHANGE: BackstackDelegate.clearStatesNotIn() is no longer public, because it is automatically managed on state change completion.
  • ENHANCEMENT: Added Backstack.CompletionListener which listens to when backstack has completed a state change.
    Added Backstack.addCompletionListener() and Backstack.removeCompletionListener() methods.
    The backstack keeps a strong reference to your completion listener, so make sure you remove your change listener when no longer needed.
  • ENHANCEMENT: It is no longer the responsibility of the StateChanger to call backstackDelegate.clearStatesNotIn().
    The BackstackDelegate registers itself as a CompletionListener, and therefore it can call clearStatesNotIn() automatically.
  • ENHANCEMENT: Added flow-sample changed to use Simple-Stack, as name simple-stack-flow-masterdetail.

Simple Stack 0.8.3

04 Feb 15:28
Compare
Choose a tag to compare
Simple Stack 0.8.3 Pre-release
Pre-release

Simple Stack 0.8.3 (2017-02-04)

  • ENHANCEMENT: Added BackstackDelegate.setPersistenceTag(String) for support of multiple backstacks. If used, it must be called before BackstackDelegate.onCreate().

Simple Stack 0.8.2

03 Feb 14:48
Compare
Choose a tag to compare
Simple Stack 0.8.2 Pre-release
Pre-release

Simple Stack 0.8.2 (2017-02-03)

  • CHANGE: KeyContextWrapper is public again
  • ENHANCEMENT: Created fragments example based on mvp example.

Simple Stack 0.8.1

02 Feb 13:55
Compare
Choose a tag to compare
Simple Stack 0.8.1 Pre-release
Pre-release

Simple Stack 0.8.1 (2017-02-02)

  • BREAKING(?) CHANGE: Renamed HistoryBuilder.peek() to HistoryBuilder.getLast()
  • ENHANCEMENT: Added the following new methods to HistoryBuilder:
    • HistoryBuilder.get(index),
    • HistoryBuilder.contains(key),
    • HistoryBuilder.containsAll(keys),
    • HistoryBuilder.add(key, index),
    • HistoryBuilder.size(),
    • HistoryBuilder.removeAt(index),
    • HistoryBuilder.remove(key),
    • HistoryBuilder.clear(),
    • HistoryBuilder.retainAll(keys),
    • HistoryBuilder.indexOf(key)

Simple Stack 0.8.0

02 Feb 10:33
Compare
Choose a tag to compare
Simple Stack 0.8.0 Pre-release
Pre-release

Simple Stack 0.8.0 (2017-02-02)

  • BREAKING CHANGE: Removed StateChange.Direction, it is now an int annotated with @IntDef.
    This means that StateChange.Direction.FORWARD is now StateChange.FORWARD, same for BACKWARD and REPLACE.
  • Fix: @StateChangerRegisterMode shouldn't have been public

Simple Stack 0.7.0

31 Jan 13:53
Compare
Choose a tag to compare
Simple Stack 0.7.0 Pre-release
Pre-release

Simple Stack 0.7.0 (2017-01-31)

  • BREAKING CHANGE: Removed Backstack.get(Context), BackstackDelegate.isSystemService(String) and BackstackDelegate.getSystemService(Context).

These can be easily done manually with the following setup:

    public static Backstack get(Context context) {
        // noinspection ResourceType
        return (Backstack)context.getSystemService(BACKSTACK);
    }

and

    @Override
    public Object getSystemService(String name) {
        if(name.equals(BACKSTACK)) {
            return backstackDelegate.getBackstack();
        }
        return super.getSystemService(name);
    }

Therefore the preferred solution is to provide the Backstack instance via @Inject instead of Backstack.get(Context).

Example for Backstack.get(Context) was moved to simple-stack-example as BackstackService.
Example for @Inject Backstack backstack; is seen in simple-stack-example-mvp.

Simple Stack 0.6.1

27 Jan 19:40
Compare
Choose a tag to compare
Simple Stack 0.6.1 Pre-release
Pre-release

Simple Stack 0.6.1 (2017-01-27)

  • It is now allowed to initialize BackstackDelegate without a StateChanger, in which case setStateChanger() must be called before onPostResume(). This way it is possible to postpone the initialization state change of theBackstack`.
  • Added MVP sample.