diff options
| author | Dirk Fauth | 2022-12-19 11:01:10 +0000 |
|---|---|---|
| committer | Dirk Fauth | 2022-12-19 11:01:10 +0000 |
| commit | 92613cd8eb2cdb9df18c02aa1e7ead3a2aeeb79c (patch) | |
| tree | f16ae932960c8656854d5f64efaa845c105f9c84 | |
| parent | 4b2ae5070a42c18b81fe2a4439dcca87577acf89 (diff) | |
| download | org.eclipse.nebula.widgets.nattable-92613cd8eb2cdb9df18c02aa1e7ead3a2aeeb79c.tar.gz org.eclipse.nebula.widgets.nattable-92613cd8eb2cdb9df18c02aa1e7ead3a2aeeb79c.tar.xz org.eclipse.nebula.widgets.nattable-92613cd8eb2cdb9df18c02aa1e7ead3a2aeeb79c.zip | |
Bug 581248 - CellVisualUpdateEvent incorrect for header regions when
scrolled
Signed-off-by: Dirk Fauth <dirk.fauth@googlemail.com>
Change-Id: I866d868d36eb105fd8f8d4fe6deb99758276841f
| -rw-r--r-- | org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/event/CellVisualUpdateEvent.java | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/event/CellVisualUpdateEvent.java b/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/event/CellVisualUpdateEvent.java index e078f4f2..255bcb38 100644 --- a/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/event/CellVisualUpdateEvent.java +++ b/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/event/CellVisualUpdateEvent.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2013, 2020 Dirk Fauth and others. + * Copyright (c) 2013, 2022 Dirk Fauth and others. * * This program and the accompanying materials are made * available under the terms of the Eclipse Public License 2.0 @@ -15,6 +15,7 @@ package org.eclipse.nebula.widgets.nattable.layer.event; import org.eclipse.nebula.widgets.nattable.grid.layer.DimensionallyDependentLayer; import org.eclipse.nebula.widgets.nattable.layer.ILayer; import org.eclipse.nebula.widgets.nattable.layer.cell.ILayerCell; +import org.eclipse.nebula.widgets.nattable.viewport.ViewportLayer; /** * Specialization of the CellVisualChangeEvent. The only difference is the @@ -66,6 +67,17 @@ public class CellVisualUpdateEvent extends CellVisualChangeEvent { if (!(localLayer instanceof DimensionallyDependentLayer)) { columnPos = localLayer.underlyingToLocalColumnPosition(getLayer(), this.columnPosition); rowPos = localLayer.underlyingToLocalRowPosition(getLayer(), this.rowPosition); + } else { + DimensionallyDependentLayer ddl = (DimensionallyDependentLayer) localLayer; + + if (ddl.getHorizontalLayerDependency() instanceof ViewportLayer) { + int columnIndex = this.layer.getColumnIndexByPosition(this.columnPosition); + columnPos = ((ViewportLayer) ddl.getHorizontalLayerDependency()).getColumnPositionByIndex(columnIndex); + } + if (ddl.getVerticalLayerDependency() instanceof ViewportLayer) { + int rowIndex = this.layer.getRowIndexByPosition(this.rowPosition); + rowPos = ((ViewportLayer) ddl.getVerticalLayerDependency()).getRowPositionByIndex(rowIndex); + } } if (columnPos < 0 || rowPos < 0) { |
