Commit Graph

34 Commits

Author SHA1 Message Date
Michael Yoshitaka Erlewine
55567c549e refactoring dragOptions, dropOptions 2010-06-15 17:38:55 -04: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
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
Ian Gilman
0ea3b91ce0 + misc documentation fixes
+ Fixed: Quit Firefox and relaunch. You'll reopen with that tab, but the tab bar doesn't have its tab limited to the containing group. It should limit them.
2010-05-13 17:24:37 -07:00
Ian Gilman
1004e2f203 + Fixed an extremely subtle bug that would cause groups that you hadn't manually resized to start falling apart after a refresh.
+ Added sanity checks on data going to and from storage (still some work to be done there); if the check doesn't pass, the data isn't loaded/saved
+ Added a manual save option to the dev menu
+ Added Utils.isNumber, as well as standalone isRect and isPoint routines
+ Miscellaneous double checks and assertions
2010-05-11 12:03:31 -07:00
Ian Gilman
914eeb66de + The "new tabs" group can now not be renamed or closed, but it can be moved and resized. Updated how item locking works to accommodate this.
+ Groups now have some extra space at the bottom to accommodate for the "new tab" button
+ Items now unsquish after another item is closed, and on resize. This should cut down on random-seeming unsquishes later.
2010-05-07 15:49:54 -07:00
Ian Gilman
6767f35c41 + Removed tab bar control
+ Group title box now grows when you type into it, but always stays smaller than the width of the group
2010-05-06 17:01:53 -07:00
Ian Gilman
9dc37e386b + A group with a single item now never stacks
+ Improved minimal size for groups and tabs inside of groups
+ When you close the active group, it was still being remembered as the active group (even though it didn't exist anymore); fixed.
+ If you have two tabs with the same url in different groups, and you refresh, it now does the right thing (unless that url is about:blank, in which case it drops them in the "new tabs" group)
+ Updated documentation (since Aza's been commenting!)
2010-05-04 16:44:03 -07:00
Ian Gilman
8e4da71b78 + Removed vestigial double click handler
+ New tab button animation now goes to where the tab is actually going to arrive
+ Giving a little more space at the bottom of groups so tabs overlap the new tab button
+ Fixed issue with tab reconnection on startup
2010-05-03 17:11:44 -07:00
Ian Gilman
82fe48592b + merge 2010-05-03 15:32:43 -07:00
Ian Gilman
a03e476618 + Tabs dropped on stacks now appear on top
+ Misc fixes
+ We now show chrome tabs (but not the tab candy tab)
+ When the browser first starts up, it takes it a while for the tabs to all get their correct URLs; we now properly deal with this when reconnecting them to their groups
+ Added a "dev" menu in the upper left for various debugging features. Nothing much there so far
2010-05-03 15:32:11 -07:00
Aza Raskin
92b7dd395f + Added a first-pass at a new-tab interface for groups.
+ TODOs (see the code)
 + (1) There is a potential race condition groups.js:line 121
 + (2) The new tab animation is to the wrong place groups.js:line 96
2010-05-03 15:24:22 -07:00
Ian Gilman
89723d2a2c + Fixed a bug making it so you couldn't close tabs that were just .mov
+ Commented out the _render routine in toolbar-button.js,  as it was throwing exceptions and didn't seem to work anyway
+ Added some asserts to Item and cleaned up its documentation
+ Made Utils.assert more robust
+ Made tabs prettier when stacked
+ Commented out js lint, which doesn't seem to work in this context
+ Fixed it so you can't resize locked groups
+ Made it so the "new tabs" group is no longer locked (for the time being at least)
+ Tabs no longer change order when you drag their groups around
+ The tray now goes away more beautifully
+ You now have to drag at least 100 pixels and at least 500 milliseconds before a tab is pulled out its tray
+ No longer reserving space at the bottom of the screen for the "new tabs" group
+ Tab titles now go away when stacked and come back when not (there was a problem with them coming back)
+ No longer explicitly positioning the "new tabs" group
2010-04-30 17:24:03 -07:00
Ian Gilman
be7ec21618 + Stacks now expand into a special "tray"
+ You can now once again rename groups
2010-04-28 17:18:02 -07:00
Ian Gilman
0fd506d838 + First version of stacks
+ Cleaned up issues with algorithm for choosing where to position a tab dropped into a group
+ You can no longer drag a tab or group around by its close box
+ Changed tab drop tolerance… tabs now just need to overlap 50% in order to group. This is to make it consistent with dropping a tab on an existing group, which already behaved this way
+ A single tab in a group will no longer fill the entire group
2010-04-27 16:11:49 -07:00
Ian Gilman
02aad3a293 + squishing no longer forces groups into tab aspect ratio
+ user-set sizes are now respected when unsquishing
2010-04-26 17:23:15 -07:00
Ian Gilman
5a7c31269c + Point's constructer now accepts a point to copy
+ Added the close box back to the "new tab" group; it doesn't close the group, but it closes all the tabs. Seems like a useful feature, though maybe it shouldn't look like all the other close boxes
+ Groups no longer auto-close when all items are removed, if they're named
+ You can now close an empty group
+ Fixed bug with dragging tabs out of a group
+ Resizing the window now works, even if you've closed tab candy
+ When unsquishing, groups aren't forced into tab aspect ratio
2010-04-26 16:48:46 -07:00
Ian Gilman
94ee161a69 + Now reconnecting tabs with groups
+ Groups now have unique ids
+ Items now have a "parent" property (instead of $(this.container).data('group'))
+ Group.add now accepts Item objects rather than just jQuery objects
+ Fixed several cold start issues
2010-04-26 13:37:39 -07:00
Ian Gilman
c1fc86ad42 + Updated Utils logging to deal gracefully with object properties you can't access (for permissions reasons, for instance)
+ Added storage.js… starting serialization
+ Disabled autoscroll on drag; the window should be locked down now
+ Fixed Aza's "cute little bug"; small tabs used to scoot up and left
2010-04-22 14:26:57 -07:00
Ian Gilman
5ee8d661e0 + Items now has a squishMode variable you can set to one of three possible ways to deal with items getting pushed off the screen: resize the whole set, squish only the ones getting pushed off, let them get pushed off but then have them push back on when there's room 2010-04-20 15:42:06 -07:00
Ian Gilman
c35ba4c0a7 + now with unsquish! 2010-04-20 14:45:29 -07:00
Ian Gilman
3275183e62 + First working version of squish 2010-04-20 11:47:54 -07:00
Ian Gilman
cca8b5e120 + The "new tab" group no longer gets pushed away by the other items
+ Started work on Squish!™ code, not ready yet, so disabled
2010-04-16 17:21:03 -07:00
Ian Gilman
56db6cd241 + The tab bar toggle now has a down arrow when clicking on it will pull the tab bar down and an up arrow when it will push the tab bar up (was reversed)
+ The tab bar toggle and decorative strip now reside above the tab candy content in Z
+ Group titles now have prompt text/icon
+ Additional documentation (especially Mirror)
+ Fixed the dev mode features (were broken by the tab bar toggle changes)
+ The Firefox nav bar now correctly shows again when you create and go to a new tab
2010-04-16 15:09:23 -07:00
Ian Gilman
d54682ea3a + added the title and close box back to groups, with some basic styling
+ the "new tab" group now always lives at the bottom of the page
+ the candy switcher and the "grid" and "sites" features are now hidden by default. add ?dev=1 to the url to show them
+ the Firefox nav bar is now hidden when you're in the tab candy page
+ the starting grid now scales depending on how many tabs you have. (it is in fact sharing the arrange code that groups use for their children)
2010-04-14 17:12:06 -07:00
Ian Gilman
dac099a53e + Put Natural Docs (http://www.naturaldocs.org/) -friendly comments in items.js
+ Added a doc folder that contains generated documentation
+ Now pointing to the doc folder from the Tab Candy home page
+ The Tab Candy home page is now accessible from the Candy drop-down
2010-04-08 16:36:11 -07:00
Ian Gilman
b2019ace2e + Groups lose their resize handle when they get dropped into a group (and get it back when they get pulled out)
+ Now properly handling z order for dragging and nesting groups
+ If a group is the last item inside a group, closing it now closes the outer group as well
+ Fixed bug causing the closing of unrelated tabs to destroy groups
2010-04-02 17:33:06 -07:00
Ian Gilman
b0f1e5d93f + We're now keeping track of item locations independently of their divs
+ Renamed Group._container to .container (which it now inherits from Item)
+ Added Item.debug flag which turns on rectangles for debugging item locations
+ further unified dragging tabs vs dragging groups
+ Further unified the Group and TabItem objects under Item
2010-04-01 17:20:59 -07:00
Ian Gilman
033ae50793 + font size for tab names now scales properly
+ tabs now return to their proper size when you pull them out of a group
+ you can now nest groups inside of other groups (though all of the funky repercussions haven't been sorted out yet)
2010-03-31 17:24:16 -07:00
Ian Gilman
7abb15a948 + The Grid and Sites features now work properly 2010-03-29 17:23:35 -07:00
Ian Gilman
f83c10d252 + Group and TabItem now inherit from Item (currently the pushAway routine and isAnItem property)
+ Group._children is now an array of Items (rather than DOM elements)
+ Groups and tabs now push other items away when they're moved, and groups also do so when resized
+ The Groups object now keeps an array of groups. This is more robust than counting DOM elements, for instance when a group is fading away (you want to act like it doesn't exist, even though its DOM element is still on the screen)
+ Documented the Item interface in items.js
+ lots of miscellaneous refinements to the code
2010-03-29 16:08:48 -07:00
Ian Gilman
2f3def3f85 + Removed Group.create() and made it the constructor instead
+ Added Group to window
+ Moved window.Items into items.js
+ Moved window.TabItem into tabitems.js and added a window.TabItems, which is largely the mod routine pulled from ui.js
2010-03-29 11:55:13 -07:00
Ian Gilman
f56556d9ec + Branched the shared groups stuff into copies just for revision-a; we've got a bunch of work to do, and it's not worth trying to keep all of the other candies compatible at the moment.
+ Added jquery.lint to revision-a. Haven't caught anything yet, but seems like it could be helpful.
+ More fiddling with the resizer css

--HG--
rename : browser/themes/pinstripe/browser/tabcandy/shared/resizer.png => browser/themes/pinstripe/browser/tabcandy/resizer.png
2010-03-29 11:16:18 -07:00