Commit Graph

473 Commits

Author SHA1 Message Date
YUKI Hiroshi
ee7d2392c8 Disallow to make indentation level smaller than the default value #1070 2016-02-17 16:23:20 +09:00
YUKI Hiroshi
3a2c801f5d Don't apply obsolete "extensions.treestyletab.allowSubtreeCollapseExpand.*" preferences #1070 2016-02-17 16:05:23 +09:00
Piro / YUKI Hiroshi
0bfedf7480 Attach new tab to the current tab only if it seems actually opened with relatedToCurrent=true
There are two keys: tab.owner and gBrowser._lastRelatedTab.
tab.owner can appear even if the tab is opened without relatedToCurrent=true, for example, about:addons.
On the other hand, gBrowser._lastRelatedTab is updated only when relatedToCurrent=true.
So it seems more better trigger to attach a new tab to the parent automatically.
This should fix #1065 (https://github.com/5digits/dactyl/issues/140)
2016-02-16 09:46:34 +09:00
Piro / YUKI Hiroshi
1126c9f211 Output log more safely #1067 2016-02-15 23:45:58 +09:00
Piro / YUKI Hiroshi
b8333261b5 Don't open new tab as a child of the current if extensions.treestyletab.autoAttach=false #1062 2016-02-14 18:41:42 +09:00
Piro / YUKI Hiroshi
bbffed0d5d Highlight tabs more slowly 2016-02-13 04:59:52 +09:00
Piro / YUKI Hiroshi
2c6534a771 Apply animation more smoothly 2016-02-13 04:57:45 +09:00
Piro / YUKI Hiroshi
ea99c3cf71 Fix regression: open bookmarks as separate tabs for user preference #949 2016-02-13 04:40:16 +09:00
Piro / YUKI Hiroshi
6ca9f61115 Calculate style rules for narrow scroll bar more intelligently #240 2016-02-13 01:50:15 +09:00
Piro / YUKI Hiroshi
0a86767afb Update style rules for the narrow scroll bar when the tab bar becomes overflow 2016-02-13 01:11:44 +09:00
Piro / YUKI Hiroshi
573f1d179d Move some utilities from TSTBase to TSTUtils 2016-02-13 01:01:44 +09:00
Piro / YUKI Hiroshi
fc38c81839 Collapse/expand the tab bar by middle click on the splitter #242 2016-02-12 23:06:49 +09:00
Piro / YUKI Hiroshi
0ab8961894 Bump copyright year to 2016 2016-02-12 22:39:49 +09:00
YUKI Hiroshi
09bb874f34 Highlight tabs more slowly 2016-02-12 20:22:12 +09:00
YUKI Hiroshi
c35a01035d Show animation for highlighted tab more slowly 2016-02-12 20:19:25 +09:00
YUKI Hiroshi
9eb445ce99 Highlight modified tab 2016-02-12 20:15:29 +09:00
YUKI Hiroshi
3de447706c Move the tab correctly 2016-02-12 19:32:59 +09:00
YUKI Hiroshi
e2aff9e21f Keep tree's position when a root tab is closed 2016-02-12 19:30:50 +09:00
YUKI Hiroshi
7050d5994c Revert "Don't replace parent tab with group tab if it ls already replaced"
This reverts commit c3efa9bd13.
2016-02-12 19:29:15 +09:00
YUKI Hiroshi
c3efa9bd13 Don't replace parent tab with group tab if it ls already replaced 2016-02-12 19:27:51 +09:00
YUKI Hiroshi
7480757a0f Disable animation for temporary modification of tree 2016-02-12 19:26:26 +09:00
YUKI Hiroshi
b4f153d083 Add ability to replace closed parent tab with new dummy tab #133 2016-02-12 19:23:56 +09:00
YUKI Hiroshi
8898534f10 Fix indent 2016-02-12 16:48:31 +09:00
YUKI Hiroshi
25e7783899 Don't update order of tab contents infinitely 2016-02-12 16:48:08 +09:00
YUKI Hiroshi
75050af492 Put closebox in each tab rightside 2016-02-12 16:15:37 +09:00
YUKI Hiroshi
12757cf2c3 Update the order of tab contents, when they are dynamically changed. 2016-02-12 16:10:56 +09:00
YUKI Hiroshi
e531d8cd93 Output debug log to the browser console also 2016-02-10 19:10:46 +09:00
YUKI Hiroshi
fe7cf571f5 Move XPath related utilities from TSTBase to TSTUtils 2016-02-10 17:42:37 +09:00
YUKI Hiroshi
7fdc114ed6 Output more debug log 2016-01-25 17:28:59 +09:00
YUKI Hiroshi
84c0822592 Disallow to move a new tab by loadOneTab itself 2016-01-25 17:28:22 +09:00
YUKI Hiroshi
355b3f181b Simplify 2016-01-25 17:28:06 +09:00
YUKI Hiroshi
0dab3f30ec Store "internally moving" for individual tab for tab events about individual tab 2016-01-25 17:00:03 +09:00
Piro / YUKI Hiroshi
d5b05b6017 Reduce eval hack 2016-01-22 00:13:56 +09:00
YUKI Hiroshi
fdc472441b Move codes to override behaviors around bookmarks to a JS code module.
Moreover, it reduces use of eval.
2016-01-21 18:23:11 +09:00
YUKI Hiroshi
1b8f61f778 Place newly opened tab to the correct position 2016-01-19 20:27:43 +09:00
YUKI Hiroshi
e2c93cc59c Introduce new API to open orphan tab intentionally.
It is required to open a new tab with "relatedToCurrent" as orphaned.
This solves the problem https://github.com/piroor/treestyletab/issues/1013#issuecomment-172780573
2016-01-19 18:09:49 +09:00
YUKI Hiroshi
2ede365e18 Delete flags from the service object when they are expired 2016-01-19 18:04:29 +09:00
YUKI Hiroshi
f4fff387b1 Make new tabs opened with "relatedToCurrent:true" as a child of the current tab 2016-01-19 17:47:45 +09:00
YUKI Hiroshi
28ba3b54ad Fixup tree structure after tab move correctly.
Keyboard shortcuts Ctrl-Shift-PageUp/PageDown sometimes broke the tree.
This commit fixes following cases:

case 1:
  * [-] A
    * A-1 <= Ctrl-Shift-PageDown at here
  * [+] B

  then they should be:

  * A
  * [+] B
  * A-1

  but actually:

  * [-] A
  * [+] B
  *   A-1 <= still a child of A!

case 2:

  * A
  * [-] B
    * [+] B-1 <= Ctrl-Shift-PageUp at here

  then they should be:

  * A
  * [+] B-1
  * B

  but actually:

  * A
  *  [+] B-1 <= still a child of B!
  * [-] B
2016-01-18 18:43:36 +09:00
YUKI Hiroshi
1623bc43a9 Output more logs for debugging 2016-01-18 17:02:53 +09:00
YUKI Hiroshi
63e291b603 Don't change scroll position of the tab bar when it is expanded from shrunken 2015-12-25 17:21:50 +09:00
YUKI Hiroshi
44825b4e24 Add more debug logs around fullscreen toggling 2015-12-25 16:17:27 +09:00
Piro / YUKI Hiroshi
21715d2c3c Don't touch missing "detail" information of TabAttrModified event on Firefox 38 #1010 2015-12-14 23:26:00 +09:00
Piro / YUKI Hiroshi
34278450e1 Add a secret preference to disable the safeguard for infinity promoting of all children #988 2015-11-30 01:04:54 +09:00
Piro / YUKI Hiroshi
184555c3fa Update insertion position info for old previous/next sibling elements too #735 2015-11-30 00:43:59 +09:00
Piro / YUKI Hiroshi
6cf8e5ee25 Reattach a moved tab to its preferred parent, for moving by Ctrl-Sihft-PageUp.
See also: https://github.com/piroor/treestyletab/issues/998#issuecomment-160177595
2015-11-28 02:31:22 +09:00
Piro / YUKI Hiroshi
191bb0ce26 Output more debug messages 2015-11-28 02:23:03 +09:00
YUKI Hiroshi
92e03c52a9 Control "muted" status of descendant tabs if the tab has a subtree and they are collapsed 2015-11-19 20:20:15 +09:00
YUKI Hiroshi
38928625a9 Fix indent 2015-11-19 19:41:26 +09:00
YUKI Hiroshi
d0cfd42c02 Apply virtual muted status for the parent tab correctly 2015-11-19 19:40:43 +09:00
YUKI Hiroshi
01587b928d Observe changes of "muted" attribute of tabs 2015-11-19 19:29:09 +09:00
YUKI Hiroshi
1d30207dc0 Apply soundplaying attribute restored from session as the really-sound-playing state 2015-11-19 19:11:41 +09:00
YUKI Hiroshi
e950d56879 Use better method name 2015-11-19 18:33:07 +09:00
YUKI Hiroshi
e6eac24805 Show sound indicator in a tab which have any soundplaying descendant 2015-11-19 18:30:38 +09:00
YUKI Hiroshi
573556a834 Store state of actual sound-playing for each tab 2015-11-19 18:10:17 +09:00
YUKI Hiroshi
44c7cd117a Separate method to update tab's descendant count 2015-11-19 17:21:22 +09:00
YUKI Hiroshi
1a1e609b9d Restore tab bar visible after the grippy is clicked again (regression) 2015-11-19 15:20:30 +09:00
YUKI Hiroshi
ffd7c26150 Add a comment to describe its design around promoting of children 2015-11-18 19:16:06 +09:00
Piro / YUKI Hiroshi
3fa5aec658 Add reference counter implementation to detect memory leak 2015-11-10 03:00:43 +09:00
Piro / YUKI Hiroshi
4b32a22531 Remove registered event listeners more completely 2015-11-10 01:44:39 +09:00
YUKI Hiroshi
36ccd7a321 Fix misspelling of "phisical" - it should be "physical" #889 2015-11-06 15:47:39 +09:00
Piro / YUKI Hiroshi
d534c28a6d Use meaningful name for "tabs in titlebar" hack 2015-11-05 23:28:38 +09:00
Piro / YUKI Hiroshi
49dd724d0d Revert hacks for "tabs on top" partially.
It is still required to disable "tabs in titlebar".
2015-11-05 23:26:34 +09:00
YUKI Hiroshi
3bfa87f0e0 Remove obsolete hack for TabsOnTop 2015-11-05 18:44:03 +09:00
YUKI Hiroshi
296bae010f Output more debug print 2015-11-05 18:08:22 +09:00
YUKI Hiroshi
f75443ce6f Fix indent 2015-11-02 16:15:48 +09:00
YUKI Hiroshi
7e5916cce5 Allow to update the size of the tab bar by other addons with the nsDOMTreeStyleTabTabbarRendered event 2015-11-02 16:14:46 +09:00
YUKI Hiroshi
050a87e108 Dispatch custom event to notify other addons that the tab bar is rendered by TST.
This event is required to fix the issue #938 with Unified Sidebar.
2015-11-02 16:01:35 +09:00
Piro / YUKI Hiroshi
036ca2a5d5 Hide toolbar related elements completely in the DOM fullscreen mode.
The "inDOMFullscreen" attribute is introduced at Firefox 36 by http://hg.mozilla.org/mozilla-central/rev/3aef39ca3919 and now TST supports only Firefox 38 and newer. So we should use it instead of my custom attribute.
2015-10-27 00:42:52 +09:00
YUKI Hiroshi
ad15b22b39 Output more debug prints 2015-10-26 18:50:38 +09:00
YUKI Hiroshi
5bd7112a24 Control more debug prints by preferences 2015-10-26 16:37:28 +09:00
YUKI Hiroshi
de777e7ff2 Control debug prints via preferences 2015-10-26 16:32:31 +09:00
Piro / YUKI Hiroshi
8185bafaae Define global symbol which to be exported, by "var" instead of "const".
This should avoid the issue caused by new behavior of ES6 "const".
See also https://bugzilla.mozilla.org/show_bug.cgi?id=1202902
2015-10-11 12:40:17 +09:00
YUKI Hiroshi
9985efab20 Fix typo 2015-10-05 20:04:10 +09:00
YUKI Hiroshi
b4cac92814 Update insertion position info about detached tabs by the method detachTab itself 2015-10-05 20:02:04 +09:00
YUKI Hiroshi
b248f68fad Update insertion position info of old previous/next tabs after rearrangement 2015-10-05 19:57:17 +09:00
YUKI Hiroshi
7c592fce12 Gather methods to update insertion position info of tabs 2015-10-05 19:56:02 +09:00
YUKI Hiroshi
7c0abf4ee9 Ignore null argument 2015-10-05 19:55:33 +09:00
YUKI Hiroshi
055a64f114 Use commom method to fixup insertion info 2015-10-05 19:34:54 +09:00
YUKI Hiroshi
6fd907ff9a Use meanignful method name 2015-10-05 19:33:50 +09:00
YUKI Hiroshi
3980ea3c5d Add method to dump stored tree structure.
gBrowser.treeStyleTab.dumpTreeInformation() exports the result as an object, so you can see the result like:

  JSON.stringify(gBrowser.treeStyleTab.dumpTreeInformation())

via the browser console.
2015-10-05 19:21:41 +09:00
YUKI Hiroshi
586ab135c3 Remove needless information to reference sibling tabs after rearrangement.
This commit is related to the issue #735
2015-10-05 18:59:13 +09:00
Piro / YUKI Hiroshi
dd6a01532d Add credit 2015-09-29 06:18:14 +09:00
Piro / YUKI Hiroshi
2018b2063e Apply new size of the tab bar specified at the configuration dialog, for all windows 2015-09-29 04:50:16 +09:00
Piro / YUKI Hiroshi
04b06ef084 Apply new pref value only for the topmost browser window smartly 2015-09-29 03:45:10 +09:00
YUKI Hiroshi
3a3d0945c7 Place sound button in tabs before the closebox 2015-09-28 20:33:31 +09:00
YUKI Hiroshi
a43b31b5c7 Set tab-strip-element attribute for the tabbar internal box ceratinly.
TreeStyleTabBrowser#init() fails to set the attribute for the tabbar internal box,
so resizing of the element is unexpectedly tracked by BrowserUIShowHideObserver
even if it is triggered by the "auto hide" feature. It causes the bug #942.
When the mouse cursor moves onth the shrunken tab bar, autohide service expands
the width of the tab bar by setting width/height attribuets. Such a "resizing"
must be ignored by BrowserUIShowHideObserver because only unexpected resizing
caused by other addons triggers "update size of the floating tab bar".
2015-09-25 15:32:58 +09:00
YUKI Hiroshi
15666abfcb Call renamed methods correctly 2015-08-28 17:39:04 +09:00
Xidorn Quan
1e8a1bc324 Fix Fullscreen API issue for Firefox 41+.
This is a change from bug 1161802 which makes the "fullscreen" event be
triggered after window.fullScreen value flips.
2015-08-18 12:11:23 +10:00
YUKI Hiroshi
c224b26066 Revert "Repair fullscreen detection. Fixes #903"
This reverts commit 5958766997.
It breaks Firefox 39 and older versions.
2015-07-23 12:18:59 +09:00
J. Ryan Stinnett
5958766997 Repair fullscreen detection. Fixes #903 2015-07-22 19:13:08 -05:00
Piro / YUKI Hiroshi
daa27ee336 Clear temporary position information of the tab bar after it is permanently changed.
This seems to fix broken appearance issue around toolbar customization (on second try or later).
2015-06-13 00:16:21 +09:00
Piro / YUKI Hiroshi
f9aa9d123c Restore/reinit tabbar asynchronously on toolbar customization 2015-06-13 00:06:15 +09:00
Piro / YUKI Hiroshi
523848a7ed Migrate from "selected" to "visuallyselected" attribute.
See also: http://www.hackermusings.com/2015/06/electrolysis-a-tale-of-tab-switching-and-themes/
2015-06-11 03:28:00 +09:00
YUKI Hiroshi
0c2c33e19d Fix typo 2015-03-19 18:12:07 +09:00
YUKI Hiroshi
6efc491e66 Cancel previous scroll before scroll to tab group 2015-03-19 11:20:52 +09:00
YUKI Hiroshi
d7963e36be Extract logic to scroll to specified tabs, from the method to scroll to a tree 2015-03-19 10:24:47 +09:00
Piro / YUKI Hiroshi
eccfe1ea8d Don't move scroll position if the target tab is already in the viewport (regression by the previous commit) 2015-03-18 02:59:58 +09:00
Piro / YUKI Hiroshi
4ff4584833 Use Firefox's native smooth scrolling method if possible, to activate accelerations #856 2015-03-18 02:52:02 +09:00
Piro / YUKI Hiroshi
d0fb0280e8 Fix indent 2015-03-18 02:40:08 +09:00