OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> | 2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> |
3 * 1999 Lars Knoll <knoll@kde.org> | 3 * 1999 Lars Knoll <knoll@kde.org> |
4 * 1999 Antti Koivisto <koivisto@kde.org> | 4 * 1999 Antti Koivisto <koivisto@kde.org> |
5 * 2000 Dirk Mueller <mueller@kde.org> | 5 * 2000 Dirk Mueller <mueller@kde.org> |
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. |
7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) | 7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) |
8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) |
9 * Copyright (C) 2009 Google Inc. All rights reserved. | 9 * Copyright (C) 2009 Google Inc. All rights reserved. |
10 * | 10 * |
(...skipping 2578 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2589 | 2589 |
2590 frame_->Selection().DidLayout(); | 2590 frame_->Selection().DidLayout(); |
2591 | 2591 |
2592 DCHECK(frame_->GetDocument()); | 2592 DCHECK(frame_->GetDocument()); |
2593 | 2593 |
2594 FontFaceSet::DidLayout(*frame_->GetDocument()); | 2594 FontFaceSet::DidLayout(*frame_->GetDocument()); |
2595 // Cursor update scheduling is done by the local root, which is the main frame | 2595 // Cursor update scheduling is done by the local root, which is the main frame |
2596 // if there are no RemoteFrame ancestors in the frame tree. Use of | 2596 // if there are no RemoteFrame ancestors in the frame tree. Use of |
2597 // localFrameRoot() is discouraged but will change when cursor update | 2597 // localFrameRoot() is discouraged but will change when cursor update |
2598 // scheduling is moved from EventHandler to PageEventHandler. | 2598 // scheduling is moved from EventHandler to PageEventHandler. |
2599 GetFrame().LocalFrameRoot().GetEventHandler().ScheduleCursorUpdate(); | 2599 |
| 2600 // Fire a fake a mouse move event to update hover state and mouse cursor, and |
| 2601 // send the right mouse out/over events. |
| 2602 frame_->GetEventHandler().DispatchFakeMouseMoveEventSoon( |
| 2603 DispatchInterval::kPerFrame); |
2600 | 2604 |
2601 UpdateGeometries(); | 2605 UpdateGeometries(); |
2602 | 2606 |
2603 // Plugins could have torn down the page inside updateGeometries(). | 2607 // Plugins could have torn down the page inside updateGeometries(). |
2604 if (GetLayoutViewItem().IsNull()) | 2608 if (GetLayoutViewItem().IsNull()) |
2605 return; | 2609 return; |
2606 | 2610 |
2607 ScheduleUpdatePluginsIfNecessary(); | 2611 ScheduleUpdatePluginsIfNecessary(); |
2608 | 2612 |
2609 if (ScrollingCoordinator* scrolling_coordinator = | 2613 if (ScrollingCoordinator* scrolling_coordinator = |
(...skipping 1553 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4163 scroll_offset_ = offset; | 4167 scroll_offset_ = offset; |
4164 | 4168 |
4165 if (!ScrollbarsSuppressed()) | 4169 if (!ScrollbarsSuppressed()) |
4166 pending_scroll_delta_ += scroll_delta; | 4170 pending_scroll_delta_ += scroll_delta; |
4167 | 4171 |
4168 UpdateLayersAndCompositingAfterScrollIfNeeded(); | 4172 UpdateLayersAndCompositingAfterScrollIfNeeded(); |
4169 | 4173 |
4170 Document* document = frame_->GetDocument(); | 4174 Document* document = frame_->GetDocument(); |
4171 document->EnqueueScrollEventForNode(document); | 4175 document->EnqueueScrollEventForNode(document); |
4172 | 4176 |
4173 frame_->GetEventHandler().DispatchFakeMouseMoveEventSoon(); | 4177 frame_->GetEventHandler().DispatchFakeMouseMoveEventSoon( |
| 4178 DispatchInterval::kDuringScroll); |
4174 if (scroll_type == kUserScroll || scroll_type == kCompositorScroll) { | 4179 if (scroll_type == kUserScroll || scroll_type == kCompositorScroll) { |
4175 Page* page = GetFrame().GetPage(); | 4180 Page* page = GetFrame().GetPage(); |
4176 if (page) | 4181 if (page) |
4177 page->GetChromeClient().ClearToolTip(*frame_); | 4182 page->GetChromeClient().ClearToolTip(*frame_); |
4178 } | 4183 } |
4179 | 4184 |
4180 LayoutViewItem layout_view_item = document->GetLayoutViewItem(); | 4185 LayoutViewItem layout_view_item = document->GetLayoutViewItem(); |
4181 if (!layout_view_item.IsNull()) { | 4186 if (!layout_view_item.IsNull()) { |
4182 if (layout_view_item.UsesCompositing()) | 4187 if (layout_view_item.UsesCompositing()) |
4183 layout_view_item.Compositor()->FrameViewDidScroll(); | 4188 layout_view_item.Compositor()->FrameViewDidScroll(); |
(...skipping 1295 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5479 void LocalFrameView::SetAnimationHost( | 5484 void LocalFrameView::SetAnimationHost( |
5480 std::unique_ptr<CompositorAnimationHost> host) { | 5485 std::unique_ptr<CompositorAnimationHost> host) { |
5481 animation_host_ = std::move(host); | 5486 animation_host_ = std::move(host); |
5482 } | 5487 } |
5483 | 5488 |
5484 LayoutUnit LocalFrameView::CaretWidth() const { | 5489 LayoutUnit LocalFrameView::CaretWidth() const { |
5485 return LayoutUnit(GetChromeClient()->WindowToViewportScalar(1)); | 5490 return LayoutUnit(GetChromeClient()->WindowToViewportScalar(1)); |
5486 } | 5491 } |
5487 | 5492 |
5488 } // namespace blink | 5493 } // namespace blink |
OLD | NEW |