Commit Graph

268 Commits

Author SHA1 Message Date
Ian Gilman
09aad23de9 + 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
Aza Raskin
473c753598 An experimental idea that makes that tabbar show only items in your current group. 2010-04-27 15:31:20 -07:00
Ian Gilman
586de51ff9 + 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
61d072515d + 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
81f433ebb8 + 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
ff2ee5c96b + Fixed an unfortunate bug in Rect copying
+ Now reconstituting groups from saved file
+ Now saving and reconstituting tabs
+ Fixed start up problem when there's only one tab
2010-04-23 17:11:06 -07:00
Ian Gilman
7207a21e58 + We're now storing data in a file named after your candy, in a folder named 'tabcandy' inside your profile folder (e.g. tabcandy/revision-a.json). Currently the only data that's round-tripped is whether you have hidden the tab bar, but we are saving group data out (just not reading it yet).
+ The nav bar wasn't successfully hiding when first starting the browser; fixed.
2010-04-22 17:19:42 -07:00
Ian Gilman
11c5405d59 + merge 2010-04-22 14:27:18 -07:00
Ian Gilman
ebc4eaa6ed + 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
Aza Raskin
e3cdf0695e + Animation when adding a page into a stack
+ Make sure stack overlays are shown inside the window.
2010-04-22 16:13:19 -04:00
Aza Raskin
2a4a38b180 More updates to stacking inside of zoomgroups.
+ It works now!
+ Shrink a group to a pile and then click on the stack.
+ The group opens in an overlay.
+ Moving your cursor outside the group makes it animate back into the stack.
2010-04-22 15:51:48 -04:00
Aza Raskin
80b2077877 First pass at an implementation of stacks.
+ In Zoomgroups put some pages into a group, then scale it down
+ It will animate itself into a stack
+ Pull it out again and it will go back to being a zoomgroup
2010-04-22 12:38:37 -04:00
Ian Gilman
4884381376 + finished locking down the "new tabs" group… can no longer be renamed or auto deleted
+ Removed potential slowdown for dragging tabs… should be the same now as it was before my "keeping groups and children in sync" fix
2010-04-21 17:27:28 -07:00
Aza Raskin
22cf8d5cfb Cleaned up the interaction around naming a group.
+ Animation on changing the default name
+ Appropriate color changes
+ Only show the input box on hover
2010-04-21 14:12:41 -04:00
Ian Gilman
87d1a2df16 + menu key now works
+ started locking down the "new tabs" group
+ children no longer lag when dragging a group
+ you can no longer nest groups inside of other groups (for now)
2010-04-20 16:49:55 -07:00
Ian Gilman
11839c48bd + 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
06babbf571 + merge 2010-04-20 14:45:52 -07:00
Ian Gilman
666a8b2ab3 + now with unsquish! 2010-04-20 14:45:29 -07:00
Aza Raskin
2023249f68 Performance tweaks:
+ We pause tab mirroring/painting on zooms.
+ We remove box shadows and rounded corners on zooms. (Which, according to Shark, was costing around 10% time)
2010-04-20 16:05:07 -04:00
Ian Gilman
9aa932860f + First working version of squish 2010-04-20 11:47:54 -07:00
Aza Raskin
f2998ab293 + Added animation to showing/hiding the tabbar
+ More updates to the TabCandy Spec
2010-04-20 13:53:07 -04:00
Ian Gilman
a4c6d936cc + 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
db53c576c8 + 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
Aza Raskin
c5ad3ac633 Added a beautiful tabbar toggle. Woot! 2010-04-14 19:06:17 -07:00
Aza Raskin
f43960f29d Updated the specification to include the stacks metaphore. 2010-04-14 17:15:38 -07:00
Ian Gilman
7bcd47dfb4 + 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
Aza Raskin
9c838971fd Fixed some bugs with the badge counter. 2010-04-13 15:53:19 -07:00
Aza Raskin
a190478d4a Fixed some performance issues (?!) with the Toolbar. When I added it to tabitems.js it caused the browser to freeze up.
Instead, I added a new event listener for tab openings which updates the badge. This solves two problems at once.
2010-04-13 15:34:30 -07:00
Aza Raskin
6441c28926 Added the code to show the unread badge in the toolbar on new tab openings and hide the unread count when you visit tabcandy.
Some problems:
+ The badge only gets updated when a tab finished *loading*
2010-04-13 15:03:16 -07:00
Aza Raskin
1d06626e6f Updated toolbar-button.js:
+ Now handles being embedded both in a browser.xul context (i.e., in firefoxOverlay.xul) and a more normal content document context
+ Access the toolbar in a normal context via Toolbar.*
+ Automatic badging for unread tabs: just set Toolbar.unread += 1 or some such.
2010-04-13 14:55:51 -07:00
Aza Raskin
a33fb0cdb1 Aza sings the Merge song:
They were plentiful when from the darkness it emerged
The dark mercurial spirits singing SVN a dirge
A beast with many heads
No arms but branches in its stead
As you push into unknowns your final utterance will be "merge"

-- The only surving translation of the last song of the commited.
2010-04-12 23:16:28 -07:00
Aza Raskin
ba9df90608 Added a TabCandy button to the navigation toolbar on startup.
+ Clicking on it opens a tab to Revision-A
  - The tab is moved to being the first tab
  - The tab is visually hidden
  - Clicking on it again re-uses the opened tab

Some notes:
* Only styled for OSX
* We should think about loading the page in the background on startup
  so that there is no time delay when clicking on it the first time
2010-04-12 23:04:25 -07:00
Ian Gilman
6951057a1c + Removed unnecessary margin and padding from tabs and groups (was messing up layout)
+ Now compensating for padding in tabs when laying them out
+ Tab titles are now a single line, cut at the width of the tab (but no ellipsis yet)
+ Groups now have the move cursor
+ Tab resizing now works, and is disabled when a tab is in a group
+ We now have a "new tabs" group that new tabs go into (created as needed)
+ New layout algorithm for tabs inside a group. It's not as space efficient as the last one, but the unused space is at the bottom rather than the right side, and in general I think it behaves more like people expect.
+ Groups now have a minimum width when resizing
+ If you drag the second to last tab out of a group and don't return it to that group, the group now dissolves.
+ When a tab gets below a certain size, its thumbnail and close box are hidden
+ When a tab's title gets below a certain size, it is hidden.
2010-04-12 17:20:35 -07:00
Aza Raskin
3a944f5cd5 + Fixed the implementation of closing
+ Cleaned up the CSS styles by using background images
2010-04-10 02:16:02 -07:00
Aza Raskin
2a5c0e460e Now correctly sizes new tabs. 2010-04-10 01:50:04 -07:00
Aza Raskin
85d342e4f1 + Fixex a bug whereby the titles of pages would be hidden inside of groups. 2010-04-09 15:48:29 -07:00
aza@More-Better-Internet.local
bb96036920 + Tabs regain appropriate styling when being removed from a group. 2010-04-09 15:17:59 -07:00
aza@More-Better-Internet.local
1163208298 + Continued cleanup of zoom code.
+ Tabs now have the correct style inside of groups.
2010-04-09 15:17:08 -07:00
aza@More-Better-Internet.local
70ffe69940 Fixed sizing issues in the new style, as well as cleaned up the zoom code. 2010-04-09 12:49:54 -07:00
aza@More-Better-Internet.local
472a75695b Fixed the height of the pages. 2010-04-09 12:21:31 -07:00
Ian Gilman
24e393f848 + Merging; looks like we had a little collision in the group DOM area 2010-04-09 10:21:12 -07:00
Ian Gilman
a7874ea5e0 + The container for a Group now encompasses its whole bounds; the titlebar is within it rather than outside of it. This is a cleaner structure, and fixes some issues with the titlebar, as well as allowing us to see the red glow for when a group will be dropped into another group. There are still some issues, but I think we'll leave them until we have a visual design. 2010-04-09 10:03:51 -07:00
aza@host-3-23.mv.mozilla.com
5acfbb9007 Merge with the docs. 2010-04-08 17:39:00 -07:00
aza@host-3-23.mv.mozilla.com
9b31bf136c Begun adding a new theme, by Sean Martell. 2010-04-08 17:38:06 -07:00
Ian Gilman
99b497a60b + 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
eb4f6108ab + 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
e34356bf94 + Reenabled the titlebar
+ Fixed the "sites" feature
+ Fixed pushAway for groups
2010-04-02 15:10:35 -07:00
Dan Walkowski
2fcdaa3a0c ZOMG MERGE. You HG Bastard. 2010-04-01 17:59:17 -07:00
Dan Walkowski
666608615f merge 2010-04-01 17:26:51 -07:00
Ian Gilman
e2e235da48 + 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