summaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
authorbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-10-18 02:47:39 +0000
committerbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-10-18 02:47:39 +0000
commitc2818d44191bc4342c2ae322f3e0cb218dd2ec66 (patch)
treede6265a7e8506e6df679a436cb4df1cd7281a614 /app
parente8b53808f5251d1486dd8b992fa94d96bb604e01 (diff)
downloadchromium_src-c2818d44191bc4342c2ae322f3e0cb218dd2ec66.zip
chromium_src-c2818d44191bc4342c2ae322f3e0cb218dd2ec66.tar.gz
chromium_src-c2818d44191bc4342c2ae322f3e0cb218dd2ec66.tar.bz2
Move scoped_nsdisable_screen_update from base to app/mac
Move scoped_aedesc from base to base/mac Use namespace and proper Google-style class naming. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3828009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62904 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'app')
-rw-r--r--app/app_base.gypi1
-rw-r--r--app/mac/scoped_nsdisable_screen_updates.h37
-rw-r--r--app/test_suite.h4
3 files changed, 40 insertions, 2 deletions
diff --git a/app/app_base.gypi b/app/app_base.gypi
index 92963df..2866bfd 100644
--- a/app/app_base.gypi
+++ b/app/app_base.gypi
@@ -165,6 +165,7 @@
'l10n_util_win.h',
'linear_animation.cc',
'linear_animation.h',
+ 'mac/scoped_nsdisable_screen_updates.h',
'menus/accelerator.h',
'menus/accelerator_gtk.h',
'menus/accelerator_cocoa.h',
diff --git a/app/mac/scoped_nsdisable_screen_updates.h b/app/mac/scoped_nsdisable_screen_updates.h
new file mode 100644
index 0000000..14a948c
--- /dev/null
+++ b/app/mac/scoped_nsdisable_screen_updates.h
@@ -0,0 +1,37 @@
+// 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.
+
+#ifndef APP_MAC_SCOPED_NSDISABLE_SCREEN_UPDATES_H_
+#define APP_MAC_SCOPED_NSDISABLE_SCREEN_UPDATES_H_
+#pragma once
+
+#import <Cocoa/Cocoa.h>
+
+#include "base/basictypes.h"
+
+namespace app {
+namespace mac {
+
+// A stack-based class to disable Cocoa screen updates. When instantiated, it
+// disables screen updates and enables them when destroyed. Update disabling
+// can be nested, and there is a time-maximum (about 1 second) after which
+// Cocoa will automatically re-enable updating. This class doesn't attempt to
+// overrule that.
+class ScopedNSDisableScreenUpdates {
+ public:
+ ScopedNSDisableScreenUpdates() {
+ NSDisableScreenUpdates();
+ }
+ ~ScopedNSDisableScreenUpdates() {
+ NSEnableScreenUpdates();
+ }
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(ScopedNSDisableScreenUpdates);
+};
+
+} // namespace mac
+} // namespace app
+
+#endif // APP_MAC_SCOPED_NSDISABLE_SCREEN_UPDATES_H_
diff --git a/app/test_suite.h b/app/test_suite.h
index 61bedab..7e9076c 100644
--- a/app/test_suite.h
+++ b/app/test_suite.h
@@ -14,7 +14,7 @@
#if defined(OS_MACOSX)
#include "base/mac_util.h"
#endif
-#include "base/scoped_nsautorelease_pool.h"
+#include "base/mac/scoped_nsautorelease_pool.h"
#include "base/test/test_suite.h"
class AppTestSuite : public base::TestSuite {
@@ -25,7 +25,7 @@ class AppTestSuite : public base::TestSuite {
protected:
virtual void Initialize() {
- base::ScopedNSAutoreleasePool autorelease_pool;
+ base::mac::ScopedNSAutoreleasePool autorelease_pool;
TestSuite::Initialize();