Skip to main content
Version: v4

StreamChannelListEventHandler

A Class To Customize The Event Handler For The StreamChannelListController.

Find the pub.dev documentation here

Background#

A StreamChannelListEventHandler is a class that handles the events that are related to the channel list loaded by StreamChannelListController. The StreamChannelListController automatically creates a StreamChannelListEventHandler internally and handles the events. In order to provide a custom implementation of StreamChannelListEventHandler, you need to create a class that extends the StreamChannelListEventHandler class.

Basic Example#

There are 2 ways to provide a custom implementation of StreamChannelListEventHandler:

  • Create a class that extends the StreamChannelListEventHandler and pass it down to the controller.
class MyCustomEventHandler extends StreamChannelListEventHandler {
@override
void onConnectionRecovered(
Event event,
StreamChannelListController controller,
) {
// Write your own custom implementation here
}
}

Pass it down to the controller:

  late final listController = StreamChannelListController(
client: StreamChat.of(context).client,
eventHandler: MyCustomEventHandler(),
);
  • Mix the StreamChannelListEventHandler into your widget state.
class _ChannelListPageState extends State<ChannelListPage>
with StreamChannelListEventHandler {

@override
void onConnectionRecovered(
Event event,
StreamChannelListController controller,
) {
// Write your own custom implementation here
}

late final _listController = StreamChannelListController(
client: StreamChat.of(context).client,
eventHandler: this,
);
}

Did you find this page helpful?