-- Switches.json -> now using hash for "switches" for easy lookup
-- Serialization changed so that we use "" for default switch types, and
this round-trips properly.
-- Had to switch from <select> to bootstrap-style dropdowns; when I
started trying to handle the 'default' settings better (i.e., when the
per-key setting was blank), Angular was throwing errors using the
<select> element.
-- Changing switch mount blanks out brand/type, etc.
-- Now disabling switch mount/brand/type controls when appropriate
-- PNG rendering now only doing #keyboard-bg, which allows me to make
#keyboard full-width again.
-- Found part numbers for a few switch types
-- Split switch data into a JS object, rather than a simple string
-- Small tweaks to UI layout
-- When setting mount-type, brand & switch-type are reset
-- When setting brand, switch-type is reset
-- Custom font sizes on first key; second key had font-sizes reset by
changing the 'default' font size.
-- Unfortunately, this was the same as the *original* default font-size,
so we didn't actually write 'f'.
-- Now forcing 'f' out in this scenario.
-- Needed parentheses on one of my conditions in compareTextSizes(); was
returning false more often than necessary, which isn't that bad, but
would cause serialization output to be bigger than necessary sometimes.
-- More problematic was that we wouldn't always write f2/fa during
serialization if it was necessary.
---- Any time 'f' is written, we need to blow away the saved font-array.
---- And any time the font comparison fails, we *have* to write f2/fa,
so the call to serializeProp was wrong.
-- Fixes#104
-- Intended to put decorative labels (logos, etc.) on keyboard layouts.
-- They're basically just invisible keycaps; this works pretty well,
since there are already so many formatting options for text on keycaps,
and it saves us from having to manage a completely separate type of
thing.
-- Props to iandoug for the idea!
Also:
-- Disable x2,y2,width2,height2 on decals
-- Increase max keycap size to 18x18 (allows for really large decals)
-- Serializer was outputting the text color even if it was the same as
the default.
-- Also, now rounding numbers to four decimal places, so we don't output
numbers like 7.2499999999999. :)
-- New color picker (angular-bootstrap-colorpicker)
-- Color picker placed beside each label field.
-- Can also drag & drop from palette to label fields (using
angular-dragdrop).
-- If the first row in your layout was rotated, the x & y coordinates
didn't get output correctly.
-- The serializer didn't take into account that *both* x & y are updated
when *either* rx & ry are specified in the output; as a result, it would
mis-calculate the correct x & y coordinates for some rotated keys.
-- Fixes#57 and #61
-- Each key has a rotation angle, and center of rotation; available in
the editor.
-- Displaying crosshairs in the editor for the center of rotation.
-- Keyboard shortcuts to move CoR, and change angle.
-- Keyboard height is correctly calculated.
TODO:
-- Serialization is still wonky.
-- Can't click on rotated keys to select them.