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

Side by Side Diff: remoting/host/clipboard_mac.mm

Issue 930403002: Remove remoting::Clipboard::Stop(). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 10 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
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 "remoting/host/clipboard.h" 5 #include "remoting/host/clipboard.h"
6 6
7 #import <Cocoa/Cocoa.h> 7 #import <Cocoa/Cocoa.h>
8 8
9 #include "base/basictypes.h" 9 #include "base/basictypes.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 15 matching lines...) Expand all
26 namespace remoting { 26 namespace remoting {
27 27
28 class ClipboardMac : public Clipboard { 28 class ClipboardMac : public Clipboard {
29 public: 29 public:
30 ClipboardMac(); 30 ClipboardMac();
31 ~ClipboardMac() override; 31 ~ClipboardMac() override;
32 32
33 // Must be called on the UI thread. 33 // Must be called on the UI thread.
34 void Start(scoped_ptr<protocol::ClipboardStub> client_clipboard) override; 34 void Start(scoped_ptr<protocol::ClipboardStub> client_clipboard) override;
35 void InjectClipboardEvent(const protocol::ClipboardEvent& event) override; 35 void InjectClipboardEvent(const protocol::ClipboardEvent& event) override;
36 void Stop() override;
37 36
38 private: 37 private:
39 void CheckClipboardForChanges(); 38 void CheckClipboardForChanges();
40 39
41 scoped_ptr<protocol::ClipboardStub> client_clipboard_; 40 scoped_ptr<protocol::ClipboardStub> client_clipboard_;
42 scoped_ptr<base::RepeatingTimer<ClipboardMac> > clipboard_polling_timer_; 41 scoped_ptr<base::RepeatingTimer<ClipboardMac> > clipboard_polling_timer_;
43 NSInteger current_change_count_; 42 NSInteger current_change_count_;
44 43
45 DISALLOW_COPY_AND_ASSIGN(ClipboardMac); 44 DISALLOW_COPY_AND_ASSIGN(ClipboardMac);
46 }; 45 };
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
83 NSPasteboard* pasteboard = [NSPasteboard generalPasteboard]; 82 NSPasteboard* pasteboard = [NSPasteboard generalPasteboard];
84 [pasteboard declareTypes:[NSArray arrayWithObject:NSStringPboardType] 83 [pasteboard declareTypes:[NSArray arrayWithObject:NSStringPboardType]
85 owner:nil]; 84 owner:nil];
86 [pasteboard setString:text forType:NSStringPboardType]; 85 [pasteboard setString:text forType:NSStringPboardType];
87 86
88 // Update local change-count to prevent this change from being picked up by 87 // Update local change-count to prevent this change from being picked up by
89 // CheckClipboardForChanges. 88 // CheckClipboardForChanges.
90 current_change_count_ = [[NSPasteboard generalPasteboard] changeCount]; 89 current_change_count_ = [[NSPasteboard generalPasteboard] changeCount];
91 } 90 }
92 91
93 void ClipboardMac::Stop() {
94 clipboard_polling_timer_.reset();
95 client_clipboard_.reset();
96 }
97
98 void ClipboardMac::CheckClipboardForChanges() { 92 void ClipboardMac::CheckClipboardForChanges() {
99 NSPasteboard* pasteboard = [NSPasteboard generalPasteboard]; 93 NSPasteboard* pasteboard = [NSPasteboard generalPasteboard];
100 NSInteger change_count = [pasteboard changeCount]; 94 NSInteger change_count = [pasteboard changeCount];
101 if (change_count == current_change_count_) { 95 if (change_count == current_change_count_) {
102 return; 96 return;
103 } 97 }
104 current_change_count_ = change_count; 98 current_change_count_ = change_count;
105 99
106 NSString* data = [pasteboard stringForType:NSStringPboardType]; 100 NSString* data = [pasteboard stringForType:NSStringPboardType];
107 if (data == nil) { 101 if (data == nil) {
108 return; 102 return;
109 } 103 }
110 104
111 protocol::ClipboardEvent event; 105 protocol::ClipboardEvent event;
112 event.set_mime_type(kMimeTypeTextUtf8); 106 event.set_mime_type(kMimeTypeTextUtf8);
113 event.set_data(base::SysNSStringToUTF8(data)); 107 event.set_data(base::SysNSStringToUTF8(data));
114 client_clipboard_->InjectClipboardEvent(event); 108 client_clipboard_->InjectClipboardEvent(event);
115 } 109 }
116 110
117 scoped_ptr<Clipboard> Clipboard::Create() { 111 scoped_ptr<Clipboard> Clipboard::Create() {
118 return make_scoped_ptr(new ClipboardMac()); 112 return make_scoped_ptr(new ClipboardMac());
119 } 113 }
120 114
121 } // namespace remoting 115 } // namespace remoting
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698