title: Removing a SelectionTracker Observer
body: <p>In my code, when an item in the recycler view is clicked, the adapter is swapped with a new one. After this, a new tracker and observer is made for the new adapter. But on long pressing, the previous observer is called instead. I'd like to know if it is possible to remove an observer from the tracker or an item touch listener from the recyclerview.</p>
  <pre><code>String id = &quot;track&quot; + mAdapter.getItemId(0);
      if(mAdapter.getTracker() != null) mTracker = mAdapter.getTracker();
      else {
          mTracker = new DefaultSelectionTracker.Builder&lt;&gt;(id, mRecyclerView,
                  new MediaKeyProvider(mRecyclerView), setLookup(), StorageStrategy.createLongStorage())
                  .withSelectionPredicate(SelectionPredicates.&lt;Long&gt;createSelectAnything())
                  .build();
  
          mAdapter.passTracker(mTracker);
      }
      ((MainActivity) requireActivity()).observeFiles(mTracker, id);
  </code></pre>
  <p>this is the code to create the tracker</p>
  <pre><code>public class MediaKeyProvider extends ItemKeyProvider {
  
  private RecyclerView mRecyclerView;
  
  public MediaKeyProvider(RecyclerView rv){
      super(ItemKeyProvider.SCOPE_MAPPED);
      mRecyclerView = rv;
  }
  @Nullable
  @Override
  public Object getKey(int position) {
      long itemId = mRecyclerView.getAdapter().getItemId(position);
      return itemId == -1 ? RecyclerView.NO_ID : itemId;
  }
  
  @Override
  public int getPosition(@NonNull Object key) {
  
      VideoFileAdapter.ViewHolder vh = (VideoFileAdapter.ViewHolder)  mRecyclerView.findViewHolderForItemId((Long) key);
      return vh == null ? RecyclerView.NO_POSITION : vh.getAdapterPosition();
  }
  }
  </code></pre>
  <p>the mediakeyprovider</p>