Well, turns out there were a few more worms under that rock...
With my fix, hovering over a dirty cell results in the red triangle disappearing while you are hovering. Not satisfactory.
After a bit more debugging, it appears that the underlying issue is the technique JQueryUI uses of using background images for coloring. My (rather inelegant) solution is to also add to the Office PQGrid theme the following two rules:
div.pq-grid tr td.pq-grid-cell-hover.ui-state-hover
{
background:#efefef; /* also gets rid of the JQueryUI background image */
border-width:0;
}
div.pq-grid tr td.pq-cell-dirty.pq-grid-cell-hover.ui-state-hover
{
background-color:#efefef;
background-image:url("images/square_dirty.gif"); /* change the file path if adding this to your HTML file */
background-repeat:no-repeat;
background-position: left top;
border-width:0;
}
The double qualification (PQ and UI hover) provides a higher priority than the JQueryUI rules.
The inelegant part is having the conjoined 'hover & dirty' rule since it is against the general CSS philosophy of avoiding conjoined rules.
But, as far as I can tell, it provides what (I think) was the design intent of the Office theme:
- hover on a cell results in light grey, including if that cell is currently selected
- selected cells are light blue
- the dirty flag (red upper left triangle) shows up irrespective of selection and hovering
Please note that the same general fix needs to be applied to the row-hover rules, which I have not done. I'll leave that to Paramvir since I don't use row hover ...
Also, I have tested this only in the context of JQuery Redmond theme plus ParamQuery Office theme, on up-to-date versions of IE and Chrome.
There may be more issues on other browsers and other theme combinations.