this.currentNode = node;\r
mediator.nodeSelected(node);\r
},\r
- markFirstSelected: function() {\r
+ selectNode: function(node) {\r
+ view._markSelected(node);\r
+ var range = document.createRange();\r
+ range.selectNodeContents(node[0]);\r
+ range.collapse(false);\r
+\r
+ var selection = document.getSelection();\r
+ selection.removeAllRanges()\r
+ selection.addRange(range);\r
+ },\r
+ selectFirstNode: function() {\r
var firstNodeWithText = this.node.find('[wlxml-tag]').filter(function() {\r
return $(this).clone().children().remove().end().text().trim() !== '';\r
}).first();\r
+ var node;\r
if(firstNodeWithText.length)\r
- $(firstNodeWithText[0]).click().focus();\r
+ node = $(firstNodeWithText[0])\r
+ else {\r
+ node = this.node.find('[wlxml-class|="p"]')\r
+ }\r
+ this.selectNode(node);\r
},\r
_addMetaRow: function(key, value) {\r
var newRow = $(sandbox.getTemplate('metaItem')({key: key || '', value: value || ''}));\r
return view.currentNode;\r
},\r
nodeCreated: function(node) {\r
- view._markSelected(node);\r
-\r
- var range = document.createRange();\r
- range.selectNodeContents(node[0]);\r
- range.collapse(false);\r
-\r
- var selection = document.getSelection();\r
- selection.removeAllRanges()\r
- selection.addRange(range);\r
+ view.selectNode(node);\r
\r
},\r
nodeSelected: function(node) {\r
onShowed: function() {\r
if(!wasShownAlready) {\r
wasShownAlready = true;\r
- view.markFirstSelected();\r
+ view.selectFirstNode();\r
}\r
}\r
\r