Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6206)

Unified Diff: chrome/gpu/gpu_view_win.cc

Issue 4399003: Deleted code associated with --enable-gpu-rendering and... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 10 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/gpu/gpu_view_win.h ('k') | chrome/gpu/gpu_view_x.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/gpu/gpu_view_win.cc
===================================================================
--- chrome/gpu/gpu_view_win.cc (revision 65168)
+++ chrome/gpu/gpu_view_win.cc (working copy)
@@ -1,132 +0,0 @@
-// Copyright (c) 2010 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.
-
-#include "chrome/gpu/gpu_view_win.h"
-
-#include "chrome/common/gpu_messages.h"
-#include "chrome/gpu/gpu_backing_store_win.h"
-#include "chrome/gpu/gpu_thread.h"
-#include "gfx/rect.h"
-
-namespace {
-
-void DrawBackground(const RECT& dirty_rect, CPaintDC* dc) {
- HBRUSH white_brush = reinterpret_cast<HBRUSH>(GetStockObject(WHITE_BRUSH));
- dc->FillRect(&dirty_rect, white_brush);
-}
-
-void DrawResizeCorner(const RECT& dirty_rect, HDC dc) {
- // TODO(brettw): implement this.
-}
-
-} // namespace
-
-GpuViewWin::GpuViewWin(GpuThread* gpu_thread,
- HWND parent,
- int32 routing_id)
- : gpu_thread_(gpu_thread),
- routing_id_(routing_id),
- parent_(parent) {
- gpu_thread_->AddRoute(routing_id_, this);
- Create(parent_);
- SetWindowText(L"GPU window");
- ShowWindow(SW_SHOW);
-}
-
-GpuViewWin::~GpuViewWin() {
- gpu_thread_->RemoveRoute(routing_id_);
- // TODO(brettw) may want to delete any dangling backing stores, or perhaps
- // assert if one still exists.
-}
-
-void GpuViewWin::OnMessageReceived(const IPC::Message& msg) {
- IPC_BEGIN_MESSAGE_MAP(GpuViewWin, msg)
- IPC_MESSAGE_HANDLER(GpuMsg_NewBackingStore, OnNewBackingStore)
- IPC_END_MESSAGE_MAP_EX()
-}
-
-void GpuViewWin::OnChannelConnected(int32 peer_pid) {
-}
-
-void GpuViewWin::OnChannelError() {
- // TODO(brettw) do we need to delete ourselves now?
-}
-
-void GpuViewWin::DidScrollBackingStoreRect(int dx, int dy,
- const gfx::Rect& rect) {
- // We need to pass in SW_INVALIDATE to ScrollWindowEx. The documentation on
- // MSDN states that it only applies to the HRGN argument, which is wrong.
- // Not passing in this flag does not invalidate the region which was scrolled
- // from, thus causing painting issues.
- RECT clip_rect = rect.ToRECT();
- ScrollWindowEx(dx, dy, NULL, &clip_rect, NULL, NULL, SW_INVALIDATE);
-}
-
-void GpuViewWin::OnNewBackingStore(int32 routing_id, const gfx::Size& size) {
- backing_store_.reset(
- new GpuBackingStoreWin(this, gpu_thread_, routing_id, size));
- MoveWindow(0, 0, size.width(), size.height(), TRUE);
-}
-
-void GpuViewWin::OnPaint(HDC unused_dc) {
- // Grab the region to paint before creation of paint_dc since it clears the
- // damage region.
- ScopedGDIObject<HRGN> damage_region(CreateRectRgn(0, 0, 0, 0));
- GetUpdateRgn(damage_region, FALSE);
-
- CPaintDC paint_dc(m_hWnd);
-
- gfx::Rect damaged_rect(paint_dc.m_ps.rcPaint);
- if (damaged_rect.IsEmpty())
- return;
-
- if (backing_store_.get()) {
- gfx::Rect bitmap_rect(gfx::Point(), backing_store_->size());
-
- // Blit only the damaged regions from the backing store.
- DWORD data_size = GetRegionData(damage_region, 0, NULL);
- // TODO(brettw) why is the "+1" necessary here? When I remove it, the
- // page paints black, but according to the documentation, its not needed.
- scoped_array<char> region_data_buf(new char[data_size + 1]);
- RGNDATA* region_data = reinterpret_cast<RGNDATA*>(region_data_buf.get());
- GetRegionData(damage_region, data_size, region_data);
-
- RECT* region_rects = reinterpret_cast<RECT*>(region_data->Buffer);
- for (DWORD i = 0; i < region_data->rdh.nCount; ++i) {
- gfx::Rect paint_rect = bitmap_rect.Intersect(gfx::Rect(region_rects[i]));
- if (!paint_rect.IsEmpty()) {
- DrawResizeCorner(paint_rect.ToRECT(), backing_store_->hdc());
- BitBlt(paint_dc.m_hDC,
- paint_rect.x(),
- paint_rect.y(),
- paint_rect.width(),
- paint_rect.height(),
- backing_store_->hdc(),
- paint_rect.x(),
- paint_rect.y(),
- SRCCOPY);
- }
- }
-
- // Fill the remaining portion of the damaged_rect with the background
- if (damaged_rect.right() > bitmap_rect.right()) {
- RECT r;
- r.left = std::max(bitmap_rect.right(), damaged_rect.x());
- r.right = damaged_rect.right();
- r.top = damaged_rect.y();
- r.bottom = std::min(bitmap_rect.bottom(), damaged_rect.bottom());
- DrawBackground(r, &paint_dc);
- }
- if (damaged_rect.bottom() > bitmap_rect.bottom()) {
- RECT r;
- r.left = damaged_rect.x();
- r.right = damaged_rect.right();
- r.top = std::max(bitmap_rect.bottom(), damaged_rect.y());
- r.bottom = damaged_rect.bottom();
- DrawBackground(r, &paint_dc);
- }
- } else {
- DrawBackground(paint_dc.m_ps.rcPaint, &paint_dc);
- }
-}
« no previous file with comments | « chrome/gpu/gpu_view_win.h ('k') | chrome/gpu/gpu_view_x.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698