StreamChatCore class

Widget used to provide information about the chat to the widget tree. This Widget is used to react to life cycle changes and system updates. When the app goes into the background, the websocket connection is kept alive for two minutes before being terminated.

Conversely, when app is resumed or restarted, a new connection is initiated.

class MyApp extends StatelessWidget {
  final StreamChatClient client;

  MyApp(this.client);

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Container(
        child: StreamChatCore(
          client: client,
          child: ChannelListPage(),
        ),
      ),
    );
  }
}
Inheritance

Constructors

StreamChatCore({Key? key, required StreamChatClient client, required Widget child, EventHandler? onBackgroundEventReceived, Duration backgroundKeepAlive = const Duration(minutes: 1), Stream<ConnectivityResult>? connectivityStream})
Constructor used for creating a new instance of StreamChatCore.
const

Properties

backgroundKeepAlive Duration
The amount of time that will pass before disconnecting the client in the background
final
child Widget
Widget descendant.
final
client StreamChatClient
Instance of Stream Chat Client containing information about the current application.
final
connectivityStream Stream<ConnectivityResult>?
Stream of connectivity result Visible for testing
final
hashCode int
The hash code for this object.
no setterinherited
key Key?
Controls how one widget replaces another widget in the tree.
finalinherited
onBackgroundEventReceived EventHandler?
Handler called whenever the client receives a new Event while the app is in background. Can be used to display various notifications depending upon the Event.type
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() StreamChatCoreState
Creates the mutable state for this widget at a given location in the tree.
override
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a one-line detailed description of the object.
inherited
toStringShort() String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

of(BuildContext context) StreamChatCoreState
Use this method to get the current StreamChatCoreState instance