Commit Graph

1145 Commits

Author SHA1 Message Date
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