| OLD | NEW |
| 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 #ifndef UI_BASE_CLIPBOARD_CLIPBOARD_H_ | 5 #ifndef UI_BASE_CLIPBOARD_CLIPBOARD_H_ |
| 6 #define UI_BASE_CLIPBOARD_CLIPBOARD_H_ | 6 #define UI_BASE_CLIPBOARD_CLIPBOARD_H_ |
| 7 | 7 |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 #include <stdint.h> | 9 #include <stdint.h> |
| 10 | 10 |
| (...skipping 316 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 327 friend class TestClipboard; | 327 friend class TestClipboard; |
| 328 // For SetClipboardForCurrentThread's argument. | 328 // For SetClipboardForCurrentThread's argument. |
| 329 friend struct std::default_delete<Clipboard>; | 329 friend struct std::default_delete<Clipboard>; |
| 330 | 330 |
| 331 static base::PlatformThreadId GetAndValidateThreadID(); | 331 static base::PlatformThreadId GetAndValidateThreadID(); |
| 332 | 332 |
| 333 // A list of allowed threads. By default, this is empty and no thread checking | 333 // A list of allowed threads. By default, this is empty and no thread checking |
| 334 // is done (in the unit test case), but a user (like content) can set which | 334 // is done (in the unit test case), but a user (like content) can set which |
| 335 // threads are allowed to call this method. | 335 // threads are allowed to call this method. |
| 336 typedef std::vector<base::PlatformThreadId> AllowedThreadsVector; | 336 typedef std::vector<base::PlatformThreadId> AllowedThreadsVector; |
| 337 static base::LazyInstance<AllowedThreadsVector> allowed_threads_; | 337 static base::LazyInstance<AllowedThreadsVector>::DestructorAtExit |
| 338 allowed_threads_; |
| 338 | 339 |
| 339 // Mapping from threads to clipboard objects. | 340 // Mapping from threads to clipboard objects. |
| 340 typedef std::map<base::PlatformThreadId, std::unique_ptr<Clipboard>> | 341 typedef std::map<base::PlatformThreadId, std::unique_ptr<Clipboard>> |
| 341 ClipboardMap; | 342 ClipboardMap; |
| 342 static base::LazyInstance<ClipboardMap> clipboard_map_; | 343 static base::LazyInstance<ClipboardMap>::DestructorAtExit clipboard_map_; |
| 343 | 344 |
| 344 // Mutex that controls access to |g_clipboard_map|. | 345 // Mutex that controls access to |g_clipboard_map|. |
| 345 static base::LazyInstance<base::Lock>::Leaky clipboard_map_lock_; | 346 static base::LazyInstance<base::Lock>::Leaky clipboard_map_lock_; |
| 346 | 347 |
| 347 DISALLOW_COPY_AND_ASSIGN(Clipboard); | 348 DISALLOW_COPY_AND_ASSIGN(Clipboard); |
| 348 }; | 349 }; |
| 349 | 350 |
| 350 } // namespace ui | 351 } // namespace ui |
| 351 | 352 |
| 352 #endif // UI_BASE_CLIPBOARD_CLIPBOARD_H_ | 353 #endif // UI_BASE_CLIPBOARD_CLIPBOARD_H_ |
| OLD | NEW |