anchor.diff:                              final confirm = await _showTerminateSessionDialog(
                                 context: context,
                                 controller: _terminateMessageController,
  +                              activity: activity,
                               );
                               if (confirm) {
                                 terminateSessionBloc.add(
  
positive.code: Future<bool> _showTerminateSessionDialog({
    @required BuildContext context,
    @required TextEditingController controller,
  }) {
    return showDialog(
      context: context,
  
negative.code: 
      return GestureDetector(
        onPanUpdate: (details) {
          if (details.delta.dx < 0) {
            if (activity.mediaType == 'photo') {
              Scaffold.of(context).hideCurrentSnackBar();
              Scaffold.of(context).showSnackBar(
                SnackBar(
                  backgroundColor: PlexColorPalette.shark,
                  content: Text('Photo streams cannot be terminated.'),
                ),
              );
            } else if (isEmpty(activity.sessionId)) {
              Scaffold.of(context).hideCurrentSnackBar();
              Scaffold.of(context).showSnackBar(
                SnackBar(
                  backgroundColor: PlexColorPalette.shark,
                  content: Text('Synced content cannot be terminated.'),
                ),
              );
            }
          }
        },
        onTap: () {
  