title: dataChanged signal not reaching TableView in QML
body: <p>I am creating a simple TableView in QML, 5 col wide by 4 rows tall.  This table connects to a QSortFilterProxyModel, which connects to a QAbstractTableModel.  When I call the sort method of the QSFPM my table refreshes as expected and works great.</p>
  <p>Now, I am trying to highlight a row of my table; the row delegate just uses BLUE as the background color instead of WHITE if that row is selected.  On mouse click on the table I call my 'emitDataChanged' method in the QSFPM, and I see my &quot;Ready to emit!&quot; message in the debug output.</p>
  <p>However, my table does not refresh (confirmed with console.log statements in the table).  It's as if the emit signal is not reaching my table (though calling the resort method in this same class DOES cause the table to refresh).</p>
  <p>Why is the dataChanged signal not working as expected?  My emitDataChanged method is below...I can post any other code needed.</p>
  <p>Source file companysortfilterproxymodel.cpp (descends from QSortFilterProxyModel):</p>
  <pre><code>void CompanySortFilterProxyModel::emitDataChanged(QItemSelection firstCellInRowToBeUpdated) {
      QModelIndex topLeft, bottomRight;
  
      if (!firstCellInRowToBeUpdated.indexes().isEmpty())
      {
          qDebug() &lt;&lt; &quot;Ready to emit!&quot;;
          topLeft = createIndex(0,0);
          bottomRight = createIndex(3,4);
          emit dataChanged(topLeft, bottomRight);
      }
  }
  </code></pre>
  <p>I tried using the 2 model indices passed into my method (firstCellInRowToBeUpdate) but get the same result, so to make things simple I hard coded just trying to select the whole table.</p>