---
title: "HistoricalChange"
description: "Data structure for \"historical\" pointer moves.

Optional high-frequency pointer moves in between the last two dispatched events: can be used for
extra accuracy when input rate exceeds framerate."
type: "class"
---

<div class='type'>Class</div>


<a id='references'></a>

<div class='sourceset sourceset-common'>Common</div>


```kotlin
class HistoricalChange(
    val uptimeMillis: Long,
    val position: Offset,
    val scaleFactor: Float = 1f,
    val panOffset: Offset = Offset.Zero,
)
```


Data structure for "historical" pointer moves.

Optional high-frequency pointer moves in between the last two dispatched events: can be used for
extra accuracy when input rate exceeds framerate.

#### Parameters

| | |
| --- | --- |
| uptimeMillis | The time of the historical pointer event, in milliseconds. In between the current and previous pointer event times. |
| position | The `Offset` of the historical pointer event, relative to the containing element. |
| scaleFactor | A multiplicative scale factor indicating the amount of scale to perform as part of this pointer input change. A value of `1f` indicates no scale, a value less than `1f` indicates a scale down, commonly causing a zoom out, and a value greater than `1f` indicates a scale up, commonly causing a zoom in. |
| panOffset | An `Offset` in pixel coordinates indicating an amount of scrolling. |



## Secondary Constructors

```kotlin
public constructor(
    uptimeMillis: Long,
    position: Offset,
) : this(
    uptimeMillis = uptimeMillis,
    position = position,
    scaleFactor = 1f,
    panOffset = Offset.Zero,
)
```

```kotlin
internal constructor(
    uptimeMillis: Long,
    position: Offset,
    scaleFactor: Float,
    panOffset: Offset,
    originalEventPosition: Offset,
) : this(uptimeMillis, position, scaleFactor, panOffset) {
    this.originalEventPosition = originalEventPosition
}
```


