Fix "Argument 1 of Range.selectNode is not an object" (#1053)
diff --git a/www/static/plugins/plugin.jsx b/www/static/plugins/plugin.jsx
index b63dce5..3886a26 100755
--- a/www/static/plugins/plugin.jsx
+++ b/www/static/plugins/plugin.jsx
@@ -10,19 +10,22 @@
},
copyText: function() {
var range = document.createRange();
- range.selectNode(this.getDOMNode().getElementsByClassName("cordova-add-command")[0]);
+ var elements = this.getDOMNode().getElementsByClassName("cordova-add-command");
+ if(elements.length > 0) {
+ range.selectNode(elements[0]);
- var select = window.getSelection();
- select.removeAllRanges();
- select.addRange(range);
+ var select = window.getSelection();
+ select.removeAllRanges();
+ select.addRange(range);
- try {
- document.execCommand("copy");
- } catch(e) {
- // Silently fail for now
+ try {
+ document.execCommand("copy");
+ } catch(e) {
+ // Silently fail for now
+ }
+
+ select.removeAllRanges();
}
-
- select.removeAllRanges();
},
render: function() {
if(!this.props.plugin) {