| Index: chrome/renderer/paint_aggregator.h
|
| ===================================================================
|
| --- chrome/renderer/paint_aggregator.h (revision 78620)
|
| +++ chrome/renderer/paint_aggregator.h (working copy)
|
| @@ -1,64 +0,0 @@
|
| -// Copyright (c) 2009 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#ifndef CHROME_RENDERER_PAINT_AGGREGATOR_H_
|
| -#define CHROME_RENDERER_PAINT_AGGREGATOR_H_
|
| -#pragma once
|
| -
|
| -#include <vector>
|
| -
|
| -#include "base/basictypes.h"
|
| -#include "ui/gfx/rect.h"
|
| -
|
| -// This class is responsible for aggregating multiple invalidation and scroll
|
| -// commands to produce a scroll and repaint sequence.
|
| -class PaintAggregator {
|
| - public:
|
| - // This structure describes an aggregation of InvalidateRect and ScrollRect
|
| - // calls. If |scroll_rect| is non-empty, then that rect should be scrolled
|
| - // by the amount specified by |scroll_delta|. If |paint_rects| is non-empty,
|
| - // then those rects should be repainted. If |scroll_rect| and |paint_rects|
|
| - // are non-empty, then scrolling should be performed before repainting.
|
| - // |scroll_delta| can only specify scrolling in one direction (i.e., the x
|
| - // and y members cannot both be non-zero).
|
| - struct PendingUpdate {
|
| - PendingUpdate();
|
| - ~PendingUpdate();
|
| -
|
| - // Returns the rect damaged by scrolling within |scroll_rect| by
|
| - // |scroll_delta|. This rect must be repainted.
|
| - gfx::Rect GetScrollDamage() const;
|
| -
|
| - // Returns the smallest rect containing all paint rects.
|
| - gfx::Rect GetPaintBounds() const;
|
| -
|
| - gfx::Point scroll_delta;
|
| - gfx::Rect scroll_rect;
|
| - std::vector<gfx::Rect> paint_rects;
|
| - };
|
| -
|
| - // There is a PendingUpdate if InvalidateRect or ScrollRect were called and
|
| - // ClearPendingUpdate was not called.
|
| - bool HasPendingUpdate() const;
|
| - void ClearPendingUpdate();
|
| -
|
| - // Fills |update| and clears the pending update.
|
| - void PopPendingUpdate(PendingUpdate* update);
|
| -
|
| - // The given rect should be repainted.
|
| - void InvalidateRect(const gfx::Rect& rect);
|
| -
|
| - // The given rect should be scrolled by the given amounts.
|
| - void ScrollRect(int dx, int dy, const gfx::Rect& clip_rect);
|
| -
|
| - private:
|
| - gfx::Rect ScrollPaintRect(const gfx::Rect& paint_rect, int dx, int dy) const;
|
| - bool ShouldInvalidateScrollRect(const gfx::Rect& rect) const;
|
| - void InvalidateScrollRect();
|
| - void CombinePaintRects();
|
| -
|
| - PendingUpdate update_;
|
| -};
|
| -
|
| -#endif // CHROME_RENDERER_PAINT_AGGREGATOR_H_
|
|
|