07/06/28 16:43:33 TXdRfSCN0
>>171
軽量マウスジェスチャー用をどーぞ, ※※はお好きなジェスチャーに。
//選択テキストをクリップボードにコピー
case "※※":
(function(){
function getSelectString(){
function getWindow(){
var focusedWindow = document.commandDispatcher.focusedWindow;
if (!focusedWindow || focusedWindow == window) return window.content;
else return focusedWindow;
}
var targetWindow = getWindow();
var sel = Components.lookupMethod(targetWindow, 'getSelection').call(targetWindow);
//インプット/テキストエリアもね
if (sel && !sel.toString()) {
var node = document.commandDispatcher.focusedElement;
if (node && (node.type == "text" || node.type == "textarea") && 'selectionStart' in node && node.selectionStart != node.selectionEnd) {
var offsetStart = Math.min(node.selectionStart, node.selectionEnd);
var offsetEnd = Math.max(node.selectionStart, node.selectionEnd);
return node.value.substr(offsetStart, offsetEnd-offsetStart);
}
}
return sel ? sel.toString() : "";
}
Components.classes["@mozilla.org/widget/clipboardhelper;1"]
.getService(Components.interfaces.nsIClipboardHelper).copyString(getSelectString());
})();
break;