1// Copyright 2014 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#include "content/browser/compositor/resize_lock.h" 6 7namespace content { 8 9ResizeLock::ResizeLock(const gfx::Size new_size, bool defer_compositor_lock) 10 : new_size_(new_size), 11 defer_compositor_lock_(defer_compositor_lock) { 12 if (!defer_compositor_lock_) 13 LockCompositor(); 14} 15 16ResizeLock::~ResizeLock() { 17 UnlockCompositor(); 18} 19 20bool ResizeLock::GrabDeferredLock() { 21 if (!defer_compositor_lock_) 22 return false; 23 LockCompositor(); 24 return true; 25} 26 27void ResizeLock::UnlockCompositor() { 28 defer_compositor_lock_ = false; 29} 30 31void ResizeLock::LockCompositor() { 32 defer_compositor_lock_ = false; 33} 34 35} // namespace content 36