Mouse wheel events stop working between Chromium 47.0.2503.0 and 47.0.2522.1
Bug #1501473 reported by
Chris Coulson
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Oxide |
Fix Released
|
Critical
|
Chris Coulson | ||
1.11 |
Fix Released
|
Critical
|
Chris Coulson |
Bug Description
Upgrading Chromium on trunk causes mouse wheel events to stop working. I'm not sure exactly when this stopped working
Changed in oxide: | |
milestone: | none → branch-1.11 |
importance: | Undecided → Critical |
status: | New → Triaged |
assignee: | nobody → Chris Coulson (chrisccoulson) |
Changed in oxide: | |
milestone: | branch-1.11 → branch-1.12 |
Changed in oxide: | |
status: | Triaged → Fix Released |
To post a comment you must log in.
It looks like a scroll animation is never created when the event is passed to the compositor. If I break in the for-loop in LayerTreeHostIm pl::ScrollAnima ted, just after |actual_delta| is calculated:
gfx: :ScrollOffset current_offset = layer_impl- >CurrentScrollO ffset() ; :ScrollOffset target_offset =
ScrollOffset WithDelta( current_ offset, pending_delta); offset. SetToMax( gfx::ScrollOffs et()); offset. SetToMin( layer_impl- >MaxScrollOffse t()); :Vector2dF actual_delta = target_ offset. DeltaFrom( current_ offset) ;
gfx:
target_
target_
gfx:
const float kEpsilon = 0.1f; actual_ delta.x( )) > kEpsilon ||
std: :abs(actual_ delta.y( )) > kEpsilon);
bool can_layer_scroll = (std::abs(
(gdb) p actual_delta
$65 = {x_ = 0, y_ = 0}
(gdb) p target_offset
$66 = {x_ = 0, y_ = 53.333332061767578}
(gdb) p current_offset
$67 = {x_ = 0, y_ = 0}
The value of |actual_delta| looks bogus