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

Side by Side Diff: ui/gl/gl_surface_glx.cc

Issue 1084173004: Adding status to swap complete (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix ozone demo Created 5 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 | « ui/gl/gl_surface_glx.h ('k') | ui/gl/gl_surface_mac.cc » ('j') | 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 extern "C" { 5 extern "C" {
6 #include <X11/Xlib.h> 6 #include <X11/Xlib.h>
7 } 7 }
8 8
9 #include "ui/gl/gl_surface_glx.h" 9 #include "ui/gl/gl_surface_glx.h"
10 10
(...skipping 522 matching lines...) Expand 10 before | Expand all | Expand 10 after
533 glXWaitGL(); 533 glXWaitGL();
534 XResizeWindow(g_display, window_, size.width(), size.height()); 534 XResizeWindow(g_display, window_, size.width(), size.height());
535 glXWaitX(); 535 glXWaitX();
536 return true; 536 return true;
537 } 537 }
538 538
539 bool NativeViewGLSurfaceGLX::IsOffscreen() { 539 bool NativeViewGLSurfaceGLX::IsOffscreen() {
540 return false; 540 return false;
541 } 541 }
542 542
543 bool NativeViewGLSurfaceGLX::SwapBuffers() { 543 gfx::SwapResult NativeViewGLSurfaceGLX::SwapBuffers() {
544 TRACE_EVENT2("gpu", "NativeViewGLSurfaceGLX:RealSwapBuffers", 544 TRACE_EVENT2("gpu", "NativeViewGLSurfaceGLX:RealSwapBuffers",
545 "width", GetSize().width(), 545 "width", GetSize().width(),
546 "height", GetSize().height()); 546 "height", GetSize().height());
547 547
548 glXSwapBuffers(g_display, GetDrawableHandle()); 548 glXSwapBuffers(g_display, GetDrawableHandle());
549 return true; 549 return gfx::SwapResult::SWAP_ACK;
550 } 550 }
551 551
552 gfx::Size NativeViewGLSurfaceGLX::GetSize() { 552 gfx::Size NativeViewGLSurfaceGLX::GetSize() {
553 return size_; 553 return size_;
554 } 554 }
555 555
556 void* NativeViewGLSurfaceGLX::GetHandle() { 556 void* NativeViewGLSurfaceGLX::GetHandle() {
557 return reinterpret_cast<void*>(GetDrawableHandle()); 557 return reinterpret_cast<void*>(GetDrawableHandle());
558 } 558 }
559 559
560 bool NativeViewGLSurfaceGLX::SupportsPostSubBuffer() { 560 bool NativeViewGLSurfaceGLX::SupportsPostSubBuffer() {
561 return gfx::g_driver_glx.ext.b_GLX_MESA_copy_sub_buffer; 561 return gfx::g_driver_glx.ext.b_GLX_MESA_copy_sub_buffer;
562 } 562 }
563 563
564 void* NativeViewGLSurfaceGLX::GetConfig() { 564 void* NativeViewGLSurfaceGLX::GetConfig() {
565 if (!config_) 565 if (!config_)
566 config_ = GLSurfaceGLX::GetConfig(window_); 566 config_ = GLSurfaceGLX::GetConfig(window_);
567 return config_; 567 return config_;
568 } 568 }
569 569
570 bool NativeViewGLSurfaceGLX::PostSubBuffer( 570 gfx::SwapResult NativeViewGLSurfaceGLX::PostSubBuffer(int x,
571 int x, int y, int width, int height) { 571 int y,
572 int width,
573 int height) {
572 DCHECK(gfx::g_driver_glx.ext.b_GLX_MESA_copy_sub_buffer); 574 DCHECK(gfx::g_driver_glx.ext.b_GLX_MESA_copy_sub_buffer);
573 glXCopySubBufferMESA(g_display, GetDrawableHandle(), x, y, width, height); 575 glXCopySubBufferMESA(g_display, GetDrawableHandle(), x, y, width, height);
574 return true; 576 return gfx::SwapResult::SWAP_ACK;
575 } 577 }
576 578
577 VSyncProvider* NativeViewGLSurfaceGLX::GetVSyncProvider() { 579 VSyncProvider* NativeViewGLSurfaceGLX::GetVSyncProvider() {
578 return vsync_provider_.get(); 580 return vsync_provider_.get();
579 } 581 }
580 582
581 NativeViewGLSurfaceGLX::~NativeViewGLSurfaceGLX() { 583 NativeViewGLSurfaceGLX::~NativeViewGLSurfaceGLX() {
582 Destroy(); 584 Destroy();
583 } 585 }
584 586
(...skipping 25 matching lines...) Expand all
610 if (window_) { 612 if (window_) {
611 XDestroyWindow(g_display, window_); 613 XDestroyWindow(g_display, window_);
612 window_ = 0; 614 window_ = 0;
613 } 615 }
614 } 616 }
615 617
616 bool UnmappedNativeViewGLSurfaceGLX::IsOffscreen() { 618 bool UnmappedNativeViewGLSurfaceGLX::IsOffscreen() {
617 return true; 619 return true;
618 } 620 }
619 621
620 bool UnmappedNativeViewGLSurfaceGLX::SwapBuffers() { 622 gfx::SwapResult UnmappedNativeViewGLSurfaceGLX::SwapBuffers() {
621 NOTREACHED() << "Attempted to call SwapBuffers on an unmapped window."; 623 NOTREACHED() << "Attempted to call SwapBuffers on an unmapped window.";
622 return false; 624 return gfx::SwapResult::SWAP_FAILED;
623 } 625 }
624 626
625 gfx::Size UnmappedNativeViewGLSurfaceGLX::GetSize() { 627 gfx::Size UnmappedNativeViewGLSurfaceGLX::GetSize() {
626 return size_; 628 return size_;
627 } 629 }
628 630
629 void* UnmappedNativeViewGLSurfaceGLX::GetHandle() { 631 void* UnmappedNativeViewGLSurfaceGLX::GetHandle() {
630 return reinterpret_cast<void*>(window_); 632 return reinterpret_cast<void*>(window_);
631 } 633 }
632 634
633 void* UnmappedNativeViewGLSurfaceGLX::GetConfig() { 635 void* UnmappedNativeViewGLSurfaceGLX::GetConfig() {
634 if (!config_) 636 if (!config_)
635 config_ = GLSurfaceGLX::GetConfig(window_); 637 config_ = GLSurfaceGLX::GetConfig(window_);
636 return config_; 638 return config_;
637 } 639 }
638 640
639 UnmappedNativeViewGLSurfaceGLX::~UnmappedNativeViewGLSurfaceGLX() { 641 UnmappedNativeViewGLSurfaceGLX::~UnmappedNativeViewGLSurfaceGLX() {
640 Destroy(); 642 Destroy();
641 } 643 }
642 644
643 } // namespace gfx 645 } // namespace gfx
OLDNEW
« no previous file with comments | « ui/gl/gl_surface_glx.h ('k') | ui/gl/gl_surface_mac.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698