Possibility to use the library without memory leak that is caused by not cancelling stream subscriptions for merged streams from rxdart. No breaking changes, I kept current behaviour so to not break it work users.
The other way to fix it would be extend rxdart about possibility to return stream controller, and return both, broadcast stream and controller so user have full control over what is going down the path. But this could be overkill, and requires rxdart changes (tested that solution already). But, anyway, since we need to change the geo hash center position to start listening for different region, I would suggest using stream from rxdart directly.
The only thing that above is doesn't suits is when user need to have listener in couple places (different views for instance). But this also could be done by user by have single central place of the stream consumer.
Possibility to use the library without memory leak that is caused by not cancelling stream subscriptions for merged streams from rxdart. No breaking changes, I kept current behaviour so to not break it work users.
Basically, creating broadcast stream and cancelling it does not nothing on the stream controller which is created in rxdart: https://github.com/dart-lang/sdk/issues/26686#issuecomment-225346901
The other way to fix it would be extend rxdart about possibility to return stream controller, and return both, broadcast stream and controller so user have full control over what is going down the path. But this could be overkill, and requires rxdart changes (tested that solution already). But, anyway, since we need to change the geo hash center position to start listening for different region, I would suggest using stream from rxdart directly. The only thing that above is doesn't suits is when user need to have listener in couple places (different views for instance). But this also could be done by user by have single central place of the stream consumer.