Commit graph

362 commits

Author SHA1 Message Date
Thomas Wilburn
8bba0ca36a Converted palette to templates 2014-01-21 22:47:02 -08:00
Thomas Wilburn
27499bf1bc Converted tabs over to the templating plugin, other rendering to follow 2014-01-21 19:01:00 -08:00
Thomas Wilburn
78bb7ad5c9 Add a home-made template library, first steps away from in-JS DOM construction. 2014-01-21 11:12:46 -08:00
Thomas Wilburn
c39cac674b Why do we remove the title from tabs? Leave it there. 2014-01-21 09:08:54 -08:00
Thomas Wilburn
3b5c925fa8 readme changes 2014-01-20 23:36:30 -08:00
Thomas Wilburn
60821321ba Fix stupid scoping mistake. 2014-01-20 23:19:25 -08:00
Thomas Wilburn
49327cbadf main.js now uses Settings.pull() 2014-01-20 22:14:46 -08:00
Thomas Wilburn
57d2b986b5 Add Settings.pull() for modules that want to request configs asynchronously instead of blocking load 2014-01-20 22:10:06 -08:00
Thomas Wilburn
57fec531c8 Move the Settings singleton into its own file for modules that want to load configs asynchronously. 2014-01-20 21:24:50 -08:00
Thomas Wilburn
5d250ef5e5 Added comments 2014-01-20 18:10:35 -08:00
Thomas Wilburn
81507d4a9c Refactor tab syntax and rendering out of sessions and into tab.js 2014-01-20 18:03:18 -08:00
Thomas Wilburn
88965d4cec Fixed a bug with failed file retention killing init:complete. 2014-01-20 15:49:26 -08:00
Thomas Wilburn
1767cd3fc2 Add printing. Fixes #120 2014-01-20 09:10:24 -08:00
Thomas Wilburn
742f96f644 Load configs and other text via getPackageDirectoryEntry()
Fixes #127
Turns out this isn't actually any faster, but it is cleaner and doesn't
clutter the console. We'll keep it for now.
2014-01-12 21:13:06 -08:00
Thomas Wilburn
6f762a9e59 Set up a valid init:complete event, process launch commands then. 2014-01-12 15:35:30 -08:00
Thomas Wilburn
6cf6745e5d Better background commands
Flash the window if it's already open
Pause two seconds to give app a chance to start.
2014-01-12 11:11:10 -08:00
Thomas Wilburn
2371f439e0 Add "secret" user option to disable tab restore. 2014-01-12 10:53:31 -08:00
Thomas Wilburn
8cc524a53e Extra safeguards.
Project manager calls preventDefault() on "links"
background.js rejects messages without a command property.
2014-01-12 10:47:08 -08:00
Thomas Wilburn
d5c154838a Simplify tab context URLs -- they're not a heirarchy, they don't need a root path segment. 2014-01-12 10:37:52 -08:00
Thomas Wilburn
67008772ea Fix bad refactoring. 2014-01-12 01:34:47 -08:00
Thomas Wilburn
99e7ce8e8d Bind for file-based DOM events in fileManager, not in command. 2014-01-12 01:26:37 -08:00
Thomas Wilburn
d26797ca80 Merge pull request #125 from mastercactapus/dragdrop
allow drag-drop opening of files and directories
Fixes #121
2014-01-12 01:24:49 -08:00
Nathan Caza
341812c5ac allow drag-drop opening of files and directories 2014-01-12 03:12:14 -06:00
Thomas Wilburn
6073cdefce Converting to promises broke File.getPath and thus project file de-dupe. 2014-01-12 00:43:02 -08:00
Thomas Wilburn
b10a83b64e Remove data that's added now that we're using links instead of spans for tabs. 2014-01-12 00:32:21 -08:00
Thomas Wilburn
0f5f335655 Bugs in removeTab were keeping closeTabsRight from iterating. 2014-01-12 00:10:06 -08:00
Thomas Wilburn
77ea4ca42e Mental note, don't comment out code you want to run. 2014-01-11 23:58:45 -08:00
Thomas Wilburn
d61fb669a8 Added command binding for closing tabs to right
Also moved closeTab() function into a lambda, since it's confusing to
have both it and removeTab(), and the former only works with the context
menu anyway.
2014-01-11 23:57:34 -08:00
Nathan Caza
f6d33a3717 Made tabs anchors instead of span, allowing context menus
- Added Close and Close tabs to the right
use element instead of tabEl
add e.preventDefault() to stop tabs from opening a new window
2014-01-12 00:34:37 -06:00
Thomas Wilburn
2c34939a43 Open a new window if a command is received while inactive.
Commands will be buffered and passed in to be fired on initialization.
To suppress app launch, add the quiet flag to your command when firing
the message from an extension.
Fixes #122
2014-01-10 22:15:35 -08:00
Thomas Wilburn
797a35e449 Make themes a little bit better about recovering from bad config values. 2013-12-23 19:23:50 -08:00
Thomas Wilburn
37cd59d0a6 Add async callbacks to a bunch of commands
See #80.
2013-12-23 16:15:03 -08:00
Thomas Wilburn
03df4334e8 Add module readme files.
Fixes #110 (maybe?)
2013-12-23 12:25:43 -08:00
Thomas Wilburn
7418c64b5c Use manos.deferred() in tab.save() 2013-12-23 11:20:04 -08:00
Thomas Wilburn
ec3edebc28 Promise API kind of sucks, use manos.deferred() instead. 2013-12-23 11:12:19 -08:00
Thomas Wilburn
1b04983d84 Use promises in tabs, sessions, fileManager. 2013-12-23 10:27:51 -08:00
Thomas Wilburn
529b3d2951 Finish converting syncFS to Promises. 2013-12-23 10:27:33 -08:00
Thomas Wilburn
576cfdaa16 Convert storage/file to HTML5 promises. 2013-12-23 09:36:31 -08:00
Thomas Wilburn
0fae9e411e Add es6-promise shim, so we can convert over to browser promises as soon as they're available. 2013-12-22 10:56:13 -08:00
Elisée Maurer
154b93c94d Shorten function name to enableTabMiddleClick 2013-12-21 07:18:49 +01:00
Elisée Maurer
ae42c58ada Close tab on middle-click
Also make sure we only fire regular commands when left-click is used,
not for any buttons
2013-12-21 07:02:54 +01:00
Thomas Wilburn
0227e06d46 Fixes #103 2013-12-20 15:10:23 -08:00
Thomas Wilburn
fc7d893929 Many key fixes: mainly that Ace key configs are reloaded from scratch on each init:restart, so that
you can't either wipe out Ace bindings for good, or have zombie bindings hanging around from edit to
edit.
2013-12-20 09:01:53 -08:00
Thomas Wilburn
455050a67b Hack to fix keyboard for now, but key merges are broken and should be fixed in settings 2013-12-20 07:56:56 -08:00
Thomas Wilburn
810ef49da7 Key configs should be case-insensitive.
Fixes #85 (again).
2013-12-19 11:50:23 -08:00
Elisée Maurer
53da1b8084 Implement change-tab-linear command, fixes #96
Bring back the ability to switch tabs linearly (to the left / right)
2013-12-19 19:00:50 +01:00
Thomas Wilburn
852d4fc3aa Add the ability to flag sync commands during registration 2013-12-16 17:40:42 -08:00
Thomas Wilburn
5a7ae3c459 Cleanup 2013-12-16 17:35:02 -08:00
Thomas Wilburn
c8fb385a31 Missed some case issues. 2013-12-16 14:58:37 -08:00
Thomas Wilburn
5f5ea6ef2e Convert keys to Ace-style binding syntax
Fixes #92
2013-12-16 14:47:25 -08:00
Thomas Wilburn
fd577ed1be JSON error. 2013-12-16 14:28:25 -08:00
Thomas Wilburn
b19775e031 Better async command patterns, fixes for loading command list. 2013-12-16 11:53:26 -08:00
Thomas Wilburn
da4490bf9a Add a simple text loader plugin. 2013-12-16 11:29:41 -08:00
Thomas Wilburn
5fd85e2f3e Fix for updates reloading too fast, thanks Chrome team! 2013-12-16 10:44:11 -08:00
Thomas Wilburn
6595a39f75 Update syntax/theme dropdowns when setting from palette. 2013-12-16 09:21:55 -08:00
Thomas Wilburn
3dcbbbed66 Add commands.json for #93 2013-12-16 08:51:56 -08:00
Thomas Wilburn
a53de2a198 . 2013-12-16 08:10:08 -08:00
Thomas Wilburn
e814ff5e61 Fixes #87 (I hope) 2013-12-16 08:01:46 -08:00
Thomas Wilburn
979d0082ce Add redundancy to chromebook search mappings. See #85 2013-12-13 09:48:56 -08:00
Thomas Wilburn
6331cfebdf Added keyboard patch for funky Chromebook search key combos (now compatible with Crouton). 2013-12-13 08:25:10 -08:00
Thomas Wilburn
73cf465bea Manifest bump, style tweak. 2013-12-10 22:57:18 -08:00
Daniel Loomer
ea5a0f3a8b only reorder when there is a target
Fixes disappearing tabs, previously the tab was being removed from the
tab array and disappearing from the UI when sorted since the "from" and
"onto" were the same (itself).
2013-12-10 21:20:01 -05:00
Thomas Wilburn
58e2c75679 Show the path as the sublabel when searching projects. 2013-12-10 14:57:20 -08:00
Thomas Wilburn
5ce586f3d7 Add the ability to search for file names inside the project
Fixes #69
2013-12-10 14:46:28 -08:00
Thomas Wilburn
a9ea37d073 Updated Ace to the 12/2/13 build. 2013-12-09 11:43:13 -08:00
Thomas Wilburn
4f11d068eb Merge branch 'master' of github.com:thomaswilburn/Caret 2013-12-05 12:29:03 -08:00
Thomas Wilburn
de8e444e36 Added the ability to open new tabs with content via command 2013-12-05 12:28:47 -08:00
Thomas Wilburn
5b4a3e22f7 Removed window.sync, added some comments. 2013-12-04 23:34:49 -08:00
Thomas Wilburn
8aef22694e Add commands for status messages. 2013-12-04 14:50:01 -08:00
Thomas Wilburn
0f2355fb2d Convert over to syncFS (not syncFileSystem) for storing settings. 2013-12-04 10:52:56 -08:00
Thomas Wilburn
5ac6e4c8e7 Remove logging. 2013-12-04 10:10:10 -08:00
Thomas Wilburn
04a7cc6e93 Do not re-request defaults, they can't have changed. 2013-12-04 10:09:49 -08:00
Thomas Wilburn
dfe8749c58 Organized module locations. Fixed a context menu bug. 2013-12-04 09:24:04 -08:00
Thomas Wilburn
d31049046d Provide sample API message, add a menu item for api.json 2013-12-02 15:38:12 -08:00
Thomas Wilburn
3f992a3e43 Added ability to turn off line highlight.
Fixes #77.
2013-12-02 15:17:46 -08:00
Thomas Wilburn
fa0ab6112e Use Chrome's window position memory instead of manually restoring position. 2013-11-24 21:08:18 -05:00
Thomas Wilburn
3117a046c2 Start some work on adding a pass-through messaging API.
See comments on #29
2013-11-24 20:53:55 -05:00
Thomas Wilburn
98e0a4f96a Merge #76
Corrected a possible array index error, used numbers instead of strings
for JSON. I should probably be better about being defensive, but
nothing's perfect.
2013-11-24 20:27:52 -05:00
Thomas Wilburn
a77d4bcc8b Fix project manager rendering crash if user cancels. 2013-11-21 13:42:54 -08:00
Thomas Wilburn
b4520b0a6d Cosmetic tweaks to the project manager. 2013-11-21 10:18:43 -08:00
Thomas Wilburn
cc5613698a Using an input proxy was crap, switch to tracking doc clicks. 2013-11-21 09:40:09 -08:00
Thomas Wilburn
f7da885f05 Clean up menu focus by adding an input to serve as a focus proxy.
Fixes #74.
2013-11-21 09:30:59 -08:00
Thomas Wilburn
2bb1434a46 Allow enter key to trigger dialog buttons. 2013-11-19 08:36:37 -08:00
Thomas Wilburn
9480783353 Add ability to change font size on thefly 2013-11-19 08:20:05 -08:00
Thomas Wilburn
e0a03a46d3 . 2013-11-19 08:19:47 -08:00
Thomas Wilburn
2545890048 Fix dialog bug where Ctrl-W can close window, and focus cycles into open project. Fixes #71 2013-11-19 08:19:18 -08:00
Thomas Wilburn
7813c883ae Added Son of Obsidian theme (thanks Luciano)
Also switched back to un-minified Ace for debugging.
2013-11-12 10:10:47 -08:00
Thomas Wilburn
0aaae789ce Tiptoe around acceptsMultiple for the sake of Chrome 29 users. 2013-11-11 13:31:41 -08:00
Thomas Wilburn
1fedef397e Allow dialogs to use shortcut keys. Fixes #66. 2013-11-08 16:57:35 -08:00
Thomas Wilburn
e6ccbdaac6 Somewhere we lost the point of retainFocus in menus. 2013-11-08 16:32:11 -08:00
Thomas Wilburn
c88c38bb32 Fix bug around bad Ace wrapping when project panel expands 2013-11-07 18:06:44 -08:00
Thomas Wilburn
12a04321a4 Add URLs to files, return URL with params when routing internally 2013-11-07 17:32:38 -08:00
Thomas Wilburn
28078cc624 Make root directory URLs a superset of directory URLs (will allow them to use the same file ops) 2013-11-07 17:25:31 -08:00
Thomas Wilburn
4538be08f4 Fix bug where root directories beyond the first weren't correctly ID'd for menus. 2013-11-07 17:04:50 -08:00
Thomas Wilburn
9696911b92 Add safeguards where the project file might have a null FS entry. 2013-11-07 10:24:50 -08:00
Thomas Wilburn
213346822b Added context menu module, wired up a 'remove directory' menu in projects. 2013-11-06 21:56:12 -08:00
Thomas Wilburn
631b02d724 Add ability to check for updates at any time. 2013-11-06 12:18:50 -08:00
Thomas Wilburn
3d824a9c4a Cleared up project file editing flow. 2013-11-06 12:02:20 -08:00
Thomas Wilburn
c0f37afd43 Fixed directory triangle display, added menu divider. 2013-11-06 09:55:11 -08:00
Thomas Wilburn
23a5bf5c26 Correct a project loading bug, add folder triangles 2013-11-06 09:17:05 -08:00
Thomas Wilburn
14d9e5a47d Correctly set syntax when saving a new file. 2013-11-06 08:46:20 -08:00
Thomas Wilburn
13b9577863 Project files can include settings, which will override user prefs. 2013-11-06 08:35:57 -08:00
Thomas Wilburn
c6ed48354d Added project file loading, panel animation 2013-11-06 08:12:00 -08:00
Thomas Wilburn
c3f9f47368 Use display paths to find any open tabs matching the selected file in the project panel. 2013-11-06 08:05:13 -08:00
Thomas Wilburn
966d90e0e6 Use manos.chain() to clear up retained file reading. 2013-11-06 07:55:01 -08:00
Thomas Wilburn
ab5ebb976b Show file size message in status bar when adding a tab 2013-11-06 07:48:18 -08:00
Thomas Wilburn
ffc2f4dcc6 Greatly speed up restore by processing files in parallel. 2013-11-06 07:37:56 -08:00
Thomas Wilburn
21badb1394 Added a getPath() method on files 2013-11-06 07:37:34 -08:00
Thomas Wilburn
7b060a3512 Added clearing project support 2013-11-05 18:52:00 -08:00
Thomas Wilburn
5f39f89bbd Working project file restore, but with some issues on switching to retained files 2013-11-05 18:46:16 -08:00
Thomas Wilburn
97e2d63e70 Added opening tabs, switching to tabs from project navigator. 2013-11-05 17:44:19 -08:00
Thomas Wilburn
143ce02d42 Directory tree expansion/collapse 2013-11-04 08:53:15 -08:00
Thomas Wilburn
32c94db775 Added class sugar to dom2.js 2013-11-04 08:41:22 -08:00
Thomas Wilburn
a59a0a4880 Added notes on how project support will work going forward. 2013-11-03 17:15:34 -08:00
Thomas Wilburn
6e452273ba Adding project styles, menu 2013-11-03 16:28:17 -08:00
Thomas Wilburn
a09344f845 Disabled automatic PM launch, cleaned up CSS, added project panel element 2013-11-02 19:29:10 -07:00
Thomas Wilburn
e8969929b7 Added notes for project stubs 2013-11-02 18:30:37 -07:00
Thomas Wilburn
22c56da448 Start of work on project management 2013-11-02 17:51:28 -07:00
Thomas Wilburn
9da0f96696 Filter menus/palette based on Chrome major version. 2013-11-01 16:24:57 -07:00
Thomas Wilburn
51f52b0755 Fix a focus bug when manually closing menu. 2013-10-30 09:29:26 -07:00
Thomas Wilburn
8ee275ea90 Update Ace to latest version. 2013-10-30 09:26:43 -07:00
Thomas Wilburn
a95d50bc9e Fixed typo. 2013-10-28 14:13:55 -07:00
Thomas Wilburn
d2caf1741b Use the notification tray for updates, instead of dialogs. 2013-10-28 14:02:11 -07:00
Thomas Wilburn
c7649cc42e Fixes #61 2013-10-28 12:58:24 -07:00
Thomas Wilburn
3c851c0f44 Simplify creating new File objects from FileEntries. 2013-10-28 12:12:08 -07:00
Thomas Wilburn
6109361502 Support acceptsMultiple when opening files. 2013-10-28 11:59:14 -07:00
Thomas Wilburn
b96692eddf Add autocomplete option. 2013-10-28 09:18:43 -07:00
Thomas Wilburn
adfb259346 Convert tabs to spaces and back again 2013-10-24 19:13:07 -07:00
Thomas Wilburn
33e8cb1425 Enable tab indentation for people who are wrong. 2013-10-24 12:32:30 -07:00
Thomas Wilburn
50730b1976 Take advantage of the auto-resize added recently to Ace. 2013-10-21 16:11:23 -07:00
Thomas Wilburn
211452c9a9 Add a special reference test for JavaScript, which gets all the syntax love.
Also fix a bug where results were reordered when the "current" tab
changed.
2013-10-17 15:39:54 -07:00
Thomas Wilburn
f4fa2e6df8 Accidentally removed other modes. 2013-10-17 13:56:27 -07:00
Thomas Wilburn
382e1b9948 Add "function" tag to the reference search. Also set the current tab to be first in the list when searching all. 2013-10-17 13:53:21 -07:00
Thomas Wilburn
7de38ce442 Tab tweaks. 2013-10-17 09:09:37 -07:00
Thomas Wilburn
0c1183efae Added enter animations for tabs, which is kind of fun. 2013-10-16 17:06:32 -07:00
Thomas Wilburn
3e8ffff7ff Limit the command search to ten items. 2013-10-15 14:42:25 -07:00
Thomas Wilburn
9a2ab1e87d Fix a bug causing hidden 11th result in the palette. 2013-10-15 14:23:28 -07:00
Thomas Wilburn
541ef85e2c Added search by reference
Also added an option to search all files by default. Fixes #57 and #53.
2013-10-14 22:17:58 -07:00
Thomas Wilburn
72a682a309 First pass at caching palette results, reference search.
See also #57.
2013-10-14 17:00:13 -07:00
Thomas Wilburn
019a284444 Worst. Mac support. Ever. 2013-10-12 16:25:25 -07:00
Thomas Wilburn
23bfb59c76 Better error messages and logging for failed file.restore() 2013-10-09 22:29:27 -07:00
Thomas Wilburn
c2b95b29dc Short-circuit removing retention failures if nothing failed to restore. 2013-10-09 21:59:22 -07:00
Thomas Wilburn
c22ecbcd40 Added logging to figure out why tabs don't survive upgrades. 2013-10-09 21:35:06 -07:00
Thomas Wilburn
8573832fe7 File watching events should be dispatched correctly. Fixes #52 2013-10-09 20:24:30 -07:00
Thomas Wilburn
5c25f30cc6 Focus, selection fixes. 2013-10-08 11:15:52 -07:00
Thomas Wilburn
5343b986b4 . 2013-10-08 11:06:47 -07:00
Thomas Wilburn
5109743cb9 Much better expand-to-matching behavior. 2013-10-08 10:21:10 -07:00
Thomas Wilburn
03524a9ef0 Ace has a command we can use directly instead of shimming Sublime's "expand to word" 2013-10-08 09:37:19 -07:00
Thomas Wilburn
b330709260 Palette fixes, converted command to synchronous calls. 2013-10-08 09:27:28 -07:00
Thomas Wilburn
5e43aa558f Restore retained files using Manos async instead of more complicated inline async flow. 2013-10-08 08:31:13 -07:00