Commit Graph

136 Commits

Author SHA1 Message Date
Ian Gilman
b35293d149 + fixed scoping issue that caused all tabs dropped in any group to return to a single group
+ fixed a bug causing tabs in the "new tabs" group to be huge
2010-06-16 16:30:48 -07:00
Michael Yoshitaka Erlewine
92ff278dcd moved to tracking trenches by id; better trench cleanup and garbage collection; refactored a bit to make things faster? but with questionable results 2010-06-16 00:08:39 -04:00
Michael Yoshitaka Erlewine
5b061bfccc new tab group should not project trenches 2010-06-15 22:27:03 -04:00
Ian Gilman
b2cdae5bb4 + merge 2010-06-15 16:52:30 -07:00
Ian Gilman
2b75e3834d + merge 2010-06-15 16:33:58 -07:00
Michael Yoshitaka Erlewine
ea88675f6d tabs now also project trenches; unregistering trenches on group/tab close; allow proportional resizing while snapping; preferLeft and preferTop flags for which edges to preferentially snap to 2010-06-15 19:08:21 -04:00
Ian Gilman
9e9765eb7a + Cleaned up TabItem bounds getting and setting (the translation between our coordinates and the div style needs to be done carefully, in particular due to the padding in the tab style), and added a unit test for it 2010-06-15 15:55:47 -07:00
Michael Yoshitaka Erlewine
bc4b8a9b47 snapping for tabs as well as groups 2010-06-15 17:45:49 -04:00
Michael Yoshitaka Erlewine
55567c549e refactoring dragOptions, dropOptions 2010-06-15 17:38:55 -04:00
Michael Yoshitaka Erlewine
ac1bf91ea4 quick refactoring 2010-06-15 15:26:35 -04:00
Ian Gilman
829b04df63 + mitcho's first pass at group snapping 2010-06-15 11:53:53 -07:00
Ian Gilman
68fc1810a9 + closing a named group with tabs in it now works correctly
+ changed zoom out easing back to "cubic-bezier"
2010-06-14 17:23:17 -07:00
Ian Gilman
f4b6400f47 + Hitting the "new tab" button in a group no longer first takes you to the active tab in that group
+ Fixed a couple of "null tab" errors when calling storage.js
+ Fixed a couple of zooming issues related to closing tabs while you're in them
2010-06-14 16:56:27 -07:00
Ian Gilman
01c7b6ebd7 + Refactored zoom code into TabItem (was in TabItems and Page)
+ The "zoom prep", where the div is resized behind the scenes, is now much more robust; items can be rearranged while in this state (in response to new tabs opening, for instance), and everything still works out.
+ Group._activeTab is now a TabItem rather than a DOM element
+ Most of the old "mod" routine is now in the TabItem constructor; "mod" no longer exists
2010-06-14 15:43:02 -07:00
Ian Gilman
6f969130e3 + documentation 2010-06-11 15:08:14 -07:00
Ian Gilman
b4127e8668 + Added iQ.timeout, which wraps setTimeout in try/catch. Everything uses this now 2010-06-10 12:04:39 -07:00
Ian Gilman
7877491a9e + We are entirely jQuery-free in revision-a!
+ You can now drop tabs on tabs
+ Resize works once again, but with iQ
2010-06-09 14:45:48 -07:00
Ian Gilman
2bc532a9c7 + All dragging is now done with iQ
+ You can drop tabs onto groups (but no tabs on tabs yet)
+ Disabled resize for now
+ Fixed a bug with groups looking like they were deleted but not really being
2010-06-08 17:13:19 -07:00
Ian Gilman
c56484e154 + All event handlers sent into iQ.fn.bind and its aliases are now automatically wrapped in a try/catch (the catch simply does a Utils.log with the error)
+ Fixed a couple of issues found with the new event try/catch
+ Converted Group.newTab over to iQ (was the last jQuery bit besides drag/drop/resize)
2010-06-07 17:20:15 -07:00
Ian Gilman
ecb79eec3f + We're no longer using a style sheet for our CSS transitions (doing it directly in JavaScript instead)
+ Changed the iQ.fn.animate call signature: it now takes two arguments, a CSS object and an options object (with possible parameters: duration, easing and complete)
+ iQ.fn.animate now reliably calls back the completion routine (this was causing all sorts of trouble)
+ Reenabled TabMirror.pausePainting
+ Added animate.html, a test bed for playing with CSS transitions
2010-06-07 16:16:55 -07:00
Ian Gilman
12c5d78226 + Temporarily added a bunch of logging for debugging purposes (commented out)
+ Fixed a bug with iQ.fn.one that caused it to not properly set "this"
+ Temporarily disabled TabMirror.pausePainting, which is causing problems at the moment (will fix soon)
2010-06-04 16:39:33 -07:00
Ian Gilman
10209deaae + groups.js is now jQuery-free except for drag/drop/resize and the newTab routine
+ Added blur and focus event handlers to iQ
+ iQ.fn.data() now supports multi-objects
+ iQ.fn.fadeOut() now accepts a callback
2010-06-04 15:08:24 -07:00
Aza Raskin
12f40b0c32 + Decreased the size at which groups stack
+ Fixed a bug whereby clicking on a title zoomed into the group
2010-06-02 12:29:13 -07:00
Aza Raskin
43f1ee57fd + Fixed a bug in iQ where CSS of type -moz-transform wasn't getting set.
+ Made stacks a bit prettier.
2010-05-27 19:17:01 -07:00
Ian Gilman
82431d4482 + merge 2010-05-27 17:25:41 -07:00
Ian Gilman
a84d9a920d + Items.js is now jQuery-free
+ Just a little refactor for the "reset" code (also removed from the dev menu)
+ Started on event handling for iQ
2010-05-27 17:25:14 -07:00
Aza Raskin
c08f78f95a + Fixed a bug where rescaling a group would cause a zoom-in to a tab. 2010-05-27 16:36:13 -07:00
Aza Raskin
1b2556cab5 + Fixed [B] Clicking on the new tab button in the new tab group causes a zoom to a tab. Clicking anywhere does the same. It shouldn't. 2010-05-27 01:31:54 -07:00
Ian Gilman
0de196a683 + merge 2010-05-26 11:29:46 -07:00
Ian Gilman
355afa4ce6 + Cleaned out old dev mode; everything's moved to the dev menu
+ Got rid of old dev mode grid feature; the dev menu's reset fills that bill
+ Cleaned up the "group sites" feature and added it to the dev menu
2010-05-26 11:29:31 -07:00
Aza Raskin
cbdfc9c868 + Groups now track their last-focused tab. When you click on the group, it brings you back to the group with the appropriate tab focused. 2010-05-25 19:18:25 -07:00
Aza Raskin
bbaae577d9 + Fixed [B] Drag a group (full of tabs) off the top of the window. Then drag the group back. All of the tabs are gone! Now resize the group. They come back. Even better; don't let groups be dragged out of the window bounds! 2010-05-25 19:00:46 -07:00
Ian Gilman
978c93c328 + Started iQ, replacement for jQuery
+ Converted Utils.js to use iQ instead of jQuery
+ Removed the use of Firebug lite
+ Removed reference to jQuery.lint
2010-05-25 17:04:59 -07:00
Ian Gilman
23e5989b43 + The first time you run TabCandy, it lays all of the tabs out in a grid (just like it used to; reinstating this feature)
+ Minor refactor for new tab button to make it more DRY
2010-05-25 11:08:50 -07:00
Aza Raskin
6d547ef19e + New visual styling for the new tab group. So very very pretty. 2010-05-25 01:20:44 -07:00
Ian Gilman
e6e06b991a + New "new tabs" group behavior and position
+ New "new tab" button position for the  "new tabs" group
+ Misc bug fixes
2010-05-24 17:14:10 -07:00
Ian Gilman
9a28d8cd19 + Lots of cleanup after the sessionstore transplant
+ Now saving pageBounds.
+ Removed some unnecessary save calls and added some necessary ones
+ Added a reset command to the dev menu; wipes storage and refreshes
+ Fixed the save command on the dev menu so it now works again
+ Reconnected storage sanity checks
+ Removed a bunch of now unused storage code
+ Fixed a problem with cold start
+ Removed a bunch of logging code
+ Pulled BrowserWatcher out of tabs.js
+ Added a direct link to the code documentation to the dev menu
2010-05-24 14:49:03 -07:00
Aza Raskin
ef5e9ae2d5 + Fixed a bug wherein when dragging out a new group, you couldn't reduce it's size
+ When clicking on a stacked group, you go directly into that group. Use command-click to open it up in the shield.
2010-05-23 23:42:18 -07:00
Aza Raskin
31d0e32252 + Better indication of groups as drop targets
+ Using the new-tab buttons no longer cause a jarring shift due to window chrome appearing.
2010-05-22 11:42:23 -07:00
Ian Gilman
7cf963665c + Applied Ehsan's sessionstore patch
+ Various related fixes
+ Added Utils.log2, which logs directly to the window
2010-05-21 15:44:15 -07:00
Ian Gilman
409610bcf3 + Feature: When returning from a tab that is in a stack, arrange it at the top of the stack (but don't change its order in the children list)
+ TabItems now keeps track of all TabItem objects manually; we were using $('.tab:visible'), but this was causing bizarre behavior in certain cases
2010-05-18 17:08:45 -07:00
Ian Gilman
1b96351cab + You must now drag a tab a minimum distance to collapse the tray and remove the tab from the group 2010-05-18 12:03:44 -07:00
Ian Gilman
1fbcbd3755 + fixed a bug causing you to have to hit the close box twice on a group to close it (once to close all of its tabs, a second time to close the group)
+ built new xpi
+ tagged as 3.0.rc2
2010-05-17 16:04:36 -07:00
Ian Gilman
354fe9c5e5 + merge 2010-05-17 13:30:16 -07:00
Ian Gilman
4d53e42a3e + fixed potential issue with Aza's recent change to Group.remove
+ Removed erroneous and evidently unnecessary reference to the acceptsDrop class in DragInfo.stop
+ Fixed my last name in install.rdf
2010-05-17 13:29:39 -07:00
Aza Raskin
63f2d4aea1 + Backed out my snap code. 2010-05-17 16:20:51 -04:00
Aza Raskin
8cbbf5df4f + First pass at a snap-to functionality for groups
- The jQuery UI's draggable snap-to just wasn't specific enough for our use case
+ TODO: Need to add the snap ability to resizing groups
2010-05-16 11:30:45 -07:00
Aza Raskin
4a63b3d873 + Fixed the following bug: If there's one tab in a group and you drag it out, the group will go away right away. If you drag back over it while it's fading out, you can get the red glow stuck on. At any rate, probably shouldn't delete the group until you've dropped the tab. 2010-05-15 16:53:55 -07:00
Aza Raskin
6b2303e4cd + Updated the hover-state for dropping a tab into a group: * [P] The indication that you are dropping a tab onto a group should not be on the tab, but on the group.[Aza]
+ Made the focus ring slightly prettier.
2010-05-14 22:50:12 -07:00
Ian Gilman
3430d0e39b + Fixed tab escapees bug
+ If you click on a link in another app, the tab bar now does the right thing
2010-05-14 15:58:55 -07:00