Commit Graph

205 Commits

Author SHA1 Message Date
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
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
983edcb17a Simply use Timer.jsm 2015-11-05 16:43:59 +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
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
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
04b06ef084 Apply new pref value only for the topmost browser window smartly 2015-09-29 03:45:10 +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
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
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
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
480f3c4c6f Observe preference changes about autohide by the module itself 2015-03-03 20:01:03 +09:00
YUKI Hiroshi
af8a061ca1 Store and restore last autohide mode for each window 2015-03-03 19:45:44 +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
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
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
YUKI Hiroshi
97a87d0b1a Remove obsolete "stopRendering" module 2014-11-11 18:58:31 +09:00
Piro / YUKI Hiroshi
fe26d207ca Migrate from JSDeferred to ES6 Promise (Promise.jsm) 2014-10-22 02:28:19 +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
db487f32bb Detect DOM instances by constructor function instead of XPCOM interface 2014-10-01 01:32:27 +09:00
YUKI Hiroshi
09f43c8f84 Use LF instead of CRLF 2014-09-30 20:09:27 +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
John Schoenick
0cc0714723 Fix click hook for nesting new tabs in e10s mode 2014-08-27 16:17:00 -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
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
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
22a635e8d9 Allow "tabs in titlebar" if Tabs On Bottom addon is installed 2014-05-05 17:46:29 +09:00
YUKI Hiroshi
f2dc08bc43 Fix wrong version numbers of Firefox 2014-04-17 20:05:05 +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
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
0a0a4003b5 Restore tree structure on the startup correctly, with Firefox 29 and later 2014-03-31 14:54:14 +09:00
YUKI Hiroshi
4f80fb7f97 Update copyright year 2014-03-24 18:29:46 +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
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
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
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
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
5587ca68c6 Handle sizemode change by MutationObserver 2013-12-01 01:09:05 +09:00
Piro / YUKI Hiroshi
fcd1b04aa2 Remove legacy codes before "beforecustomization" and "aftercustomization" are landed 2013-11-29 01:43:43 +09:00
Piro / YUKI Hiroshi
a431551eed Remove codes for "tabs in titlebar" #611 2013-11-29 01:22:18 +09:00
Piro / YUKI Hiroshi
fa7ae93db0 Disallow "tabs in titlebar" when the tab bar is not shown on the top (for Australis) 2013-11-28 05:02:39 +09:00
Piro / YUKI Hiroshi
6fb5b1a0e3 Activate "tabs in titlebar" mode only when the menubar is hidden 2013-11-21 00:01:39 +09:00
Piro / YUKI Hiroshi
0f82638570 Draw navigation bar in the titlebar for Australis on Windows 2013-11-20 23:38:12 +09:00
Piro / YUKI Hiroshi
1b4eb1cd8a Disable "TabsInTitlebar" if tabs are not on the top 2013-11-19 23:23:25 +09:00
Infocatcher
ff9023012f Correctly update "list all tabs" menu if there is pinned tabs + simplify 2013-11-18 12:15:14 +04:00
Piro / YUKI Hiroshi
461a8aca98 Update credit 2013-11-10 04:28:07 +09:00
Tetsuharu OHZEKI
ee1eec680d Use ES6 Rest parameters. 2013-11-10 04:15:23 +09:00
Tetsuharu OHZEKI
5991114c47 Use Services.focus. 2013-11-06 22:11:15 +09:00
Piro / YUKI Hiroshi
4004ec6f64 Update floating tab bar when UI element is inserted/removed from the browser box (#546) 2013-10-09 01:30:52 +09:00
Piro / YUKI Hiroshi
e58a7b9987 Don't shrink/hide the tab bar for keyboard shortcuts Ctrl-T, Ctrl-R, etc. 2013-10-09 00:13:29 +09:00
YUKI Hiroshi
a641d748c7 Allow users to create new subtree from partially selected tree of tabs (#553) 2013-09-18 12:10:15 +09:00
YUKI Hiroshi
f0e71741a1 Break lines after condition block of "if" statements 2013-09-17 18:17:20 +09:00
YUKI Hiroshi
bbe6b79024 Update tab bar position for "disablechrome" attribute of the root element 2013-09-13 19:37:21 +09:00
YUKI Hiroshi
23b1a043ef Add customizability for newly opened temporary groups (#537) 2013-08-21 17:34:07 +09:00
YUKI Hiroshi
c22c03186f Open temporary group tabs with "temporary=true" parameter 2013-08-21 13:35:26 +09:00
YUKI Hiroshi
c03ad9eaff Detect new tabs opened from content scripts correctly (#517, #510) 2013-07-02 19:47:41 +09:00
Piro / YUKI Hiroshi
2f2004b8e0 Don't open new window/tabs as children of the current tab, when the opener is not a subframe of the current tab (#510) 2013-05-11 01:55:41 +09:00
Piro / YUKI Hiroshi
cc72b2ebfc Rename generic method to open new related tab with specified behavior
handleNewTabCommand =>
readyToOpenRelatedTabAs
2013-03-06 02:54:04 +09:00
Piro / YUKI Hiroshi
f8b994eb26 Define handleNewTabFromCurrent and handleNewTabCommand as methods of both TSTWindow and TSTBrowser (for future changes to open related tab from the current tab from TSTBrowser) 2013-03-06 02:40:18 +09:00
Piro / YUKI Hiroshi
5954e76c02 Add new secret option "extensions.treestyletab.autoAttach.fromCurrent" to control new tab position from the current tab (#452) 2013-03-06 02:37:21 +09:00
Piro / YUKI Hiroshi
7e03fef929 Observe changes of UI shown/hidden not only the browser bottom box but also the toolbox (for #470) 2013-03-02 22:12:28 +09:00
Piro / YUKI Hiroshi
adbebdef7e Reduce use of arguments.callee because it doesn't work on the strict mode 2013-03-02 21:29:41 +09:00
Piro / YUKI Hiroshi
a1dd914a09 TreeStyleTabBase should not inherit "prefs" (part 2) 2013-01-06 11:56:20 +09:00
Piro / YUKI Hiroshi
72d38659d8 TreeStyleTabBase should not inherit "prefs" 2013-01-06 11:47:50 +09:00
YUKI "Piro" Hiroshi
f914c5cc72 Merge pull request #435 from saneyuki/string
Move string bundles to TreeStyleTabUtils
2013-01-03 08:24:27 -08:00
saneyuki_s
a7fc238e4e Move string bundles to TreeStyleTabUtils. 2013-01-03 11:08:25 +09:00
saneyuki_s
b4ee0ed4ff Split restoring some prefs which are handled in modules/base.js. 2013-01-03 10:04:09 +09:00
saneyuki_s
e32cb52068 Merge branch 'uninstall' into pref2
Conflicts:
	modules/window.js
2013-01-03 10:01:03 +09:00
saneyuki_s
ab170f086c Fix to fail loading module. 2013-01-03 09:59:43 +09:00
saneyuki_s
9cc3f04f14 Load UninstallationListener.js as JS code modules. 2013-01-03 09:56:57 +09:00
saneyuki_s
d2ee91b604 Use Function.bind() instead of 'self'. 2013-01-03 09:07:55 +09:00
saneyuki_s
cec873a303 Define 'prefs' as lazy getter in modules/window.js 2013-01-03 09:06:21 +09:00
saneyuki_s
5042651b81 Restore the backuped user pref when this addon is disabled or removed. 2013-01-02 04:46:26 +09:00
saneyuki_s
92d98ba51b Fix typo. 2013-01-02 04:46:26 +09:00
Piro / YUKI Hiroshi
175286eba2 Update codes for MutationObserver.
XPIDL style callback is no longer supported, so we have to use callback function based on Web IDL.
See: https://bugzilla.mozilla.org/show_bug.cgi?id=790978 and https://developer.mozilla.org/en-US/docs/DOM/MutationObserver)
2012-12-20 04:03:05 +09:00
YUKI Hiroshi
5718fef495 Collapse/hide the tab bar automatically even if the webpage includes any plugin area
Logic A) Tab bar autohide is intentionally blocked by opened popup because the tab bar should not be hidden while you open a context menu on the tab bar.
Logic B) On the other hand, TST shows hidden popup on the content area if the webpage includes any plugin area, because Firefox cannot receive mousemove events on plugin areas.
As the result, the hidden popup unexpectedly blocked to hide the tab bar... The popup for the logic B must be ignored by the logic A.
2012-12-05 11:35:37 +09:00
Piro / YUKI Hiroshi
450fa34790 Simplify codes to load modules lazily 2012-11-11 22:48:42 +09:00
Piro / YUKI Hiroshi
66e2e268f5 .utils => .base 2012-10-30 03:11:39 +09:00
YUKI Hiroshi
c0e9280444 Shorten "TSTUtils" to "utils" (because they are already in the context) 2012-10-24 01:43:56 +09:00
saneyuki_s
3e658380c9 Move some pref methods from TSTBase to TSTUtils. 2012-10-19 23:20:08 +09:00
Piro / YUKI Hiroshi
9182259ab5 Update credit 2012-10-14 03:31:06 +09:00
saneyuki_s
f4340866c0 Rename the file name to modules/base.js from modules/utils.js . 2012-09-27 15:46:51 +09:00
saneyuki_s
f27cfc745a Rename to 'TreeStyleTabBase' from 'TreeStyleTabUtils'. 2012-09-27 15:40:14 +09:00