- Remove all "Selected" from "Selected Item", because that's how a context menu works
- Change "Remove Selected Item" to "Remove Item from Collection" (fixes#122)
- Change "Delete Selected Item from Library" to "Move Item to Trash")
- Change "Remove" on Duplicate/Unfiled Items to "Hide" (fixes#122)
- Change "Create Parent Item from Selected Item" to "Create Parent Item"
On OS X, the checked state of <menuitem type="checkbox"/> still doesn't
work right if set before the menu is opened. To get around this, the
state is now set manually in onpopupshown(). There's an annoying delay
before the UI update, but this is better than nothing.
Always show colored tags at the top of the tag selector, regardless of
whether they're in the current scope. If not, they're shown with reduced
opacity (as an equivalent to the gray style for out-of-scope tags in
Display All Tags mode). As a corollary, colored tags are now shown even
if they have no associated items and will remain until they're
explicitly deleted.
Also:
- Don't show outline on out-of-scope tags in "Display All Tags" mode
Previously any unused numbers were still available for key navigation, but I
think it's too easy hit the wrong key that way, and getting moved to another
part of the items list is annoying.
Use the Notifier for all tags box updates to ensure that it always updates.
Also fix the tag count and some other things.
Post-tab focus still isn't 100% correct in all situations, but it's real close.
- Clear per-library error icon on new sync
- Pass upload errors through to end
- Don't make WebDAV verification error a global failure
- Some other things
- Improvements to #20, with the tags box switching to a multiline
textbox in the style of #164 on a multiline paste or Shift-Return. In
the multiline box, Return is a newline and Shift-Return saves
- Allow tabbing through tags via keyboard (and keep the last empty
textbox open on tab, so you can hold down the tab key to get all the
way to the end)
- Fix various post-update focusing issues (though the wrong textbox is
still selected for some multiline updates via Tab/Shift-Tab)
- Make (single-line) tag entering much faster by not reloading the whole
tags list and just placing the new tag in the correct sorted position.
This could be made even faster with tag selector optimizations.
- Allow the Add button to focus when switching to the Tags pane (and the
same for the Related pane, for good measure)
Initialize the note editor with the default directionality based on the current locale, and add a single button for the opposite direction that functions as a toggle. This avoids needing two buttons.
We should also add locales to TinyMCE, but we can do that separately.
Closes#157
While the attachment icon helps with on-demand download, a count is
probably more useful for notes, and between tag colors and the two
dot columns things were getting a little Dance Dance Revolution.
- New tag colors support, with the ability to assign colors to up to 6
tags per library. Tags with colors assigned will show up at the top of
the tag selector and can be added to (and removed from) selected items
by pressing the 1-6 keys on the keyboard. The tags will show up as
color swatches before an item's title in the items list.
- Synced settings, with Notifier triggers when they change and
accessible via the API (currently restricted on the server to
'tagColors', but available for other things upon request)
- Silent DB upgrades for backwards-compatible changes. We'll do
something fancier with async DB queries in 4.0, but this will work for
changes that can be made without breaking compatibility with older
clients, like the creation of new tables. The 'userdata' value is
capped at 76, while further increments go to 'userdata2'.
TODO:
- Try to avoid jitter when redrawing swatches
- Optimize tag color images for retina displays
- Redo attachment dots in flat style?
- Clear all colors from an item with 0 (as in Thunderbird), but I don't
think we can do this without undo
- If attachment exists at same relative path in new base directory,
leave it alone so that it continues to work.
- If attachment doesn't exist in new base directory, revert it to an
absolute path.
- If new base directory is an ancestor or descendant of the previous
base directory, adjust relative paths below the new directory so that
they keep working.
- More dialog changes
- Select current base directory in file picker when changing directory
- Always use .persistentDescriptor instead of initWithPath(), though it
probably doesn't matter, and wrap in try/catch in case the old setting
is broken in some way.
- New function Zotero.File.directoryContains(dir, file), since
nsIFile.contains() isn't recursive
- Don't use a private Zotero.Item property from outside to force path changes.
- Changed placeholder to just "attachments:" for consistency with "storage:"
- Reworked dialog text
- Use a fancier (and undocumented) filefield XUL element for path
- A few small code tweaks
Translator updates and broken translator reporting both make automatic
requests to zotero.org, but the version pref is just adding a header
with the Zotero version on existing requests.