tooltip on tree should be more flexible

This commit is contained in:
Piro / SHIMODA Hiroshi 2011-11-30 00:52:25 +09:00
parent 93bb61f1c1
commit e886c75ca3
14 changed files with 68 additions and 24 deletions

View File

@ -301,11 +301,17 @@ pref("extensions.treestyletab.twisty.expandSensitiveArea", true);
pref("extensions.treestyletab.clickOnIndentSpaces.enabled", true);
/**
* If this is "true", TST shows all titles of tabs in the tree by the tooltip
* for collapsed tree. If this is "false", or the tree is not collapsed,
* tooltip will say only the title of the single tab.
* Contents of the tooltip on tabs.
* 0 = Firefox default (show the title of the one tab)
* 1 = show all titles of tabs in the tree only for collapsed tree
* 2 = show all titles of tabs in the tree always
*/
pref("extensions.treestyletab.tooltip.includeChildren", true);
pref("extensions.treestyletab.tooltip.mode", 1);
/**
* Maximum count of tabs in a tooltip. Tabs over this limit are
* not shown in the tooltip.
*/
pref("extensions.treestyletab.tooltip.maxCount", 10);
/**
* Visibility of extra menu items for the context menu on tabs, inserted by TST.

View File

@ -3,7 +3,9 @@ tooltip.collapseSubtree.labeled=Sammenfold:\n%S
tooltip.expandSubtree=Udvid træ
tooltip.expandSubtree.labeled=Udvid:\n%S
tooltip.closeTree=Sammenfold dette træ
tooltip.closeTree.labeled=Sammenfold dette træ:\n%S
tooltip.item.label=%2$S* %1$S
tooltip.more=...and %1$S more tab(s)
dropLinkOnTab.title=Åben droppede links?
dropLinkOnTab.text=Et link blev trukket til en eksisterende fane. Vil du åbne linket i denne fane, eller som ny underfane?

View File

@ -3,7 +3,9 @@ tooltip.collapseSubtree.labeled=Zweig zuklappen:\n%S
tooltip.expandSubtree=Zweig aufklappen
tooltip.expandSubtree.labeled=Zweig aufklappen:\n%S
tooltip.closeTree=Diesen Zweig schließen
tooltip.closeTree.labeled=Diesen Zweig schließen:\n%S
tooltip.item.label=%2$S* %1$S
tooltip.more=...and %1$S more tab(s)
dropLinkOnTab.title=Wie soll der Link geöffnet werden?
dropLinkOnTab.text=Ein Link wurde auf einen bestehenden Tab gezogen. TreeStyleTab kann den Link in einem neuen, untergeordneten Tab öffnen. Wie soll der Link geöffnet werden?

View File

@ -3,7 +3,9 @@ tooltip.collapseSubtree.labeled=Collapse Tree:\n%S
tooltip.expandSubtree=Expand Tree
tooltip.expandSubtree.labeled=Expand Tree:\n%S
tooltip.closeTree=Close this Tree
tooltip.closeTree.labeled=Close this Tree:\n%S
tooltip.item.label=%2$S* %1$S
tooltip.more=...and %1$S more tab(s)
dropLinkOnTab.title=How to open the dropped link?
dropLinkOnTab.text=A link has been dropped onto existing tab. Tree Style Tab can open the link as a new child tab. How to deal with the link?

View File

@ -3,7 +3,9 @@ tooltip.collapseSubtree.labeled=Colapsar árbol:\n%S
tooltip.expandSubtree=Expandir árbol
tooltip.expandSubtree.labeled=Expandir árbol:\n%S
tooltip.closeTree=Cerrar este árbol
tooltip.closeTree.labeled=Cerrar este árbol:\n%S
tooltip.item.label=%2$S* %1$S
tooltip.more=...and %1$S more tab(s)
dropLinkOnTab.title=How to open the dropped link?
dropLinkOnTab.text=A link has been dropped onto existing tab. Tree Style Tab can open the link as a new child tab. How to deal with the link?

View File

@ -3,7 +3,9 @@ tooltip.collapseSubtree.labeled=Replier l'arborescence :\n%S
tooltip.expandSubtree=Déplier l'arborescence
tooltip.expandSubtree.labeled=Déplier l'arborescence :\n%S
tooltip.closeTree=Fermer cette arborescence
tooltip.closeTree.labeled=Fermer cette arborescence:\n%S
tooltip.item.label=%2$S* %1$S
tooltip.more=...and %1$S more tab(s)
dropLinkOnTab.title=Comment ouvrir un lien déposé ?
dropLinkOnTab.text=Un lien a été déposé sur un onglet existant. Tree Style Tab peut ouvrir le lien comme un nouveau onglet enfant. Comment gérer le lien ?

View File

@ -3,7 +3,9 @@ tooltip.collapseSubtree.labeled=Contrai tutti:\n%S
tooltip.expandSubtree=Espandi tutti
tooltip.expandSubtree.labeled=Espandi tutti:\n%S
tooltip.closeTree=Chiudi questo sottoalbero
tooltip.closeTree.labeled=Chiudi questo sottoalbero:\n%S
tooltip.item.label=%2$S* %1$S
tooltip.more=...and %1$S more tab(s)
dropLinkOnTab.title=How to open the dropped link?
dropLinkOnTab.text=A link has been dropped onto existing tab. Tree Style Tab can open the link as a new child tab. How to deal with the link?

View File

@ -3,7 +3,9 @@ tooltip.collapseSubtree.labeled=ツリーをたたむ:\n%S
tooltip.expandSubtree=ツリーを展開する
tooltip.expandSubtree.labeled=ツリーを展開する:\n%S
tooltip.closeTree=このツリーを閉じる
tooltip.closeTree.labeled=このツリーを閉じる:\n%S
tooltip.item.label=%2$S* %1$S
tooltip.more=...%1$Sつのタブが省略されています
dropLinkOnTab.title=ドロップされたリンクをどのように開きますか?
dropLinkOnTab.text=リンクがタブにドロップされました。ツリー型タブは、タブにドロップされたリンクを新しい子タブとして開くことができます。どのように扱いますか?

View File

@ -3,7 +3,9 @@ tooltip.collapseSubtree.labeled=Zwiń drzewo:\n%S
tooltip.expandSubtree=Rozwiń drzewo
tooltip.expandSubtree.labeled=Rozwiń drzewo:\n%S
tooltip.closeTree=Zamknij to drzewo
tooltip.closeTree.labeled=Zamknij to drzewo:\n%S
tooltip.item.label=%2$S* %1$S
tooltip.more=...and %1$S more tab(s)
dropLinkOnTab.title=Jak otworzyć upuszczony odnośnik?
dropLinkOnTab.text=Odnośnik został upuszczony na istniejącą kartę. Tree Style Tab może otworzyć ten odnośnik jako kartę potomną. Jak go potraktować?

View File

@ -3,7 +3,9 @@ tooltip.collapseSubtree.labeled=Свернуть дерево:\n%S
tooltip.expandSubtree=Развернуть дерево
tooltip.expandSubtree.labeled=Развернуть дерево:\n%S
tooltip.closeTree=Закрыть это дерево
tooltip.closeTree.labeled=Закрыть это дерево:\n%S
tooltip.item.label=%2$S* %1$S
tooltip.more=...and %1$S more tab(s)
dropLinkOnTab.title=Как открыть брошенную ссылку?
dropLinkOnTab.text=Ссылка была брошена в существующую вкладку. Tree Style Tab может открыть ссылку как новую дочернюю вкладку. Как поступить с ссылкой?

View File

@ -3,7 +3,9 @@ tooltip.collapseSubtree.labeled=Minimera träd:\n%S
tooltip.expandSubtree=Expandera träd
tooltip.expandSubtree.labeled=Expandera träd:\n%S
tooltip.closeTree=Stäng detta träd
tooltip.closeTree.labeled=Stäng detta träd:\n%S
tooltip.item.label=%2$S* %1$S
tooltip.more=...and %1$S more tab(s)
dropLinkOnTab.title=Hur skall den släppta länken öppnas?
dropLinkOnTab.text=En länk har släppts på en befintlig flik. Tree Style Tab kan öppna länken som en ny underordnad flik. Hur skall länken hanteras?

View File

@ -3,7 +3,9 @@ tooltip.collapseSubtree.labeled=折叠树:\n%S
tooltip.expandSubtree=展开树
tooltip.expandSubtree.labeled=展开树:\n%S
tooltip.closeTree=关闭此树
tooltip.closeTree.labeled=关闭此树:\n%S
tooltip.item.label=%2$S* %1$S
tooltip.more=...and %1$S more tab(s)
dropLinkOnTab.title=如何打开拖曳的链接?
dropLinkOnTab.text=你把一链接拖放到现有标签上Tree Style Tab 能够将该链接打开到当前标签的一个新子标签中。你希望怎么处理呢?

View File

@ -3,7 +3,9 @@ tooltip.collapseSubtree.labeled=摺疊此樹:\n%S
tooltip.expandSubtree=展開此樹
tooltip.expandSubtree.labeled=展開此樹:\n%S
tooltip.closeTree=關閉此樹
tooltip.closeTree.labeled=關閉此樹:\n%S
tooltip.item.label=%2$S* %1$S
tooltip.more=...and %1$S more tab(s)
dropLinkOnTab.title=如何開啟拖曳的鏈結?
dropLinkOnTab.text=有一個鏈結被拖曳到目前分頁。Tree Style Tab 可將此鏈結開啟為新的子分頁,您打算怎麼處理?

View File

@ -3705,7 +3705,8 @@ TreeStyleTabBrowser.prototype = {
let delay = this.getTreePref('autoCollapseExpandSubtreeOnSelect.whileFocusMovingByShortcut.delay');
if (delay > 0) {
this._autoExpandOnTabSelectTimer = this.window.setTimeout(function(aSelf) {
aSelf.collapseExpandTreesIntelligentlyWithDelayFor(tab);
if (tab && tab.parentNode)
aSelf.collapseExpandTreesIntelligentlyWithDelayFor(tab);
}, delay, this);
}
else {
@ -3920,39 +3921,49 @@ TreeStyleTabBrowser.prototype = {
handleTooltip : function TSTBrowser_handleTooltip(aEvent)
{
var tab = this.document.tooltipNode;
if (tab.localName != 'tab')
var tab = this.getTabFromChild(this.document.tooltipNode);
if (!tab || tab.localName != 'tab')
return;
var label;
var collapsed = this.isSubtreeCollapsed(tab);
var mode = this.getTreePref('tooltip.mode');
var showTree = collapsed || mode == this.kTOOLTIP_MODE_ALWAYS;
var base = parseInt(tab.getAttribute(this.kNEST) || 0);
var descendant = this.getDescendantTabs(tab);
var indentPart = ' ';
var tree = (this.getTreePref('tooltip.includeChildren') && descendant.length) ?
[tab].concat(descendant)
.map(function(aTab) {
let label = aTab.getAttribute('label');
let indent = '';
let nest = parseInt(aTab.getAttribute(this.kNEST) || 0) - base;
for (let i = 0; i < nest; i++)
{
indent += indentPart;
}
return this.treeBundle.getFormattedString('tooltip.item.label', [label, indent]);
}, this)
.join('\n') :
null ;
var tree = null;
if (mode > this.kTOOLTIP_MODE_DEFAULT &&
descendant.length) {
let tabs = [tab].concat(descendant);
let tabsToBeListed = tabs.slice(0, Math.max(1, this.getTreePref('tooltip.maxCount')));
tree = tabsToBeListed
.map(function(aTab) {
let label = aTab.getAttribute('label');
let indent = '';
let nest = parseInt(aTab.getAttribute(this.kNEST) || 0) - base;
for (let i = 0; i < nest; i++)
{
indent += indentPart;
}
return this.treeBundle.getFormattedString('tooltip.item.label', [label, indent]);
}, this)
.join('\n');
if (tabs.length != tabsToBeListed.length)
tree += '\n'+indentPart+this.treeBundle.getFormattedString('tooltip.more', [tabs.length-tabsToBeListed.length]);
}
if ('mOverCloseButton' in tab && tab.mOverCloseButton) {
if (descendant.length &&
(collapsed || this.getTreePref('closeParentBehavior') == this.kCLOSE_PARENT_BEHAVIOR_CLOSE_ALL_CHILDREN)) {
label = this.treeBundle.getString('tooltip.closeTree');
label = showTree ?
this.treeBundle.getFormattedString('tooltip.closeTree.labeled', [tree]) :
this.treeBundle.getString('tooltip.closeTree') ;
}
}
else if (tab.getAttribute(this.kTWISTY_HOVER) == 'true') {
let key = collapsed ?
let key = showTree ?
'tooltip.expandSubtree' :
'tooltip.collapseSubtree' ;
label = tree || tab.getAttribute('label');
@ -3960,7 +3971,7 @@ TreeStyleTabBrowser.prototype = {
this.treeBundle.getFormattedString(key+'.labeled', [label]) :
this.treeBundle.getString(key) ;
}
else if (collapsed) {
else if (showTree) {
label = tree;
}
@ -3969,6 +3980,9 @@ TreeStyleTabBrowser.prototype = {
aEvent.stopPropagation();
}
},
kTOOLTIP_MODE_DEFAULT : 0,
kTOOLTIP_MODE_COLLAPSED : 1,
kTOOLTIP_MODE_ALWAYS : 2,
initTabContextMenu : function TSTBrowser_initTabContextMenu(aEvent)
{