anchor.diff:      }
   
       var previousContent = details['previousContent'] as PreviousContentMapping;
  -
  -    if ((null != withPreviousContent) &&
  -        (previousContent.courseEnrollment.courseId ==
  -         withPreviousContent.courseEnrollment.courseId)) {
  -      return;
  -    }
  -
  -    if (!_requestedSection.setPreviousContent (previousContent)) {
  -      raiseError (this,
  -        'Invalid previous content action warning',
  -        'Cannot add previous content to a section that is cross-listed '
  -          'with another section having differing previous content.'
  -      );
  -
  -      return;
  -    }
  -
  -    set ('hasExtraInfo', true);
  -    set ('withPreviousContent', previousContent);
  -    notifyPath ('hasPreviousContent', _hasPreviousContent = true);
  +    var pcRemoved = false;
  +
  +    if ((null != details['pcRemoved']) && (true == details['pcRemoved'])) {
  +      pcRemoved = true;
  +    }
  +
  +    if (pcRemoved) {
  +      if (_requestedSection.previousContent == withPreviousContent) {
  +        _removePreviousContent();
  +      }
  +    } else {
  +      if ((null != withPreviousContent) &&
  +          (previousContent.courseEnrollment.courseId ==
  +           withPreviousContent.courseEnrollment.courseId)) {
  +        return;
  +      }
  +
  +      if (!_requestedSection.setPreviousContent (previousContent)) {
  +        raiseError (this,
  +          'Invalid previous content action warning',
  +          'Cannot add previous content to a section that is cross-listed '
  +            'with another section having differing previous content.'
  +        );
  +
  +        return;
  +      }
  +
  +      set ('hasExtraInfo', true);
  +      set ('withPreviousContent', previousContent);
  +      notifyPath ('hasPreviousContent', _hasPreviousContent = true);
  +    }
   
       if (hasCrossListing) {
         withCrossListing.sections.forEach ((BannerSection clSection) {
  
positive.code:           this.fire ('iron-signal', detail: {
              'name': 'previous-content-specified',
              'data': {
                'section': clSection, 'previousContent': clPreviousContent
              }
            });
          }
        });
      }
    }
  
  
negative.code:     });
    }
  
    /// The [onRemoveFromCrossListing] method listens for the user to signify that
    /// this section should be removed from whichever cross-listing set it belongs.
    @Listen('tap')
  