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

Side by Side Diff: content/browser/renderer_host/backing_store_gtk.cc

Issue 16958009: Remove BackingStoreGtk::CairoShowRect(). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 7 years, 6 months 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 unified diff | Download patch
« no previous file with comments | « content/browser/renderer_host/backing_store_gtk.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/renderer_host/backing_store_gtk.h" 5 #include "content/browser/renderer_host/backing_store_gtk.h"
6 6
7 #include <cairo-xlib.h> 7 #include <cairo-xlib.h>
8 #include <gtk/gtk.h> 8 #include <gtk/gtk.h>
9 #include <stdlib.h> 9 #include <stdlib.h>
10 #include <sys/ipc.h> 10 #include <sys/ipc.h>
(...skipping 646 matching lines...) Expand 10 before | Expand all | Expand 10 after
657 } 657 }
658 } 658 }
659 659
660 void BackingStoreGtk::XShowRect(const gfx::Point &origin, 660 void BackingStoreGtk::XShowRect(const gfx::Point &origin,
661 const gfx::Rect& rect, XID target) { 661 const gfx::Rect& rect, XID target) {
662 XCopyArea(display_, pixmap_, target, static_cast<GC>(pixmap_gc_), 662 XCopyArea(display_, pixmap_, target, static_cast<GC>(pixmap_gc_),
663 rect.x(), rect.y(), rect.width(), rect.height(), 663 rect.x(), rect.y(), rect.width(), rect.height(),
664 rect.x() + origin.x(), rect.y() + origin.y()); 664 rect.x() + origin.x(), rect.y() + origin.y());
665 } 665 }
666 666
667 void BackingStoreGtk::CairoShowRect(const gfx::Rect& rect,
668 GdkDrawable* drawable) {
669 cairo_surface_t* surface = cairo_xlib_surface_create(
670 display_, pixmap_, static_cast<Visual*>(visual_),
671 size().width(), size().height());
672 cairo_t* cr = gdk_cairo_create(drawable);
673 cairo_set_source_surface(cr, surface, 0, 0);
674
675 cairo_rectangle(cr, rect.x(), rect.y(), rect.width(), rect.height());
676 cairo_fill(cr);
677 cairo_destroy(cr);
678 cairo_surface_destroy(surface);
679 }
680
681 #if defined(TOOLKIT_GTK) 667 #if defined(TOOLKIT_GTK)
682 void BackingStoreGtk::PaintToRect(const gfx::Rect& rect, GdkDrawable* target) { 668 void BackingStoreGtk::PaintToRect(const gfx::Rect& rect, GdkDrawable* target) {
683 cairo_surface_t* surface = cairo_xlib_surface_create( 669 cairo_surface_t* surface = cairo_xlib_surface_create(
684 display_, pixmap_, static_cast<Visual*>(visual_), 670 display_, pixmap_, static_cast<Visual*>(visual_),
685 size().width(), size().height()); 671 size().width(), size().height());
686 cairo_t* cr = gdk_cairo_create(target); 672 cairo_t* cr = gdk_cairo_create(target);
687 673
688 cairo_translate(cr, rect.x(), rect.y()); 674 cairo_translate(cr, rect.x(), rect.y());
689 double x_scale = static_cast<double>(rect.width()) / size().width(); 675 double x_scale = static_cast<double>(rect.width()) / size().width();
690 double y_scale = static_cast<double>(rect.height()) / size().height(); 676 double y_scale = static_cast<double>(rect.height()) / size().height();
691 cairo_scale(cr, x_scale, y_scale); 677 cairo_scale(cr, x_scale, y_scale);
692 678
693 cairo_pattern_t* pattern = cairo_pattern_create_for_surface(surface); 679 cairo_pattern_t* pattern = cairo_pattern_create_for_surface(surface);
694 cairo_pattern_set_filter(pattern, CAIRO_FILTER_BEST); 680 cairo_pattern_set_filter(pattern, CAIRO_FILTER_BEST);
695 cairo_set_source(cr, pattern); 681 cairo_set_source(cr, pattern);
696 cairo_pattern_destroy(pattern); 682 cairo_pattern_destroy(pattern);
697 683
698 cairo_identity_matrix(cr); 684 cairo_identity_matrix(cr);
699 685
700 cairo_rectangle(cr, rect.x(), rect.y(), rect.width(), rect.height()); 686 cairo_rectangle(cr, rect.x(), rect.y(), rect.width(), rect.height());
701 cairo_fill(cr); 687 cairo_fill(cr);
702 cairo_destroy(cr); 688 cairo_destroy(cr);
703 } 689 }
704 #endif 690 #endif
705 691
706 } // namespace content 692 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/renderer_host/backing_store_gtk.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698