33 * Omer Saatcioglu 2011
44 *
55 */
6-
6+
77package com .saatcioglu .phonegap .clipboardmanager ;
88
99import org .json .JSONArray ;
1212import android .content .Context ;
1313import android .text .ClipboardManager ;
1414
15+ import com .phonegap .DroidGap ;
1516import com .phonegap .api .Plugin ;
1617import com .phonegap .api .PluginResult ;
1718
1819public class ClipboardManagerPlugin extends Plugin {
19- private static String actionCopy = "copy" ;
20- private static String actionPaste = "paste" ;
21- private static String errorParse = "Couldn't get the text to copy" ;
22- private static String errorUnknown = "Unknown Error" ;
20+ private static final String actionCopy = "copy" ;
21+ private static final String actionPaste = "paste" ;
22+ private static final String errorParse = "Couldn't get the text to copy" ;
23+ private static final String errorUnknown = "Unknown Error" ;
24+
25+ private ClipboardManager mClipboardManager ;
26+
27+ public void setContext (DroidGap ctx ) {
28+ super .setContext (ctx );
29+ mClipboardManager = (ClipboardManager ) ctx
30+ .getSystemService (Context .CLIPBOARD_SERVICE );
31+ }
2332
2433 /**
2534 * Executes the request and returns PluginResult.
@@ -37,21 +46,15 @@ public PluginResult execute(String action, JSONArray args, String callbackId) {
3746 String arg = "" ;
3847 try {
3948 arg = (String ) args .get (0 );
40- ClipboardManager clipboard = (ClipboardManager ) ContextHolder
41- .get ().getSystemService (Context .CLIPBOARD_SERVICE );
42- clipboard .setText (arg );
49+ mClipboardManager .setText (arg );
4350 } catch (JSONException e ) {
44- return new PluginResult (PluginResult .Status .ERROR ,
45- errorParse );
51+ return new PluginResult (PluginResult .Status .ERROR , errorParse );
4652 } catch (Exception e ) {
47- return new PluginResult (PluginResult .Status .ERROR ,
48- errorUnknown );
53+ return new PluginResult (PluginResult .Status .ERROR , errorUnknown );
4954 }
5055 return new PluginResult (PluginResult .Status .OK , arg );
5156 } else if (action .equals (actionPaste )) {
52- ClipboardManager clipboard = (ClipboardManager ) ContextHolder .get ()
53- .getSystemService (Context .CLIPBOARD_SERVICE );
54- String arg = (String ) clipboard .getText ();
57+ String arg = (String ) mClipboardManager .getText ();
5558 if (arg == null ) {
5659 arg = "" ;
5760 }
0 commit comments