Commit graph

503 commits

Author SHA1 Message Date
Dan Stillman
d0412e1fbb Add "Move to Trash" button in item retraction header 2019-06-07 04:20:55 -04:00
Dan Stillman
7f4f2770ba Add notification banner when retracted items are found
And other retraction tweaks
2019-06-07 01:15:17 -04:00
Dan Stillman
48580c49d1 Retraction Watch integration
- Check for retracted items using data from Retraction Watch
- Show an X next to retracted items in the items list, and show a
  scary message at the top of the item pane with more info and links.
- Lookup is done in a privacy-preserving manner using k-anonymity --
  the server is unable to determine the specific items that exist in
  the client, so people who don't sync don't need to share any library
  data (though the server doesn't log the lookups anyway).

TODO:

- Pop up an alert when new items are found
- Show a confirmation prompt when citing a retracted item
- Support items without DOIs or PMIDs
- Add a proper PMID field and expand DOI to more item types so these
  values don't need to be parsed out of Extra
- Clear the banner immediately when all possible fields are cleared
  instead of waiting a few seconds
2019-06-06 09:17:21 -04:00
Dan Stillman
8274c1c231 Tweaks to document import/export
Remove unused code and adjust text

Follow-up to 48778f28
2019-05-14 23:36:00 -04:00
Adomas Ven
48778f2847 Document export-import UI and integration code (#1501) 2019-05-14 21:06:18 -04:00
Dan Stillman
ee3955f6f7 Fix font size in search bars when set to non-small sizes
Reactification regression
2019-03-29 06:35:35 -04:00
Dan Stillman
d9cee322cd Tag selector performance overhaul
- Use react-virtualized to render tags on demand, reducing the number
  of DOM elements from potentially tens of thousands to <100. This
  requires tags to be absolutely positioned, so sizing and
  positioning need to be precomputed rather than relying on CSS.
- Avoid unnecessary refreshes, speed up tag retrieval, and optimize
  sorting
- Debounce reflowing when resizing tag selector

Also:

- Scroll to top when changing collections
- Allow tags to take up full width of tag selector without truncation

Closes #1649
Closes #281
2019-03-28 06:28:34 -04:00
Dan Stillman
8cd5b09053 Add icon for linked PDF files 2019-03-04 03:20:37 -05:00
Dan Stillman
04779d8d1c Add import option for storing or linking files
This allows files in Mendeley imports to be stored and files in
RIS/BibTeX/etc. to be linked.

Closes #329
2019-03-02 06:24:33 -05:00
Dan Stillman
d0f7fd6df7 Add separate "Rename linked files" pref for auto-renaming
Defaulting to false

People who've been relying on auto-renaming of linked files for the last
year will have to turn this back on.
2019-02-26 22:23:43 -05:00
Dan Stillman
39eb2962a6 Run JavaScript: Support await and show errors
Adds a "Run as async function" checkbox that wraps the code in an async
function and displays the value returned by a `return` statement.

This also properly catches errors and displays them in the results pane.
2019-01-22 01:29:05 -05:00
Dan Stillman
f918e27e46 Add window for running arbitrary privileged JavaScript
This is a replacement for the Execute JS extension that could be used
with Zotero for Firefox.

To enable, go to the Config Editor in the Advanced pane of the
preferences and set devtools.chrome.enabled to true, and then restart
Zotero. A "Run JavaScript" option will appear in the Tools menu.
2019-01-22 00:12:34 -05:00
Adomas Venčkauskas
a24cada451 React Tag Selector polish, i18n and tests
- Added icon-button UI code for the menubutton
- Upgrade to React 16 to allow non-standard attrs, such as `tooltiptext`
to support XUL tooltips
- Add i18n support for React UI elements
- Update tests for reactified tag selector
2019-01-21 11:01:27 +02:00
Tom Najdek
897e74c7f1 Reactify the Tag Selector 2019-01-07 15:33:45 +02:00
Brenton M. Wiernik
cf66cc6424 Print highlight colors in Reports (#1618) 2019-01-03 16:11:09 -05:00
Adomas Venčkauskas
057bb3d037 Reduce citation style listbox size to make it fit on smaller displays 2018-11-05 15:14:38 +02:00
Adomas Venčkauskas
51d7959ccd Revert "Ensure the doc prefs window is smaller than screen height"
This reverts commit 0fd28959bf.
The change causes citation style listbox to fail displaying bottom
entries, a flexed listbox xul bug:
https://bugzilla.mozilla.org/show_bug.cgi?id=413336
2018-11-05 15:14:38 +02:00
Dan Stillman
91bac0e052 Add 2x icons for attachment-snapshot and conferencePaper 2018-10-26 00:54:40 -04:00
Martynas Bagdonas
ae7ef109b7 Add universal progress queues (#1573) 2018-10-05 01:56:46 -04:00
Adomas Venčkauskas
0fd28959bf Ensure the doc prefs window is smaller than screen height
Dynamically resizes the style picker up to the window height of 700px
2018-08-20 12:42:45 +03:00
Dan Stillman
e48a1a2abb Remove lots of old Zotero for Firefox code
We still run tests in Firefox, so not everything can be removed.
2018-08-17 03:17:08 -04:00
Dan Stillman
ff8df06c75 Improve error messages on certificate and connection errors
- Show a clearer message on a certificate error that includes the
  underlying error, which should make debugging much simpler. (No more
  checking in a browser and hoping it's the same connection.)
- Mention proxy server in message on startup proxy-check failure
- Include link to connection-error KB page on sync connection failure

Closes #1191
Closes #1513
2018-08-12 02:38:44 -04:00
Dan Stillman
b00704f54c Add context-menu icon for "Find Available PDF" 2018-08-07 15:39:31 -04:00
Dan Stillman
85667429a8 Fix 2x icon size in Edit Bibliography dialog 2018-07-18 13:15:09 -04:00
Dan Stillman
e67db436c6 Mendeley import: Add link to support page on encrypted DB
Also localize the name of the collection created during import
2018-06-12 06:16:59 -04:00
Dan Stillman
d98e89cf26 Add import option for creating a new collection
Use the new wizard for all imports (even if no Mendeley DB), and add a
page with a "Place imported collections and items into new collection"
option. If deselected, collections are added to the library root.
2018-06-05 22:39:23 -04:00
Dan Stillman
024b428fe6 Mendeley import: Add "Other…" button for selecting another DB
E.g., for selecting a DB from a backup

Addresses #1451
2018-06-05 19:57:20 -04:00
Dan Stillman
0f4e5ef508 Mendeley import
Accept Mendeley SQLite databases via File → Import… and perform a
direct import, including collections, timestamps, notes, attachments,
and extracted annotations.

When a Mendeley database is present, File → Import… shows a wizard that
lets you choose between a file and Mendeley for the source, and choosing
the latter shows a list of available databases in the Mendeley data
directory.

Known fields that aren't valid for a type are stored in Extra.

Files in the Mendeley 'Downloaded' folder are stored. Files elsewhere
are linked.
2018-06-05 07:52:01 -04:00
Dan Stillman
90677ae158 Add tick@2x.png 2018-05-08 19:17:35 -04:00
Dan Stillman
d44cc05c3d Use 1.25dppx for HiDPI icon threshold
On some laptops, scaling settings might cause the DPI to drop between
96 (1x) and 144 (1.5x), and downscaled icons are probably better than
upscaled ones.
2018-03-19 13:46:50 -07:00
Dan Stillman
81a75d79be Keep PDF handler menulist the right size 2018-03-08 22:03:59 -05:00
Dan Stillman
438d9669c1 Fix font size scaling of tag selector tags on macOS and Linux 2018-03-07 22:16:18 -05:00
Dan Stillman
44632e2218 Make the Windows UI somewhat less unpleasant
- Get rid of the hideous blue effect in the menubar and toolbar
- Slim down splitters
- Get rid of awful grippies except when collapsed (and make them
  slightly less ugly in the collapsed state)
- Reduce spacing of tags in tag selector
- Tweak twisty spacing
- Get rid of stray line to the right of item pane tabs

We may still want to get rid of the menubar (#366), and we can do better
than the ugly gray backgrounds (#365), but this is a start.

I'm not sure if everything will look the same on all Windows versions,
so this will need a little testing.

Closes #367
2018-03-02 20:28:51 -05:00
Dan Stillman
c28c8c820b Improved PDF recognizer and 1x PDF icons 2018-02-22 01:04:11 -05:00
Dan Stillman
a8312acfe0
Merge pull request #1420 from mrtcode/recognizer
New PDF recognizer
2018-02-21 13:59:50 -05:00
Dan Stillman
164fea0cec Updated journal article icon with fixed transparency 2018-02-20 12:19:43 -05:00
Martynas Bagdonas
991a50d090 New PDF recognizer 2018-02-20 09:32:06 +02:00
Sean Takats
d0aaa7165c
Adds 10 more HiDPI itemType icons. 2018-02-14 11:56:49 +01:00
Sean Takats
a8c19b4d8b
Probably adds HiDPI/Retina icon for thesis. 2018-02-14 09:58:16 +01:00
Dan Stillman
2d43518ef2 Reduce minimum width of Zotero pane to 670px
We could potentially do more, but this is the narrowest the pane can be
with the left pane collapsed without starting to hide toolbar icons, so
let's try this. (This will still hide the sync icon if the left pane
isn't collapsed.)

Closes #675
Closes #1183
2018-01-30 19:12:05 -05:00
Dan Stillman
48757f08ff Add missing spinners from 87cf336e2 2018-01-16 12:53:31 -05:00
Dan Stillman
17d4515002 Tweak padding in doc prefs 2018-01-16 12:53:31 -05:00
Dan Stillman
ea2feadbff Add spacing between icon and search field in Quick Format window 2018-01-08 01:08:44 -05:00
Dan Stillman
87cf336e22 Cancel active Quick Format search if another one starts
This fixes inconsistent results (#1349) from async searches finishing
out of order.

Also adds spinner when search is active
2018-01-08 01:08:28 -05:00
Dan Stillman
fa33eb72b2 Fix some UI issues with storage settings
- Enable/disable download mode drop-down for groups separately from user
  library
- Fixing hiding of terms of service message when Zotero storage isn't
  selected
2017-12-18 00:34:55 -05:00
Dan Stillman
392687f9ee Tweak a couple font sizes in Sync -> Reset pane 2017-12-11 17:34:01 -05:00
Dan Stillman
f353b7ca61 API-based "Restore to Online Library"
Restores the "Restore to Zotero Server" functionality, now using the
API:

1. Get all remote keys and send `DELETE` for any that don't exist
   locally.
2. Upload all local objects in full (non-patch) mode using only library
   version so that the remotes are overwritten.
3. Reset file sync history, causing all files to be uploaded (or, more
   likely, reassociated with existing remote files).

Since these are treated as regular updates on the server, they'll sync
down to other clients normally. Unsynced changes by other clients might
still trigger conflicts.

This and Reset File Sync History can also now be run on group libraries,
with a library selector in the Reset pane (which I forgot to do with
React).

The full sync option is now removed from the Reset pane, since there
wasn't ever really a reason to run it manually.

We should be able to reimplement Restore from Online Library (#1386)
using the inverse of this approach.

Closes #914
2017-12-08 00:42:03 -05:00
Dan Stillman
2c47b6403d Missed image files for 2x grippy dimples from 640846961a 2017-12-02 01:51:35 -05:00
Dan Stillman
c40e321c4b Add 2x version of creator type menu dropboxmarker 2017-11-01 14:41:39 -04:00
Dan Stillman
9c5a3ad820 Fixed 2x note column icon size 2017-10-19 02:54:19 -04:00
Dan Stillman
223c427888 Add missing 2x Mac collection/search icons and fix 2x sync icon size 2017-10-18 06:05:51 -04:00
Dan Stillman
30ae61d60e More 2x icon fixes
Follow-up to 5b2af4845b
2017-10-18 04:09:10 -04:00
Dan Stillman
5b2af4845b Toolbar button and icon overhaul
- New 2x toolbar button shapes and other icons from @johanneskrtek --
  this HiDPI-ifies basically all graphics other than a few remaining item
  type icons
- Use the Mac search dropmarker for all menu buttons, since it's wider
  and more pleasant. Reduce menu button padding slightly to compensate.
- Better toolbar button state for inactive window and pressed state
- Fix dropmarker overlap in tag selector icon

Closes #347, Better/retina-style OS X toolbar icons
Closes #1339, Create new button PNGs for macOS
2017-10-17 20:53:43 -04:00
Dan Stillman
dec6b864c9 Revert Create Bib/Doc Prefs font size change from db496e13c2
The font size is already controlled by the main font size pref, so this
was just making the font disproportionally bigger.
2017-09-30 19:08:05 -04:00
Dan Stillman
e9439c978b Allow setting data directory via -datadir command-line flag
Can be an absolute path or 'profile' to use 'zotero' subdirectory of
profile directory as in earlier versions (but which won't be treated as
a legacy location eligible for migration)

Closes #1305
2017-09-11 03:52:51 -04:00
Dan Stillman
945da5e008 Fix spacing of note editor and parent row in conflict resolution window 2017-08-09 02:04:04 +02:00
Dan Stillman
aea378f105 Fix spacing of full-text index state row 2017-08-09 02:04:04 +02:00
Dan Stillman
a92acfe7c4 Fix 2x icons in Timeline 2017-07-30 03:58:11 -04:00
Dan Stillman
9652b9f553 Fix logged errors and debug messages in timeline 2017-07-29 22:17:08 -04:00
Dan Stillman
fba412fe4a Hide broken Timeline copyright image (listed in About pane anyway) 2017-07-29 22:17:04 -04:00
Dan Stillman
db496e13c2 Increase font size and decrease style list height in doc prefs
On macOS this shows all default styles without a scroll bar.
2017-07-23 00:57:04 -04:00
Dan Stillman
33b40829b8 Add locale switcher to Advanced prefs
Closes https://www.zotero.org/trac/ticket/1733 (!)
2017-07-21 07:51:57 -04:00
Dan Stillman
8f2508e167 Fix alignment of "What's New" in About window 2017-07-12 03:38:14 -04:00
Dan Stillman
55b2dc39bf Fix Firefox 55 breakage (and remove unnecessary locale lookups)
We were manually looking up the current locale in various places and
passing it to nsIStringBundleService::createBundle(), but that hasn't
even been a supported argument for years. (I assume it was a long time
ago?)
2017-07-09 06:59:50 -04:00
Dan Stillman
91512469d5 Make About window narrower 2017-07-08 21:32:07 -04:00
Dan Stillman
a7e2e73e51 Update About dialog
- Replace Developers section with text that links to RRCHNM, the credits
page, and Get Involved.
- Remove dedicated zotero.org link
- Only show link underlines on hover
2017-07-08 19:11:45 -04:00
Dan Stillman
c55cacfb5a Update 2x icon styles 2017-07-07 05:31:37 -04:00
Dan Stillman
1da18e4ca7 Add "Stop Sync" button
Stops all syncing (not just file syncing like in 4.0) as soon as
possible.
2017-07-07 05:28:20 -04:00
Dan Stillman
b07fdc6335 Add intro text to middle pane when My Library is empty
This replaces the Quick Start Guide item in earlier versions.

Also increases size of My Publications intro text when the window is
wider.
2017-07-07 03:41:50 -04:00
Dan Stillman
d5a8a3420d Additional locale service updates for Firefox 54 compatibility
Follow-up to 0ac37ab65a
2017-05-26 01:37:54 -04:00
Dan Stillman
eb42152c42 UI fixes for read-only notes
- Don't show toolbar in read-only note editor
- Get rid of "undefined" button in CR window
- Better padding/alignment in CR window
2017-05-12 20:01:47 -04:00
Adomas Venčkauskas
5a55a82594 Reduce text in document preferences, increase style list height
Closes zotero/zotero-word-for-windows-integration#30
2017-05-03 13:09:04 +03:00
Dan Stillman
5ff2a59f87 Move My Publications into My Library
Instead of My Publications being a separate library, have it be a
special collection inside My Library. Top-level items can be dragged
into it as before, and child items can be toggled off and on with a
button in the item pane. Newly added child items won't be shown by
default.

For upgraders, items in the My Publications library will be moved into
My Library, which might result in their being duplicated if the items
weren't removed from My Library. The client will then upload those new
items into My Library.

The API endpoint will continue to show items in the separate My
Publications library until My Publications items are added to My
Library, so the profile page will continue to show them.
2017-04-12 19:26:58 -04:00
Dan Stillman
fe186333be Drastically speed up tag selector refresh with many tags
When refreshing, if fewer than 100 tags to show, just create them from
scratch instead of updating the full set. Otherwise, remove the full set
from DOM and add it back in after updates to avoid reflows (from #1204).

There are various things that could be done to optimize this further
(avoiding unnecessary sorting during full refreshes, calculating a hash
of the full set and not updating it every time), but we should probably
just replace it with @tnajdek's React version first.

Closes #1204
2017-03-27 20:45:22 -04:00
Dan Stillman
e5ba7612bc About pane updates
- Make version copyable
- Include "What's new" link to changelog
- Update some links and descriptions

To-do:

- Replace dev credits with a nice statement like in the Firefox About pane
2017-01-15 15:29:02 -05:00
Dan Stillman
98ab5ac8bf Remove lines in treeview separators
Not ideal -- we can't reduce the height of separators, so there's too much
padding between sections -- but still better (and way better on Linux, where a
thick black line was being drawn instead of the light dashes on macOS).
2017-01-03 06:17:01 -05:00
Dan Stillman
c0f40fac81 Item pane tweaks
- Remove colons after labels
- Non-bold labels
- More padding at top of pane
- Increase space between label and field
2016-12-29 04:01:00 -05:00
Dan Stillman
e75827bf28 Widen style dropdown in note editor to accommodate other languages 2016-12-26 03:18:08 -05:00
Dan Stillman
dc04a1231c Upgrade to TinyMCE 4.5.1
- New flat theme (with padding tightened a bit from the default to fit
  in right-hand pane)
- Adds search/replace within notes
- Adds URL autolinking
- Image pasting/dragging is now properly disallowed (though TinyMCE 4
  has hooks that may allow us to actually support this by automatically
  creating attachments)
- New blockquote style with color bar
- Replaces custom context menu on link click with built-in version

 To-do:

- Fix display of pop-ups, which are now modal dialogs within the note
  frame instead of pop-up windows, to stay fully within the frame
- Localize (more important now that there are tooltips)
- Support image dragging
- Update elements list for HTML5, for better drag-and-drop?
- Move directionality control to context menu instead of taking up
  toolbar space?
- Evaluate other plugins for potential inclusion
- Show additional controls in separate note window?
- Fix opacity of text in tooltips

Closes #451, closes #421
2016-12-25 23:19:49 -05:00
Dan Stillman
bd9501218e Apply UI font size change immediately
And change "Changes take effect in new windows" to "Changes take effect
after restart"

(The note font size still requires a restart, as do the shortcut keys in
the Advaned pane.)
2016-12-22 06:58:02 -05:00
Dan Stillman
3b6b6aa36b Remove tab mode
Closes #1135
2016-12-21 05:11:21 -05:00
Dan Stillman
e8d8f4a0a3 Use spinner instead of items pane message for search
Fixes #1116, and is generally more pleasant
2016-11-21 02:59:31 -05:00
Dan Stillman
d44eeb752b Fix error on CR of child note, and show parent item title in merge pane 2016-07-07 05:18:02 -04:00
Dan Stillman
fc857dc496 Close #1053, Manual sync option in library context menu
This also reworks how the collection context menu is built to do more in
JS instead of XUL, though it can't do it all in JS because some
localized strings are in zotero.dtd and are used in standalone.xul too.
2016-07-02 03:15:37 -04:00
LinuxMercedes
6bff554976 Add a second horizontal layout to Zotero for small screens (#1010) 2016-05-27 20:57:29 -04:00
Dan Stillman
758af2be9e Align "Set Up Syncing" button in prefs 2016-04-26 16:27:26 -04:00
Dan Stillman
49d85dbe0f My Publications wizard changes
- Only show first pane (without Sharing pane) if no files or files
  aren't included
- Update authorship checkbox to reflect file include setting to avoid
  confusion
- Clarify in intro text that license applies to files, not notes --
  notes here are no different than notes in any public library, so it's
  sort of up to the user to clarify those if they're substantial enough
  for it to matter
- Adjust alignment of authorship checkbox if more than one line
2016-04-11 03:41:32 -04:00
Dan Stillman
df1cdb9754 Abstract field tweaks
- Allow clicking on non-editable abstract field to expand/collapse it
- Change cursor when hovering over abstract to show it can be toggled
- Default abstracts to expanded
2016-04-06 02:04:06 -04:00
Dan Stillman
1e8b74d9b9 Tweak item pane padding
The item pane scrollbox was actually padded on the outside. This removes
that padding, which slightly increases the viewable content in the pane.
2016-04-05 15:07:49 -04:00
Dan Stillman
6ec8e7800f Fix double-size height of feed add buttons on HiDPI 2016-04-01 05:54:05 -04:00
Dan Stillman
7aa6d98f35 Use library icon for New Library button, and add more HiDPI icons
Includes HiDPI icons for feed rows, which weren't showing up before
2016-04-01 05:37:25 -04:00
Adomas Venčkauskas
3dc0ad3745 Add feed menu buttons. Close adomasven/zotero#9. 2016-04-01 12:25:37 +03:00
Dan Stillman
fc6c113f25 Show intro text for My Publications in middle pane when no items
ZoteroPane.setItemsPaneMessage() and setItemPaneMessage() can now
optionally take a DOM node instead of a string.

Closes #705
2016-03-24 09:03:59 -04:00
Adomas Venčkauskas
12fc6cfbe8 Various feeds changes
- Hide notes, tags and related for feed items in itembox
- Add feed support for <enclosure> elements
- Add feed syncing methods for synced settings (additional work is
  needed on the sync architecture to download synced settings from the
  server)
- Change feed item clear policy to be less aggressive
- Adjust for deasyncification
- Disable translate-on-select
- Close adomasven/zotero#7, Remove context menu items from feeds
2016-03-22 06:56:36 -04:00
Adomas Venčkauskas
05c0f1f3fc Closes #905, Move library creation buttons into menu 2016-03-22 06:56:35 -04:00
Aurimas Vinckevicius
2d46e3d59b Various feeds changes 2016-03-22 06:55:48 -04:00
Aurimas Vinckevicius
2c3eb205ab Implement read/unread functionality in feeds 2016-03-22 06:14:16 -04:00
Aurimas Vinckevicius
9686758c7d Add feeds to collections tree view and items tree view 2016-03-22 06:14:15 -04:00
Aurimas Vinckevicius
2e56e2f659 Add feed button and Add Feed dialog 2016-03-22 06:14:15 -04:00
Dan Stillman
244a52ad22 Merge branch '4.0' 2016-03-06 01:20:51 -05:00
Dan Stillman
3abb77d318 Add gray and 48px webpage icons for use in Chrome 2016-03-05 01:28:30 -05:00
Dan Stillman
4190412ee4 Allow PDF saving via connectors
If 'pdf' flag is included in object POSTed to saveSnapshot, import the
PDF directly and save as top-level item. Currently the PDF is
redownloaded -- there might be a better way to get the PDF data over
without redownloading. (It uses passed cookies, though, so gated PDFs
should still work.)
2016-03-05 01:20:42 -05:00
Dan Stillman
e137a05201 Merge branch '4.0' 2016-02-11 02:33:16 -05:00
Dan Stillman
88f1636d08 Toolbar icon tweaks
- Fix spacing on Windows and Linux in latest Firefox versions
- Tweak icon colors on Windows and OS X
- Adjust Z SVG to take up full height, so Z is a full 16px instead of
  14px with slight anti-aliasing
- Use generated PNGs instead of SVG for Z toolbar icons, to remove the
  need for complicated size rules
- Add separate platform-specific .svg files that are used by a
  zotero-build script, make-z-icons, to generate the Z PNGs; the main
  SVG is still used directly in the menu panel and customization
  palette, with platform media queries to determine the coloring
2016-02-10 03:33:01 -05:00
Dan Stillman
24e8c2e8cb Closes #758, Replace tab icon
Switch to red Z alone. Only 16px for now, since that's what we have in the red
Z.
2016-02-08 02:18:48 -05:00
Adomas Venčkauskas
ffd9a07164 Restores sync credential functionality of 4.0.
Improves UX of sync authentication.
The account is now linked and unlinked and an API key related to
the client is generated transparently in the background.
The API key is deleted on unlinking.
No sync options are allowed before linking an account.
2015-12-14 23:55:28 +00:00
Dan Stillman
b52cfae225 Show "Delete Permanently..." button in right-hand pane in trash 2015-11-03 17:08:54 -05:00
Dan Stillman
7f43ca9503 Merge branch '4.0' 2015-11-01 21:22:13 -05:00
Dan Stillman
0cef5f8b18 Tweak QuickFormat dropmarker positioning 2015-08-13 20:05:36 -04:00
Simon Kornblith
8e40bde671 Make QuickFormat text bigger and border smaller on OS X 2015-08-13 19:14:53 -04:00
Dan Stillman
0aecaad761 Update conflict resolution for API syncing
This will appear much less frequently, since non-conflicting field changes on
both sides can be resolved automatically, but genuine field conflicts still
require manual conflict resolution.

The merge pane is no longer editable, since the itembox code to do that is
async and can't run in a modal window, but it's not really necessary,
particularly with conflicts happening less frequently.

TODO:

- Remote item deletions
- File conflicts
- Maybe handle some edge cases where the conflicted items fail to save
2015-08-06 04:14:49 -04:00
Dan Stillman
5c523d8694 Merge branch '4.0' 2015-07-18 07:09:53 -04:00
Dan Stillman
0ba64b5194 Show guidance panel nav buttons on Linux 2015-07-05 12:58:36 -04:00
Dan Stillman
9d2b097605 Fix toolbar icons in non-nav-bar toolbars on OS X and Windows
...which only required redoing the entire styling.

Not yet done on Linux
2015-07-02 05:50:57 -04:00
Dan Stillman
1d6483e68a Fix #773, Zotero combo icons dispersed under more tools
And fix save button hover height on Windows, which somehow got out of
whack again.

Might need further tweaking on Linux

Need to find a better way to do these buttons...
2015-06-29 05:59:19 -04:00
Dan Stillman
99dd1c0697 Merge branch '4.0'
Since modal windows (e.g., the Create Bib window and the Quick Copy site
editor window) can't use yield, style retrieval
(Zotero.Styles.getVisible()/getAll()) is now synchronous, depending on a
previous async Zotero.Styles.init(). The translator list is generated in
the prefs window and passed into the Quick Copy site editor, but it's
possible the translators API should be changed to make getTranslators()
synchronous with a prior init() as well.
2015-06-27 16:59:58 -04:00
Dan Stillman
4868095820 Guidance panel for new save icon
For new installations, a panel will show for the Z icon with a ">"
button to go to a second panel for the save icon. For existing
installations, a panel will show just for the save icon. In both cases,
the panels are non-auto-hiding but are dismissed if clicked on or when a
new content page is loaded.

There's also a new close button, but it's not enabled currently. Might
be useful for panels with embedded links where an accidental click on
the panel alone shouldn't close the panel (like the Firefox customize
mode wizard).
2015-06-25 22:51:05 -04:00
Dan Stillman
33dedd1753 Tags overhaul [DB reupgrade]
- Simplified schema
- Tags are now added without reloading entire tag selector
  - On my system, adding 400 tags to an item (separately, with the tag
    selector updating each time) went from 59 seconds to 42. (Given that
    it takes only 13 seconds with the tag selector closed, though,
    there's clearly more work to be done.)
- Tag selector now uses HTML flexbox (in identical fashion, for now, but
  with the possibility of fancier changes later, and with streamlined
  logic thanks to the flexbox 'order' property)
- Various async fixes
- Tests
2015-06-23 05:21:58 -04:00
Dan Stillman
a740658452 Relations overhaul (requires new DB upgrade from 4.0)
Relations are now properties of collections and items rather than
first-class objects, stored in separate collectionRelations and
itemRelations tables with ids for subjects, with foreign keys to the
associated data objects.

Related items now use dc:relation relations rather than a separate table
(among other reasons, because API syncing won't necessarily sync both
items at the same time, so they can't be stored by id).

The UI assigns related-item relations bidirectionally, and checks for
related-item and linked-object relations are done unidirectionally by
default.

dc:isReplacedBy is now dc:replaces, so that the subject is an existing
object, and the predicate is now named
Zotero.Attachments.replacedItemPredicate.

Some additional work is still needed, notably around following
replaced-item relations, and migration needs to be tested more fully,
but this seems to mostly work.
2015-06-01 20:28:30 -04:00
Dan Stillman
c9aed60acd Rename error/warning icons 2015-05-19 22:42:43 -04:00
Dan Stillman
fbef911cb7 Add wizard for My Publications
Show a wizard after items are dragged to My Publications choosing
whether to include files and notes and choosing sharing settings for the
items. Sharing options are Creative Commons licenses, CC0, "All rights
reserved", or keeping the existing Rights field if available.

Also blocks collections, searches, linked file attachments, and
top-level attachments/notes from My Publications at the data layer, but
not yet from the UI in all places (so it can crash if you try).

Todo:

- Block certain UI actions with nice messages
- Show a nice scrollable list of items in the wizard to allow selecting
  specific files/notes, instead of just having checkboxes for files and
  notes that apply to all dragged items
- Show an explanation of My Publications in the right-hand pane when no
  items are selected
- Maybe adjust handling when no attached files/notes, since it might be
  a bit alarming at the moment to see sharing options for metadata
  entries
2015-04-26 19:41:45 -04:00
Dan Stillman
fec43f1f62 Merge branch '4.0' into api_syncing 2015-04-13 02:01:43 -04:00
Dan Stillman
2afebc79d0 Set tree image height to 16px everywhere
Windows maybe also doesn't handle HiDPI tree images correctly otherwise
2015-04-07 14:37:13 -04:00
Dan Stillman
af871a3fd5 Add 2x versions of many icons
Courtesy of Pastel SVG (2x famfamfam)

I didn't add 2x versions for any composite icons or any Fugue icons.

Also:

- Removed some unused/redundant images
- Switched to shadowless versions for a couple Fugue icons
2015-04-06 17:24:55 -04:00
Dan Stillman
4625b7081e Add checkbox to use one side for all remaining conflicts
This should be rewritten in a way that allows it to be unit tested, but
it seems to work.
2015-03-26 20:34:23 -04:00
Dan Stillman
bdd69d0a53 Merge branch '4.0' into api_syncing 2015-03-16 23:41:10 -04:00
Dan Stillman
a03772cae7 Merge branch 'master' into api_syncing
Note that this loses conflicting changes to translate_item.js from 849803473a,
so those will need to be reapplied if applicable. /cc @aurimasv, @mtd91429
2015-03-16 15:23:07 -04:00
Dan Stillman
bf36a988e4 Initial My Publications support
Adds a "My Publications" source after "My Library", implemented as a
separate library. Top-level items can be dragged in and removed.

(This doesn't currently work without disabling Quick Copy.)

Also:

- Make "Group Libraries" an unselectable header instead of a container,
  and don't indent group libraries
- Fix relation purging, which maybe never worked
- Pass only libraryID/key on deletes (which should speed them up)
- Fix async item cloning/copying
- Fix miscellaneous other bugs

To-do:

- Confirmation dialog on drag
- API support
2015-03-16 12:18:54 -04:00
Dan Stillman
2681a508b4 Merge pull request #664 from gracile-fr/prefs-pane
Move shortcut keys prefpane to tab of Advanced (#646)
2015-03-09 18:54:39 -04:00
gracile-fr
0a4fcc90ac Move shortcut keys prefpane to tab of Advanced
[and delete unused "#zotero-prefpane-keys checkbox" (there used to be a checkbox to "Try to override conflicting shortcuts", which has been definely removed by 5b34dce40f )]
2015-03-09 12:08:31 +01:00
gracile-fr
1ac54c4b13 Move "#styleManager-updated" under "Cite Pane" code
It was lost under "Shortcut Keys pane" code.
2015-03-09 12:06:55 +01:00
Dan Stillman
98263fb485 Fix padding of single save button in palette
(At least on OS X. This might need to be added back for Windows/Linux.)
2015-03-08 01:43:12 -07:00
Dan Stillman
a1bed8b5ad More icon tweaks
- New dedicated Zotero button, available in the Customize palette
- Remove "16px" Z SVG and just render "32px" one at the smaller size
  (there's a slight difference at the edges, but we should probably redo
  it anyway so that dark lines reach all the way to the bottom)
- Change "Open Zotero" back to just "Zotero", since 1) it's for closing
  too, 2) it can also just bring Standalone to the front, and 3) "Open
  Zotero" looks weird and inconsistent in the menu panel next to things
  like "Preferences"
- For now, show single large Z for combo buttons in customization
  palette with "Zotero (Combo)", though we can probably do something
  better.
- Fix some HiDPI bugs when moving items between areas

Still need a layout for the panel for the combo buttons
2015-02-27 03:35:18 -05:00
Dan Stillman
93e3f68be8 Center align and pad error paragraphs on center pane crash 2015-02-24 22:07:30 -05:00
Dan Stillman
7607e49ae7 Don't color gray webpage on hover 2015-02-22 06:46:07 -05:00
Dan Stillman
1069b483cc Fix toolbar buttons on Linux
Known issues:

- The dropmarker segment doesn't get a background highlight color on
  hover. And now you'll notice. Sorry.
2015-02-22 06:46:07 -05:00
Dan Stillman
9a87f15956 Toolbar button overhaul
The address bar icon now lives in a new combo buttonset containing the main Z, "Save to Zotero", and a dropmarker for the former save-icon right-click menu (which we could conceivably use more heavily going forward now that it's more accessible). There's also a separate dedicated Save to Zotero (+ dropmarker) button, not shown by default, that can be swapped in for people who don't want the Z.

The tooltip for the save icon also now shows the keyboard shortcut (though that unfortunately makes for a lot of parentheses).

Known issues:

- Untested on ESR
- Untested on Linux
- Might need refinement on Windows
- Weird 1px horizontal area at bottom of save button that highlights dropmarker (at least on OS X)
- Probably needs a third button option with just the Z icon so that the main button and the save button can be placed separately (e.g., save button in toolbar, Z in panel)
- Combo buttonset needs an inactive single-icon state for the palette and either needs a state for the panel (which might need to span all three columns?) or if possible should just move the other two icons in and put itself back in the palette
- The absurd amount of time and CSS it took to get the toolbar icons looking right on OS X, since apparently no one has put a menu-button inside a combined toolbar button before
2015-02-21 04:16:34 -05:00
Dan Stillman
88be886612 Sync error icon is too close to sync icon (at least on OS X)
Might need to restore this on Windows/Linux where the button styles are
different
2015-02-19 15:42:36 -05:00
Dan Stillman
424ee72f58 Additional icon changes
- Add high-res webpage icon
- Show webpage icon in grayscale when no translator (except on hover, for fun)
- Remove pre-Australis icons
- Switch to CustomizableUI API for toolbar icon
- Move icon generation code to separate file
- Add Zotero.hiRes flag for Retina/etc. displays (available only after a window
  has loaded)

Known issues:

- While the gray is mostly to be less distracting, the gray/color distinction
  will probably be lost on most people. A separate guidance panel for the gray
  icon might help.
- On pages with frames, the webpage icon appears first and then is replaced
  with a translator icon.
2015-02-18 17:10:19 -05:00
Dan Stillman
0eefd24d92 Fix color of Z icon on OS X for current Firefox theme
The Firefox theme changed at some point since Australis to use darker,
non-gradient icons. (Sorry ESR users.)

Not sure if this needs to change on Win/Linux too.
2015-02-18 05:39:29 -05:00
Frank Bennett
5cfe4db098 Use nav-bar as target ID for Zotero nav bar icon
The statusBarIcon pref is retained to maintain state across
starts.
2015-01-30 22:42:34 +09:00
Philipp Zumstein
d5b4c31575 Right pane (item-pane) can be collapsed
This belongs to issue #509 and was asked several times in the forum.

 * Add attribute `collapse="after"` to the splitter and add a grippy element.
 * To remember its state after restart I copied `zotero-persist="state"`.
 * Handle zotero-items-splitter the same as zotero-collections-splitter in zotero-platform/mac/overlay.css
 * Change min-width to 250px for #zotero-item-pane in zotero/overlay.css.
 * Update the function `updateToolbarPosition` in zotero/zoteroPane.js:
   * The width of the items-toolbar is corrected if the left pane is collapsed (and the icons are grouped on the left margin together).
   * If the right pane is collapsed, then the items-toolbar is made flexible while making the item-toolbar unflexible. As a result the search box and locate icon are flushed right to the other icons.
2015-01-07 10:41:18 +01:00
MTD
849803473a Address silent failure of unrecognized URIs in Attach Link to URI
Generated files for a more robust attached-link-dialog and localized strings
* AttachLink.js
* AttachLink.xul

zotero/xpcom/attachments.js
* created function cleanAttachmentURI
* in function linkFromURL, removed the regex constraints and the comment list of valid protocols
* removed outdated function declaration from beginning of script
* Improved automatic title generation mechanism
2014-12-16 11:20:55 -05:00
Dan Stillman
20dd8c89d8 Remove "CSL" column in Cite -> Styles preferences 2014-12-09 19:19:40 -05:00
Dan Stillman
aab3276276 Use old-style searchbox in Yosemite pre-Fx34
Yosemite introduces a new search textbox shape, but Firefox still uses
the old focus ring shape until 34, so we fake the old searchbox shape
for earlier versions.
2014-10-14 02:22:44 -04:00
Dan Stillman
755ead2119 Update zotero:// extensions (report, timeline, etc.) for async DB, and more
- Protocol handler extensions can now handle promises and can also make
  data available as it's ready instead of all at once (e.g., reports now
  output one entry at a time)
- zotero:// URL syntaxes are now more consistent and closer to the web
  API (old URLs should work, but some may currently be broken)

Also:

- Code to generate server API, currently available for testing via
  zotero://data URLs but eventually moving to HTTP -- zotero://data URLs match
  web API URLs, with a different prefix for the personal library (/library vs.
  /users/12345)
- Miscellaneous fixes to data objects

Under the hood:

- Extensions now return an AsyncChannel, which is an nsIChannel implementation
  that takes a promise-yielding generator that returns a string,
  nsIAsyncInputStream, or file that will be used for the channel's data
- New function Zotero.Utilities.Internal.getAsyncInputStream() takes a
  generator that yields either promises or strings and returns an async input
  stream filled with the yielded strings
- Zotero.Router parsers URLs and extract parameters
- Zotero.Item.toResponseJSON()
2014-09-09 00:36:29 -04:00
Aurimas Vinckevicius
dc5ccffe43 Use Mozilla's colors for itembox and tagbox background
This way, the colors play nicely with Windows themes (e.g. high contrast)
Re https://forums.zotero.org/discussion/38870/make-zotero-fully-recognize-windowsff-high-contrast-themes/ and https://twitter.com/stuffilike2know/status/504167872567189504
2014-08-26 03:11:24 -05:00
Dan Stillman
59f534d56f Error report improvements
- Always allow "Report Errors...", even when no errors

- Show submitted diagnostic info in report

- Use white background and unitalicized text for report

- Make window larger by default
2014-05-26 20:07:41 -04:00
Dan Stillman
9f91d240b0 Library switcher in advanced search window
When opening the advanced search window, the current library is
selected, and a different library can be selected to change the search
scope. If a library is read-only, the saved search button is disabled.
For saved searches, the appropriate library is selected and the
drop-down is disabled.

Also:

- Close the advanced search window after a search is saved
- The default name for saved searches ("Untitled 2", etc.) was based on
  collections rather than searches
- Once an initial search has been performed, the drop-downs and
  checkboxes now update the results
- More consistent spacing in advanced search window
- (dev) Zotero.DB.getNextName() now takes a libraryID as its first
  parameter instead of always using My Library; the old parameters are
  deprecated but still work
2014-05-15 21:41:22 -04:00
Dan Stillman
aaa259f77c Fix font size of "any"/"all" line in advanced search window
It was previously larger than the default and didn't obey the font size
pref.
2014-05-15 21:41:21 -04:00