Make a second copy of the Color column and have this always contain all the rows in its dddw. This second column is never filtered.
When the row is not the current row, display the column with the unfiltered dddw and hide the filter column. If the row is the current row, show the column with the filtered dddw, and hide the column with the dddw with all the possible rows. To do this, add the following expression to the visibility attribute of the column with the dddw which gets filtered:
IF (CurrentRow() = GetRow(), 1, 0)
The column with the dddw which always contains all the values will have the following expression in its visibility attribute:
IF (CurrentRow() = GetRow(), 0, 1)