Commit Graph

1338 Commits

Author SHA1 Message Date
YUKI Hiroshi
1a16b8f657 Fix path to DOMDocument 2016-01-15 12:35:23 +09:00
Piro / YUKI Hiroshi
bd1e134c29 handle onsizemodechange events correctly 2016-01-15 00:12:44 +09:00
YUKI Hiroshi
ff08f39190 Detect vertical tab bar correctly 2016-01-05 17:05:47 +09:00
YUKI Hiroshi
279abc811c Ignroe show/hide change of scroll indicator in the vertical tab bar 2016-01-05 17:01:11 +09:00
YUKI Hiroshi
04427948de Output more debug logs 2016-01-05 16:47:37 +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
551ce8d809 Disallow to enlarge the width of the tab bar over a half of the window 2015-11-30 01:44:24 +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
1b815f963c Limit maximum width of the tab bar to 50% of the window 2015-11-27 19:54:11 +09:00
YUKI Hiroshi
9b856616f7 Use preferred label for "Auto hide tab bar" in the context menu for auto hide or auto shrink 2015-11-27 19:17:47 +09:00
YUKI Hiroshi
d6ad23e167 Toggle visibility of the tab bar by mousemove on the developer tools.
See also #1003
2015-11-27 18:40:59 +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
b98fe4afbc Remove registered event listeners more completely 2015-11-10 02:14:23 +09:00
Piro / YUKI Hiroshi
4b32a22531 Remove registered event listeners more completely 2015-11-10 01:44:39 +09:00
Piro / YUKI Hiroshi
991390d88f Export EXPORTED_SYMBOLS 2015-11-10 01:40:54 +09:00
Piro / YUKI Hiroshi
00d43f577c Remove obsolete code 2015-11-09 23:15:45 +09:00
YUKI Hiroshi
3cff4eb9ca Fix indent 2015-11-09 17:28:03 +09:00
YUKI Hiroshi
081acb238b Don't activate "tabs in titlebar" for OS X #983 2015-11-09 17:27:35 +09:00
Piro / YUKI Hiroshi
a6eb66c216 Activate "draw in titlebar" when the menubar is permanently shown #893
Because the special binding chrome://browser/content/customizableui/toolbar.xml#toolbar-drag works only when the "chromemargin" attribute is specified for the root element like "0,2,2,2". In other words, draggable UI elements don't work as expected for regular window.
2015-11-08 22:50:39 +09:00
Piro / YUKI Hiroshi
adc8a7e1ed Block to save TST specific internal attributes to the session data.
Unexpectedly persisted attributes automatically restored are cause many odd problems. We must block it.
2015-11-08 18:27:47 +09:00
Piro / YUKI Hiroshi
8cd426101a Open bookmarks in a folder as tabs when a folder is dragged and dropped onto the tab bar.
The feature did not work on lately Firefox, like Firefox 45.0a1.
2015-11-07 17:00:23 +09:00
Piro / YUKI Hiroshi
c710ecc0b2 Add TODO comment 2015-11-07 15:53:56 +09:00
Piro / YUKI Hiroshi
55002c5b50 Fix indent 2015-11-07 15:48:38 +09:00
Piro / YUKI Hiroshi
dbd94d4b62 Use getShortcutOrURIAndPostData() directly 2015-11-07 15:48:11 +09:00
Piro / YUKI Hiroshi
852587b0cd Allow to open new tab from dropped link again 2015-11-07 15:33:03 +09:00
YUKI Hiroshi
355993a08e Fix indent 2015-11-06 15:57:19 +09:00
YUKI Hiroshi
a1a519f189 Remove XPath-based method to find the last descendant tab.
It seems to be too complex for "last descendant".
This will solve the issue #888.
2015-11-06 15:55:33 +09:00
YUKI Hiroshi
710ca20510 Migrate old misspelled preference 2015-11-06 15:50:11 +09:00
YUKI Hiroshi
36ccd7a321 Fix misspelling of "phisical" - it should be "physical" #889 2015-11-06 15:47:39 +09:00
YUKI Hiroshi
38f01ba0a9 Detect position change of the tab bar.
This seems required for #895
2015-11-06 14:54:07 +09:00
YUKI Hiroshi
0ac67fcdff Update appearance of the tab bar by changes around the social sidebar #895 2015-11-06 14:36:54 +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
20afc67a68 Remove "isPopupWindow" utility.
Because it was used only by hacks for TabsOnTop.
2015-11-05 18:44:16 +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
e219b479f2 Reposition the floating tab bar only when the window mode is really changed between normal and maximized 2015-11-05 18:06:25 +09:00
YUKI Hiroshi
d8f4a17873 Suppress "TypeError: this.formatAccessKey is not a function" error on startup 2015-11-05 17:39:14 +09:00
YUKI Hiroshi
c1d0047c1d Do nothing if rootElementObserver is not initialized yet 2015-11-05 17:08:24 +09:00
YUKI Hiroshi
f7d4b970bd Output more debug information 2015-11-05 16:45:09 +09:00
YUKI Hiroshi
983edcb17a Simply use Timer.jsm 2015-11-05 16:43:59 +09:00
YUKI Hiroshi
5a9da781a8 Fix indent 2015-11-05 16:08:15 +09:00
YUKI Hiroshi
92e8912256 Dump more debug information 2015-11-05 16:00:32 +09:00
Piro / YUKI Hiroshi
7ffc1f3b89 Don't activate "tabs on top" after toolbar customizations (See #968) 2015-11-04 23:21:42 +09:00
YUKI Hiroshi
1029b40e09 Follow to changes introduced by the bug 1207594.
The method "_setEffectAllowedForDataTransfer" was renamed to "_getDropEffectForTabDrag".
2015-11-04 11:43:54 +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
YUKI Hiroshi
809cc403c6 Clear "last mousedown target" after mouseup event at anywhere 2015-11-02 15:18:23 +09:00
YUKI Hiroshi
ac78634432 Hide the tab bar automatically after a tab is moved by drag-and-drop. 2015-11-02 15:06:44 +09:00
YUKI Hiroshi
b3211b64e2 Output more debug information 2015-11-02 14:43:27 +09:00
YUKI Hiroshi
5111cf446b Don't apply "auto hide" prefs for mismatched mode 2015-11-02 12:00:24 +09:00
Piro / YUKI Hiroshi
8b2af7ce6f Fix misplaced tab bar when I exit from the DOM fullscreen mode (#957) 2015-10-31 00:53:29 +09:00
YUKI Hiroshi
d911e243c6 Open new search result tab as a child of the current tab, when a selection text is dragged and dropped to the searchbar.
This should fix the issue #884
2015-10-30 17:47:14 +09:00
YUKI Hiroshi
ee0937ee43 Get selection text from remote tab for context search.
This partially fixes the problem reported at #884
2015-10-29 12:17:08 +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
42c0bfa407 Indent stack trace 2015-10-26 18:50:27 +09:00
YUKI Hiroshi
c99c259549 Load required module 2015-10-26 16:46:20 +09:00
YUKI Hiroshi
b3b335b5da Load required modules correctly 2015-10-26 16:43:25 +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
Piro / YUKI Hiroshi
f2e07bd5b7 Define constant objects with "var", not "const".
Objects defined with "const" cannot be exported by the method:

    let { SymbolName } = Cu.import("URL", {})

because variables defined with "const" are not stored as a property of the global object, at Firefox 44 and later.
2015-10-10 19:25:00 +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
YUKI Hiroshi
47ee8fe048 Don't update the size of the floating tab bar when any descendant of self-managed elements is modified.
This should conflict with Unified Sidebar. See: #938
2015-10-05 16:58:08 +09:00
Piro / YUKI Hiroshi
dd6a01532d Add credit 2015-09-29 06:18:14 +09:00
Piro / YUKI Hiroshi
01eae840aa Partially revert 04b06ef084
Regression: width of tab bar is wrongly reset on the next startup.
2015-09-29 05:11:12 +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
fe39d5d6f3 Fix mismatched references 2015-09-28 21:42:05 +09:00
YUKI Hiroshi
5913bf1f86 Don't shrink tab bar when a tab is closed or the focus is moved 2015-09-28 21:08:49 +09:00
YUKI Hiroshi
8e47c84fd0 Output more debug print for show/hide of the tab bar 2015-09-28 21:08:33 +09:00
YUKI Hiroshi
3a3d0945c7 Place sound button in tabs before the closebox 2015-09-28 20:33:31 +09:00
YUKI Hiroshi
b607f36586 Update library to fix broken preferences dialog at Firefox 42
See: https://github.com/piroor/treestyletab/issues/944#issuecomment-143146598
2015-09-25 17:24:55 +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
ae050bba76 Output more debug print 2015-09-25 15:26:40 +09:00
YUKI Hiroshi
f42c8c14bd Output attribute old value in the debug print 2015-09-25 15:10:19 +09:00
YUKI Hiroshi
af4c15f08d Report the reason why the tab bar is collapsed/expanded 2015-09-25 14:36:20 +09:00
YUKI Hiroshi
888a858a7d More debug prints 2015-09-25 14:36:01 +09:00
YUKI Hiroshi
cbf0cbd47e Open new dummy tab when a blank bookmark folder is droppend to the tab bar (inspired from #923) 2015-08-31 18:55:54 +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
27efc4311d Update library 2015-07-24 11:14:57 +09:00
J. Ryan Stinnett
008a520efd Replace mozRequestAnimationFrame with requestAnimationFrame. Fixes #915 2015-07-22 10:43:47 -05:00
Piro / YUKI Hiroshi
b6e4abe842 Update library 2015-06-13 00:19:58 +09: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
8df88139d4 Remove obsolete utility 2015-06-13 00:06:54 +09:00
Piro / YUKI Hiroshi
f9aa9d123c Restore/reinit tabbar asynchronously on toolbar customization 2015-06-13 00:06:15 +09:00
Piro / YUKI Hiroshi
48ee58e3a2 Send shutdown event correctly 2015-06-12 23:45:47 +09:00
Piro / YUKI Hiroshi
6bdfafd2f8 Broadcast message for content processes correctly when a window is closed 2015-06-12 23:32:38 +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
d2d68a6437 Avoid errors from elements without box object 2015-03-19 11:32:03 +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
YUKI Hiroshi
445ebbcf35 Update visibility of tab bar by status change of related elements more robustly #848 2015-03-18 11:25:33 +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
Piro / YUKI Hiroshi
d821755f2f Extract implementations about smooth scrolling 2015-03-18 02:39:36 +09:00
YUKI Hiroshi
0cae72fd00 Cancel previous scroll if the new to-be-scrolled tab is in the viewport 2015-03-17 18:57:12 +09:00
YUKI Hiroshi
d41a66603e Scroll to expanded tree more intelligently 2015-03-17 18:29:09 +09:00
YUKI Hiroshi
ec76dd9c04 Remove needless event handler for wheel scrolling on the tab bar 2015-03-17 17:49:39 +09:00
YUKI Hiroshi
f0c012710d Use given duration 2015-03-17 16:06:20 +09:00
YUKI Hiroshi
c97b42abb9 Send re-init message only for remoteness changed tab 2015-03-13 16:56:32 +09:00
YUKI Hiroshi
8705564a98 Restart listening of mouse events after browser remoteness is changed 2015-03-13 16:45:38 +09:00
YUKI Hiroshi
4ad032d55c Listen messages from the content process with single listener for the window, instead of separate listeners for each frame.
If we register listeners for each frame, they don't work after the type of related browser is changed between remote and in-process.
2015-03-13 16:37:02 +09:00
YUKI Hiroshi
64f488575e Don't touch to browser.contentWindow if it is remote 2015-03-13 15:58:40 +09:00
Piro / YUKI Hiroshi
4acdd4104b Show Firefox Hello chat boxes only on the content area (Don't show chat boxes behind tabs) #753 2015-03-06 01:56:44 +09:00
Piro / YUKI Hiroshi
ff9b670d17 Handle mousemove events on the fullscreen toggler #801 2015-03-06 00:42:30 +09:00
Piro / YUKI Hiroshi
7ab47dd15d Apply initial or last auto hide mode for newly opened and restored windows correctly 2015-03-05 23:59:19 +09:00
Piro / YUKI Hiroshi
e0db926068 Manage auto hide mode for each fullscreen window 2015-03-05 23:13:50 +09:00
Piro / YUKI Hiroshi
aa375bea22 Detect opener tab more correctly when multiple tabs are opened at once from a remote tab #812
However, some cases are still not supported:

 * When the new tab has no referrer
 * When any opened tab has an URI same to the opener tab
2015-03-05 02:36:14 +09:00
YUKI Hiroshi
be375327ca Set temporary position after it is completely updated 2015-03-04 10:16:12 +09:00
YUKI Hiroshi
4d99d0e067 Fix indent 2015-03-04 09:51:58 +09:00
YUKI Hiroshi
5b612b9a84 Use <xul:browser>'s mapScreenCoordinatesFromContent only when it exists 2015-03-04 09:51:27 +09:00
YUKI Hiroshi
8cc5be8103 Use <xul:browser>'s mapScreenCoordinatesFromContent() method instead of custom one 2015-03-04 09:47:03 +09:00
Piro / YUKI Hiroshi
f9c865710a Correct mismatched pair of shrunken and expanded width of the tab bar 2015-03-04 02:19:07 +09:00
Piro / YUKI Hiroshi
e80ffd1b11 Save position safely 2015-03-04 01:45:09 +09:00
Piro / YUKI Hiroshi
a6fe5e8fdb Set expanded width of the tab bar correctly 2015-03-04 01:34:24 +09:00
Piro / YUKI Hiroshi
2d8649735e Manage position of the tab bar for each window 2015-03-04 01:22:22 +09:00
Piro / YUKI Hiroshi
ff38e9587c Manage width and height of the tab bar for each window 2015-03-04 00:44:01 +09:00
Piro / YUKI Hiroshi
f608eb1374 Restore message for debugging 2015-03-03 23:12:47 +09:00
Piro / YUKI Hiroshi
95c403efa0 Restore per-window auto hide mode correctly 2015-03-03 23:11:55 +09:00
YUKI Hiroshi
8a1e2f20fa Restore window's auto hide state with delay for safety 2015-03-03 20:49:00 +09:00
YUKI Hiroshi
410ccad473 Make blank line for readability 2015-03-03 20:48:49 +09:00
YUKI Hiroshi
0ab37f5757 Fix wrong references 2015-03-03 20:48:19 +09:00
YUKI Hiroshi
fbc6500262 Don't override autohide state of other windows by last window's state 2015-03-03 20:47:45 +09:00
YUKI Hiroshi
f492f36b4d Apply restored mode only by window service, not browser service 2015-03-03 20:13:35 +09:00
YUKI Hiroshi
7b038dce32 Don't restore initial mode for new window 2015-03-03 20:10:12 +09:00
YUKI Hiroshi
2398b837b0 Add missing ";" on the end of line 2015-03-03 20:10:01 +09:00
YUKI Hiroshi
b0899c5d07 Apply new mode manually 2015-03-03 20:06:14 +09:00
YUKI Hiroshi
480f3c4c6f Observe preference changes about autohide by the module itself 2015-03-03 20:01:03 +09:00
YUKI Hiroshi
3ae3bad1b4 Store last autohide mode after deactivating correctly 2015-03-03 19:53:26 +09:00
YUKI Hiroshi
67fcb13e05 Apply autoHide mode only for the active window 2015-03-03 19:49:34 +09:00
YUKI Hiroshi
af8a061ca1 Store and restore last autohide mode for each window 2015-03-03 19:45:44 +09:00
YUKI Hiroshi
949fab8ae3 Store last mode 2015-03-03 19:22:24 +09:00
YUKI Hiroshi
a829f25bba Extract constant definitions to a shared base object 2015-03-03 19:16:27 +09:00
YUKI Hiroshi
cd46194bb0 Return boolean value for "isXXX" property 2015-03-03 19:10:35 +09:00
YUKI Hiroshi
6802444a23 Save last autohide state as window value 2015-03-03 19:07:52 +09:00
YUKI Hiroshi
b09881797a Allow to store zero and false values 2015-03-03 19:05:53 +09:00
YUKI Hiroshi
253e581173 Add utility methods to manage window values 2015-03-03 19:01:24 +09:00
YUKI Hiroshi
801c28bd1a Simplify 2015-03-03 18:57:21 +09:00
YUKI Hiroshi
767479f9f1 Break line for condition and operation 2015-03-03 18:56:55 +09:00
Piro / YUKI Hiroshi
10c0108f40 Don't use obsolete String#quote().
This fixes the issue #821.
2015-03-01 23:41:39 +09:00
Piro / YUKI Hiroshi
78de7e6b35 Bump copyright year 2015-03-01 23:37:49 +09:00
Piro / YUKI Hiroshi
0afae1c655 Don't try to scroll to the selected tab when it is already in the viewport in its axis.
This fixes annoyingly horizontal scroll happend when ColourfulTabs is activated. #842
2015-03-01 23:35:28 +09:00
Piro / YUKI Hiroshi
54b2c981b1 Fix too deep indent 2015-02-27 00:59:53 +09:00
Piro / YUKI Hiroshi
6352d57858 Remove deprecated JS1.7's let blocks 2015-02-27 00:59:31 +09:00
Piro / YUKI Hiroshi
d5b2d18df2 Add information of the related bug 2014-12-02 03:43:13 +09:00
YUKI Hiroshi
1cf6887ff7 Output more debug-friendly messages for the "autohide" feature 2014-12-01 23:25:48 +09:00
YUKI Hiroshi
02426e5bc0 Detect mouse pointer's position correctly to show/hide the tab bar automatically. 2014-12-01 23:25:16 +09:00
YUKI Hiroshi
66f16dde50 Accept null input by getTabFromFrame().
This suppresses a crash error reported on https://bugzilla.mozilla.org/show_bug.cgi?id=1098688
2014-11-19 12:25:56 +09:00
YUKI Hiroshi
3663519efd Return the current browser immediately if possible 2014-11-19 12:25:39 +09:00
xinkai
249c9b6287 wiew should be view.
This typo causes TST unable to reshow the tabs after FF exiting full-screen mode.
2014-11-16 13:18:14 +08:00
YUKI Hiroshi
18e105a561 Don't make hidden the tab bar by clicking on the grippy to expand the collapsed tab bar. (#783) 2014-11-13 17:24:59 +09:00
Piro / YUKI Hiroshi
3de030ce48 Report errors if TST fails to apply patch to Firefox's functions 2014-11-13 02:13:23 +09:00
YUKI Hiroshi
b82f087f87 Don't clear existing tab relation, if the relation is restored and going to be cleared on same TabMove event 2014-11-12 12:46:26 +09:00
YUKI Hiroshi
b4bba86e30 Don't restore same tab multiple times 2014-11-12 12:39:06 +09:00
YUKI Hiroshi
1d988c6b3f Fix typo 2014-11-12 11:43:08 +09:00
Piro / YUKI Hiroshi
2e6c885ba3 Restore closed tabs at once correctly, even if e10s is activated. 2014-11-12 03:58:09 +09:00
YUKI Hiroshi
35d3cff449 Reduce arguments of setTimeout 2014-11-11 21:21:41 +09:00
YUKI Hiroshi
e43dd394c4 Report internal error while restoring tree 2014-11-11 21:21:27 +09:00
YUKI Hiroshi
09112ca600 Update library 2014-11-11 19:56:58 +09:00
YUKI Hiroshi
933d71a1f6 Specify missing "this" correctly 2014-11-11 19:39:22 +09:00
YUKI Hiroshi
8d2dc51963 Add missing module 2014-11-11 19:27:53 +09:00
YUKI Hiroshi
1cfa12c5bc Update pseudo tree of tabs in e10s mode 2014-11-11 19:26:14 +09:00
YUKI Hiroshi
97a87d0b1a Remove obsolete "stopRendering" module 2014-11-11 18:58:31 +09:00
YUKI Hiroshi
53e805b4d9 Remove obsolete comment 2014-11-11 18:51:28 +09:00
YUKI Hiroshi
901542a526 Update comment for future versions without nsIPopupBoxObject 2014-11-11 18:47:58 +09:00
YUKI Hiroshi
06c89a80c2 Check existence of plugin area in the current tab asynchronously with e10s 2014-11-11 18:42:30 +09:00
YUKI Hiroshi
2d098719dc Don't hide/collapse tab bar while tab switching 2014-11-11 18:15:28 +09:00
YUKI Hiroshi
ca21663eb5 Ignore attribute-changes without changing of visual size of UI elements 2014-11-11 18:09:27 +09:00
YUKI Hiroshi
02bcfe5d8b Handle mouse events for auto hide feature by a frame script, for e10s 2014-11-11 17:45:12 +09:00
YUKI Hiroshi
ee8918e460 Merge branch 'master' of github.com:piroor/treestyletab 2014-10-30 12:27:26 +09:00
YUKI Hiroshi
e5171ea638 Fix mismatched variable name 2014-10-30 12:26:41 +09:00
Piro / YUKI Hiroshi
9c2a175e6a Find <tabbrowser> from <browser> correctly 2014-10-30 06:20:44 +09:00
YUKI Hiroshi
86b46c04cd Add a note for safely "contentWindow" access 2014-10-29 20:44:01 +09:00
YUKI Hiroshi
12cdd76f7e Detect targets for API calls about tab relations based on "browser" element, instead of "Window" objects 2014-10-29 20:36:12 +09:00
YUKI Hiroshi
e48cf4e38b Uniform coding style 2014-10-22 13:37:08 +09:00
Matthew Noorenberghe
4ea8f31301 Fix scrolling of tabs on Firefox 36 2014-10-21 18:23:17 -07:00
Piro / YUKI Hiroshi
9be3c3493d Flatten deeply nested "setTimeout()" 2014-10-22 03:00:12 +09:00
Piro / YUKI Hiroshi
e0a7e43b3c Flatten deeply nested "setTimeout()" 2014-10-22 02:57:45 +09:00
Piro / YUKI Hiroshi
f89d42db14 Free symbol after all accesses 2014-10-22 02:36:38 +09:00
Piro / YUKI Hiroshi
fe26d207ca Migrate from JSDeferred to ES6 Promise (Promise.jsm) 2014-10-22 02:28:19 +09:00
YUKI Hiroshi
4f43006773 Use latest JSDeferred (based on Official) 2014-10-21 21:44:13 +09:00
YUKI Hiroshi
b0b2305bd7 Output index of the "to be restored" tabs for debugging 2014-10-16 18:00:55 +09:00
YUKI Hiroshi
397894d678 Don't mark tab to be restored, if it is already restored 2014-10-16 18:00:37 +09:00
Piro / YUKI Hiroshi
e62cd87bff Open new tabs from target="_blank" links as children of the current tab, when e10s is enabled. 2014-10-02 02:51:43 +09:00
Piro / YUKI Hiroshi
72ae666e12 Restore ancestor relation of tabs even if it is restored by "undo close tab" 2014-10-02 02:10:10 +09:00
Piro / YUKI Hiroshi
35aab258b8 Update the "to be restored" state only once.
Don't update the state again and again, because the tab is unexpectedly "restored" twice after I do "undo close tab"...
2014-10-02 00:57:17 +09:00
Piro / YUKI Hiroshi
db487f32bb Detect DOM instances by constructor function instead of XPCOM interface 2014-10-01 01:32:27 +09:00
Piro / YUKI Hiroshi
fc7f336c69 Detect window safely 2014-10-01 00:27:30 +09:00
Piro / YUKI Hiroshi
20e58a5b0b Update library 2014-10-01 00:23:08 +09:00
YUKI Hiroshi
09f43c8f84 Use LF instead of CRLF 2014-09-30 20:09:27 +09:00
YUKI Hiroshi
db4d2bac2c Update cached "toBeRestored" state for TSTWindow#restoringTree and others 2014-09-30 17:06:49 +09:00
YUKI Hiroshi
b7389dd744 Remove duplicated check ror to-be-restored tab 2014-09-30 16:46:33 +09:00
YUKI Hiroshi
e3c589406d Output message for debugging around unexpected new child tab 2014-09-30 15:13:10 +09:00
YUKI Hiroshi
af6e5d0ba7 Don't open new tab from Ctrl-T as a new tab from content link 2014-09-30 15:12:29 +09:00
YUKI Hiroshi
a9f1f8a86d Fix mismatched function name 2014-09-30 15:01:44 +09:00
YUKI Hiroshi
8fc1998fd4 Stringify saved value.
This is required to bypass type check introduced by https://bugzilla.mozilla.org/show_bug.cgi?id=908440
2014-09-30 14:31:08 +09:00
John Schoenick
0cc0714723 Fix click hook for nesting new tabs in e10s mode 2014-08-27 16:17:00 -07:00
John Schoenick
b64986b292 Workaround for bug 1042680 issue #3 in e10s mode 2014-08-27 16:16:41 -07:00
Piro / YUKI Hiroshi
503803c076 Drop support for Firefox 30 or older versions.
Because Firefox 31 becomes new ESR.
2014-07-27 02:44:23 +09:00
Piro / YUKI Hiroshi
fffcd3172f Fix typo 2014-07-03 02:06:10 +09:00
Piro / YUKI Hiroshi
579d926537 Get actual stored tab id correctly (#676) 2014-07-02 23:32:08 +09:00
Piro / YUKI Hiroshi
511a51dd7e Restore tab position for "Undo Close Tab" command correctly on Firefox 29 and newer versions (#676) 2014-07-02 23:02:53 +09:00
Piro / YUKI Hiroshi
66eb630cdf Revert "Read value of custom attributes of tabs via TSTBase.getTabAttribute() safely."
This reverts commit f4fb6174d2.

This change breaks other features...
2014-07-02 04:44:43 +09:00
Piro / YUKI Hiroshi
ca776a606f Get new position safely 2014-07-02 04:44:02 +09:00
Piro / YUKI Hiroshi
f4fb6174d2 Read value of custom attributes of tabs via TSTBase.getTabAttribute() safely.
Tab's ID and other attributes saved via setTabValue is not available before the tab is completely restored.
As the result, TST sometimes fail to restore tab positions. (See: #676)
This issue doesn't happen on Firefox 24ESR, because recent Firefox (29 and later) uses message manager to restore tabs and it causes such "delay" of initializations about custom attributes.
2014-07-02 04:29:49 +09:00
Piro / YUKI Hiroshi
b386b85bd3 Make the meaning of "tabsToRestore" clear 2014-07-02 02:27:26 +09:00
YUKI Hiroshi
9e32fbe386 Update tabbar appearance correctly, after toolbar customiation (fix #728) 2014-05-19 19:25:38 +09:00
Piro / YUKI Hiroshi
8ba98a1059 Reduce use of mutation observers 2014-05-11 15:55:20 +09:00
Piro / YUKI Hiroshi
0df14f3989 Use "attributeFilter" for mutation observers 2014-05-11 15:41:43 +09:00
Piro / YUKI Hiroshi
5e777a6838 Don't hide the toolbox in the full screen mode, if "browser.fullscreen.autohide" is "false" 2014-05-11 04:51:07 +09:00
Infocatcher
aea4d110ec Fix typo: 'Transition' -> 'transition'
We still have 'MozTransition' in latest Firefox 32.0a1, so all should have working fine
2014-05-05 17:23:45 +04:00
Piro / YUKI Hiroshi
22a635e8d9 Allow "tabs in titlebar" if Tabs On Bottom addon is installed 2014-05-05 17:46:29 +09:00
YUKI Hiroshi
9436957452 Don't update the size of the floating tab bar by "resize" event from another floating box.
This the compatibility issue with Unified Sidebar.
See: https://github.com/piroor/unifiedsidebar/issues/3
2014-05-01 15:44:06 +09:00
Piro / YUKI Hiroshi
e8826a01bd Follow to changes introduced by https://bugzilla.mozilla.org/show_bug.cgi?id=989984 2014-05-01 00:47:14 +09:00
YUKI Hiroshi
f2dc08bc43 Fix wrong version numbers of Firefox 2014-04-17 20:05:05 +09:00
YUKI "Piro" Hiroshi
a92de60fd8 Clear wrong relation of duplicated tabs (#605) 2014-04-16 18:58:30 +09:00
YUKI "Piro" Hiroshi
6681a7cd44 Revert "Ignore already cleared redirection table (#605)"
This reverts commit bf576cfb75.
2014-04-16 18:47:11 +09:00
YUKI "Piro" Hiroshi
bf576cfb75 Ignore already cleared redirection table (#605) 2014-04-16 18:45:53 +09:00
YUKI "Piro" Hiroshi
97a06e85db Don't clear tab relations for correctly duplicated tabs (#605) 2014-04-16 18:41:46 +09:00
YUKI "Piro" Hiroshi
ed6fafb2ec Cleanup needless (wrong) tab relations correctly (#605) 2014-04-16 18:23:59 +09:00
YUKI "Piro" Hiroshi
66734bbfaf Ignore already removed tabs 2014-04-16 17:43:03 +09:00
YUKI "Piro" Hiroshi
b94b562446 Specify given tab correctly 2014-04-16 17:42:31 +09:00
YUKI "Piro" Hiroshi
7976852515 Fix missing ")" 2014-04-16 17:39:47 +09:00
YUKI "Piro" Hiroshi
5fccd33645 Clear tab relations based on redirected IDs, if they never been "restored" (#605) 2014-04-16 17:34:39 +09:00
YUKI "Piro" Hiroshi
6e3d43d24b Add "with delay" suffix 2014-04-16 17:19:17 +09:00
YUKI Hiroshi
32feaa2d8c Fix missing message for closing multiple tabs correctly 2014-04-14 14:37:57 +09:00
YUKI Hiroshi
e7ac5542e5 Fix typo 2014-04-14 14:31:35 +09:00
YUKI Hiroshi
c2d37f721f Show a confirmation dialog for browser.tabs.warnOnClose correctly on Firefox 29 and later 2014-04-14 14:29:11 +09:00
Piro / YUKI Hiroshi
d72978a364 Fix memory leak
See: https://github.com/piroor/fxaddonlib-inherit/issues/1
2014-04-05 03:15:24 +09:00
YUKI Hiroshi
d29444fa07 Update library 2014-04-03 12:21:16 +09:00
YUKI Hiroshi
626649c00c Update library 2014-04-02 19:38:32 +09:00
YUKI Hiroshi
fd6c08937a Use Object.create to create subclasses 2014-04-02 19:25:51 +09:00
Piro / YUKI Hiroshi
84640a12ca Allow "tabs in titlebar" feature if Classic Theme Restorer is installed (#674)
https://addons.mozilla.org/firefox/addon/classicthemerestorer/
2014-04-02 03:43:42 +09:00
YUKI Hiroshi
482bab417b Use String#trim() instead of String#replace() 2014-03-31 15:10:51 +09:00
YUKI Hiroshi
a112fffe09 Change line breaks 2014-03-31 14:56:44 +09:00
YUKI Hiroshi
e7051b8856 Name to function 2014-03-31 14:54:56 +09:00
YUKI Hiroshi
29982f0522 Skip dirty hack on Firefox 29 and later 2014-03-31 14:54:39 +09:00
YUKI Hiroshi
0a0a4003b5 Restore tree structure on the startup correctly, with Firefox 29 and later 2014-03-31 14:54:14 +09:00
YUKI Hiroshi
f58cd7a994 Restore tree structure on the startup correctly, with Firefox 28 2014-03-31 14:52:44 +09:00
Piro / YUKI Hiroshi
30d4bc82e5 Reduce indent 2014-03-29 02:19:06 +09:00
Piro / YUKI Hiroshi
2c603b7558 Don't do forEach loop twice 2014-03-29 02:18:44 +09:00
YUKI Hiroshi
4f80fb7f97 Update copyright year 2014-03-24 18:29:46 +09:00
YUKI Hiroshi
852177b49e Merge branch 'master' of github.com:piroor/treestyletab 2014-03-24 18:29:32 +09:00
YUKI Hiroshi
7bdd9eed23 Open new tabs from "search by" in the context menu correctly, even if the selection includes line breaks or the selection is too long. (fix #671) 2014-03-24 18:27:45 +09:00
Piro / YUKI Hiroshi
84d4cb2002 Update copyright year 2014-03-12 22:27:35 +09:00
Piro / YUKI Hiroshi
5f3cddcf24 Fix syntax error 2014-03-12 22:27:20 +09:00
YUKI Hiroshi
5e7dc7684a Initialize CustomEvent correctly 2014-03-12 11:34:42 +09:00
Piro / YUKI Hiroshi
8b3792b312 Use CustomEvent instead of DataContainerEvent.
DataContainerEvent is going to be deprecated.
See: https://bugzilla.mozilla.org/show_bug.cgi?id=980134
2014-03-12 01:50:40 +09:00
YUKI Hiroshi
9a69cb5d1a Split prefs correctly 2014-03-11 11:51:32 +09:00
YUKI Hiroshi
9d1d964f74 Split preference fo different purpose 2014-03-11 11:09:28 +09:00
Piro / YUKI Hiroshi
67aa67a67f Detect number of "not restored yet" tabs on Firefox 29 and later correctly 2014-02-09 01:38:55 +09:00
Piro / YUKI Hiroshi
8a2989c03e Don't start dragging operation of the tab bar itself from a button which have its own popup menu (#656) 2014-02-09 01:06:35 +09:00
Piro / YUKI Hiroshi
905100500f Accept drag and drop of the tab bar itself, on the blank area around pinned tabs 2014-02-09 01:00:04 +09:00
Piro / YUKI Hiroshi
c68d85c617 Collapse the tab bar expanded by long-press of the Ctrl key automatically, when a new window is opened (#654) 2014-02-07 00:40:23 +09:00
YUKI Hiroshi
bf84e78673 Scroll to the current tab always, after the tab bar is shown (in auto-hide mode) (#653) 2014-02-06 18:53:58 +09:00
YUKI Hiroshi
617771c1c1 Restore scroll position of the tab bar in "auto hide" mode (#653) 2014-02-06 17:49:47 +09:00
YUKI Hiroshi
65f1c79acc Don't set negative margin to the navigator toolbox in the fullscreen mode, on OS X Lion (#645) 2014-02-03 18:05:54 +09:00
YUKI Hiroshi
439697f462 Don't reset scroll position while the tab bar is invisible (#646) 2014-02-03 17:14:56 +09:00
YUKI Hiroshi
b3382623dd Detect visibility of the tab bar more robustly 2014-02-03 17:14:38 +09:00
YUKI Hiroshi
081c0dd34b Disable "draw in titlebar" feature for non-popup windows 2014-01-31 22:02:33 +09:00
YUKI Hiroshi
c91ffcac54 Remove codes for outdated versions of Firefox 2014-01-30 12:36:36 +09:00
Piro / YUKI Hiroshi
658a48a4f8 Open bookmark folder as a tree correctly, even if the user don't want to open a dummy grouping tab. 2014-01-29 02:27:35 +09:00
Piro / YUKI Hiroshi
c82e735bb0 Better compatibility with [Tab Control](https://addons.mozilla.org/firefox/addon/tab-control) #636 2014-01-29 01:53:58 +09:00
Piro / YUKI Hiroshi
7f3fdb1ab1 Remove codes for "replace current one tab".
Because it was removed on Firefox 8. These codes are already expired.
2014-01-29 01:35:13 +09:00
Piro / YUKI Hiroshi
8596d9dec1 Fix broken show/hide API #392 2014-01-25 00:00:44 +09:00
Piro / YUKI Hiroshi
9494634235 Better compatibility with Nav Bar on Title Bar addon #620
https://addons.mozilla.org/firefox/addon/nav-bar-on-title-bar/
2013-12-06 18:10:54 +09:00
Piro / YUKI Hiroshi
6e039a7a99 Remove code to call obsolete method 2013-12-06 18:04:49 +09:00
Piro / YUKI Hiroshi
70662a4593 Fix syntax error 2013-12-01 01:17:34 +09:00
Piro / YUKI Hiroshi
951816d187 Don't call onSizemodeChange on the initialization process, if it is not fullscreen 2013-12-01 01:15:34 +09:00
Piro / YUKI Hiroshi
5587ca68c6 Handle sizemode change by MutationObserver 2013-12-01 01:09:05 +09:00