I've recently updated my Qt installation from 4.3.4 to 4.4.2.

I've been experimenting with Qt's Model/View code using QTableView. A sample app I've been using, when compiled under 4.4.2 behaves differently than when using 4.3.4. Clicking on the cornerWidget of the table's headerView selects all cells in the table as expected, but Ctrl-click does not deselect as it did in 4.3.4, in fact it appears to do nothing.

I'm not calling setSelectionMode() (although I have tried calling it using ExtendedSelection but this had no effect).

My use of QHeaderView is as follows:
Qt Code:
  1. // Set properties in the column headers
  2. QHeaderView* m_pColHdrView = horizontalHeader();
  3. m_pColHdrView->setHighlightSections( false );
  4. m_pColHdrView->setMovable( false );
  5. m_pColHdrView->setDefaultAlignment( Qt::AlignCenter );
  6. m_pColHdrView->setSortIndicator( 1, Qt::DescendingOrder );
  7. m_pColHdrView->setSortIndicatorShown( true );
  8. m_pColHdrView->setStretchLastSection( false );
  9.  
  10. // Set properties in the row headers
  11. QHeaderView* rowHdrView = verticalHeader();
  12. rowHdrView->setMovable( false );
  13. rowHdrView->setResizeMode( QHeaderView::Custom );
  14. rowHdrView->setClickable( true );
To copy to clipboard, switch view to plain text mode 
I suspect, as has happened before when switching to a new version of Qt, that I have uncovered some defect in my code that just happened to work before. Any ideas about what may cause the cornerWidget of a QTableView or QTableWidget to behave differently in this situation?