Commit Graph

494 Commits (master)
 

Author SHA1 Message Date
Ian Prest 6467d61616 Reformatted the deploy script to be easier to read. 11 years ago
Ian Prest b3d76aa6c0 Fixed a bug during deserialization of ghosted keys
-- Previously could never turn off ghosting
-- 'false' values never got propagated.
11 years ago
Ian Prest 2f54027d25 Updated deploy batch file to set ACLs 11 years ago
Ian Prest faab5c0ced Added a batch file to help me deploy to AWS.
-- "deploy --dryrun" to see what would change
-- "deploy" to actually do it.
11 years ago
Ian Prest 9fc55e5d5a Bumping version to 0.6 and deploying. 11 years ago
Ian Prest a5055e99d5 Can now SAVE layouts to the server.
Implemented as a POST upload to AWS/S3.
-- Each layout is a separate file; identified by its MD5 hash
-- No real security to protect against malicious users "erasing"
layouts, but S3 offers versioning.

Also:
-- Added save button on the toolbar.
-- Added load/save alert boxes.
-- Added Ctrl+S hotkey to save.
11 years ago
Ian Prest ffb0e31498 Mark the keyboard as not-dirty when loading preset. 11 years ago
Ian Prest 35abe57b0b Added the ability to "ghost" a keycap.
-- Ghosted keys are dimmed out
-- This is useful for drawing attention to the *unghosted* keys, while
still presenting them in context.
11 years ago
Ian Prest 374626a794 Reset the dirty flag if the permalink link is clicked. 11 years ago
Ian Prest ee3b832391 Added a warning when leaving the page.
-- we only prompt if the data is dirty.
11 years ago
Ian Prest 36289e54fd Added help text for copy/paste.
-- Also split the keys into multiple columns, and tweaked the
formatting.
11 years ago
Ian Prest bd576a9d8b Prevent hotkey-invoked copy from emptying the clipboard 11 years ago
Ian Prest b0d9fdab9e Added copy/paste support.
Couldn't get real access to the clipboard, so we can only copy/paste
within one instance of the app, at the moment.

Also fixed a few undo/redo bugs:
-- after undo/redo, invalid keys were still selected and showing in the
editor
-- A number of transactions didn't do anything, but invoking them would
empty the redo stack; now checking for these conditions before logging
the transaction.
-- Limiting the undo stack to 32 levels, for performance/memory reasons.
11 years ago
Ian Prest 5f7e254076 Form now updates properly when keys change.
-- When I started copying key nodes instead of assigning references
(when I added validation), I caused a problem where the form wouldn't
update when you modified a key outside of the form.
-- This also affected inserting keys, which would insert keys in a
seemingly random place.
-- I'm now properly updating $scope.multi when I modify properties on
the selected keys.
-- I also deleted the findKeyAfter() function (used only in addKeys),
and using the more-robust sortKeys() method.
11 years ago
Ian Prest ec021ec12a Added some GMK colors.
Colors were poorly sampled from a picture posted to GeekHack.  Probably
not representative of the actual colors.
11 years ago
Ian Prest 48bbb3c13f Using the correct icon for "redo". 11 years ago
Ian Prest 4bccc62f87 Keep the location-hash until the layout is changed. 11 years ago
Ian Prest d643e7fd8a Fix a defect in the URLON encoding with empty strings. 11 years ago
Ian Prest 42bdb576d5 Fix bug when clicking on a swatch.
Strangely, the bug only exhibited itself on FF.
11 years ago
Ian Prest a4bd792ed4 Fixed preset layouts
... somehow lost the square brackets on the 2nd row of the {} keys.
11 years ago
Ian Prest e9c0155b80 Bumping version to 0.5 and deploying. 11 years ago
Ian Prest df82610920 Added Shift+J/K to extend selection, and (De-)SelectAll command 11 years ago
Ian Prest a1b969bb24 SHIFT+click now extends the selection
-- Note that this can be a bit unintuitive sometimes.
-- If works great so long as the range between your last selected key
and the key you clicked on don't overlap.  I think this will be the most
common case.
-- If the ranges overlap, a bunch of items will end up being toggled,
which is weird.
11 years ago
Ian Prest a9aff79b49 Allowing ALT everywhere CTRL is allowed.
Apparently Ctrl+Click isn't allowed on Mac computers (gets translated to
right-click).  In order to allow multi-select, etc., on Macs, I'm
checking for Alt everywhere I was previously checking for Ctrl.
11 years ago
Ian Prest 9ebaa30d81 Use default arrow cursor on the body.
We prevent text selection, so don't use the text-selection cursor!
11 years ago
Ian Prest 906e33a936 Gave the help link an HREF so we get the correct cursor. 11 years ago
Ian Prest 3337e45f6a Now using URLON for permalinks.
URLON is a serialization format designed specifically for URLs.  See
more here:
-- http://blog.vjeux.com/2011/javascript/urlon-url-object-notation.html
-- https://github.com/vjeux/URLON
11 years ago
Ian Prest 242c3c79e4 Made the 'permalink' button open a new tab. 11 years ago
Ian Prest 8b243b11f8 Fix small gap between border and background color. 11 years ago
Ian Prest 1548fdea08 Added basic undo/redo support. 11 years ago
Ian Prest 7ce424095f Added a <title> to the HTML page. 11 years ago
Ian Prest 3077351aab Fixed stupid JS int-->string issue when sorting. 11 years ago
Ian Prest a4c85ad612 Fix & simplify the next/prev key logic
I broke the next/prev key logic when I added the input validation; since
$scope.multi is now a *copy* of a key, rather than an actual key, we
can't rely on looking it up in the keys[] array to determine the
most-recently selected key.
11 years ago
Ian Prest 9fb3e4978b Added a basic 'help' dialog. 11 years ago
Ian Prest 1ac1f032d8 Better validation of values entered into the form. 11 years ago
Ian Prest 0519213087 Fix key selection for oddly-shaped keys.
We were only comparing against the primary rectangle; clicks or marquee
selects against keys with secondary rectangles didn't work correctly.
11 years ago
Ian Prest 8d343cdab3 Added an icon to the 'permalink' button 11 years ago
Ian Prest 8788227f9a Added a link to the GitHub repo 11 years ago
Ian Prest 0571f55ecd Added icons to various UI elements. 11 years ago
Ian Prest 21f90b0499 *Really* prevent text selection. 11 years ago
Ian Prest d1d888cde5 Add predefined keys, and fix marquee select
-- Added a list of predefined keys to the 'Add Key' dropdown (ISO enter,
etc.), to easily create those keys.
-- Doing our best to simulate mouse-capture (which doesn't exist in
HTML) so that marquee select is a little more usable.
11 years ago
Ian Prest 7574a078f9 Prevent text selection 11 years ago
Ian Prest 881a584877 initial commit 11 years ago
Ian Prest c5771572aa Initial commit 11 years ago