Commit graph

6440 commits

Author SHA1 Message Date
Dan Stillman
b2c9a42103 Prevent Add Item by Identifier button from flashing on textbox click
Nesting the panel in the toolbarbutton seems to cause the button to
appear as if it were clicked on any click/right-click in the textbox,
and I couldn't find a way to prevent that with event.stopPropagation().

Also cleans up this code in general
2017-12-10 23:16:01 -05:00
Dan Stillman
383f8d2219 Fix context-menu paste into Add Item by Identifier
The context menu was triggering onpopuphidden, which was clearing the
textbox.
2017-12-10 17:20:13 -05:00
Dan Stillman
df38f4ded7 Avoid upload retry loops
- Don't try uploading an object more than 5 times
- Don't retry a child item if the parent item failed too
2017-12-10 03:45:08 -05:00
Dan Stillman
c723e1ebe4 Select text in search bar when using Find menu option (or shortcut)
https://forums.zotero.org/discussion/69305
2017-12-10 02:23:39 -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
885ed6039f Add comment regarding strToDate()'s month handling in retrieveItem() 2017-12-08 00:42:03 -05:00
Dan Stillman
e01cb38c5d Avoid deprecation warning in recognizePDF 2017-12-08 00:42:03 -05:00
Dan Stillman
9a43b53ebe Show file path instead of "(null)" when installing style via file open
And fix deprecation warning from passing an nsIFile

(Also updates the Zotero.Styles.install() documentation to note that the
first parameter's `file` property can be a string path.)
2017-12-08 00:42:03 -05:00
Dan Stillman
045f1fbb7e Add utility functions for building drop-down library lists
A XUL one for the current use in Advanced Search and an HTML one for
future uses. Sets the value to libraryID and adds data attributes for
editable/filesEditable on the HTML one.
2017-12-08 00:42:03 -05:00
Dan Stillman
4c337e5294 Show friendlier error on setDates() failure during file sync download 2017-12-02 04:14:47 -05:00
Dan Stillman
6941f96a5a Clear Windows read-only attribute when storing file 2017-12-02 04:11:35 -05:00
Dan Stillman
c3df3fcebf Fix "Access is denied" file sync error with read-only files
If the read-only file is set on a file in the 'storage' directory, it's
added to the ZIP for snapshot/WebDAV syncing, and when extracted the
setDates() call was failing. This clears the read-only attribute (and
system and hidden) when extracting all files.
2017-12-02 04:09:52 -05:00
Dan Stillman
cdaf73b3d0 Fix sync error after resetting read-only group
If an item needed to be erased, it would fail with "Cannot edit item in
read-only library", because the deletion didn't skip the edit check.
2017-12-02 01:35:23 -05:00
Dan Stillman
640846961a 2x grippy dimple 2017-12-01 13:09:06 -05:00
Dan Stillman
fb74fe76b7 Update citeproc-js to 1.1.181 2017-12-01 02:10:05 -05:00
Dan Stillman
b397ee2281 Show sync error about embedded images in notes for attachment notes too 2017-11-30 23:51:36 -05:00
Adomas Venčkauskas
6970556dbd Clone feed items if translation returns no items. Closes #1377 2017-11-30 11:39:34 +02:00
Dan Stillman
9b9af65f8a Don't show Firefox profile access message on empty 'zotero' dir
But maybe do show in cases where it didn't show before, since we were
using exists(), which can return false for inaccessible directories.
2017-11-29 03:57:09 -05:00
Dan Stillman
e2eef779c5 Fix localized sorting of creator types
Don't just rely on "Author" being first
2017-11-29 00:28:05 -05:00
Dan Stillman
76b96a8b07 Fix error selecting item with item type without creator types
https://forums.zotero.org/discussion/69118/
2017-11-29 00:27:27 -05:00
Dan Stillman
575968929c Skip auto-sync on stream notification if library version is up to date
This avoids an extra no-op sync after an upload when the notification
for the change comes back down from the streaming server.
2017-11-27 20:48:24 -05:00
Dan Stillman
baeb846b5c Simplify quick search handling in itemTreeView notify() 2017-11-27 20:48:24 -05:00
Dan Stillman
7bbb4a8e2d Avoid logged deprecation warning in external note editor 2017-11-27 19:56:14 -05:00
Dan Stillman
202192bc72 Restore use of beginUpdateBatch/endUpdateBatch in itemTreeView notify()
Not sure why this was disabled, but it prevents flashing of child items
when a child item is modified.
2017-11-27 19:56:14 -05:00
Dan Stillman
ae21b3113e Avoid unnecessary item map refreshes during sorting 2017-11-27 19:56:14 -05:00
Dan Stillman
a854ce9dce Filter stack in debug output when using debug.stackTrace pref 2017-11-27 19:56:14 -05:00
Dan Stillman
a70a517f7e Don't start transaction to clear search temp table
This might fix loss of item focus when editing a note in a search,
possibly starting with fbf2fbe0c6.
2017-11-27 19:56:14 -05:00
Adomas Venčkauskas
da387874a2 Temporarily restore double text setting in LibreOffice for footnotes
Regressions from 921b21c3. Footnotes in LibreOffice lose styling
2017-11-27 17:24:42 +02:00
Dan Stillman
8241149079 Fix sync error if item with no content type somehow was indexed
https://forums.zotero.org/discussion/68954/mimetype-is-undefined-error

Not sure how this could happen.
2017-11-22 04:22:08 -05:00
Dan Stillman
dfea8b5a6a Localize "Verify Server" 2017-11-22 03:15:37 -05:00
Dan Stillman
4a6922ba48 Check for lost legacy data directory after migration
The check only does anything if we're using the default location, and
otherwise if we migrate the wrong directory (say, because somebody
opened Standalone 4.0 before upgrading to 5.0) we won't prompt until the
next restart.
2017-11-22 03:15:37 -05:00
Adomas Venčkauskas
921b21c3e1 Remove the additional setText() call for libreoffice plugin
Possible since zotero/zotero-libreoffice-integration@2deea6bd46
2017-11-21 11:36:56 +02:00
Dan Stillman
88a6e4f79f Don't send inPublications=false in 'full' mode for group items 2017-11-20 16:27:45 -05:00
Dan Stillman
f0b7a212e5 Skip migration on error checking whether dataDir is on different drive 2017-11-20 11:38:15 -05:00
Dan Stillman
10a5d8d02e Check for Firefox profile access at startup and show warning
f40b7ae6ac didn't help with people who've already upgraded, so check at
startup and show a warning if the profile is inaccessible until 1) the
profile has been accessed once or 2) the user checks "Don't show again"
in the warning dialog.

Also fix Zotero.Profile.getDefaultInProfilesDir() to properly throw an
error if it can't access the default directory.
2017-11-17 22:49:57 -05:00
Dan Stillman
f40b7ae6ac Show warning on Firefox profile access error after installation
https://www.zotero.org/support/kb/data_missing_after_zotero_5_upgrade
2017-11-17 09:36:35 -05:00
Adomas Venčkauskas
9bf4bac292 Reduce spacing in collection pane on Linux. Closes #1369
The collections pane height change in bf36a98 made the linux
collection pane vertical spacing very big. This resets it to previous spacing
2017-11-17 13:19:09 +02:00
Dan Stillman
04a730da7f More complete fix for invalid creator row error at startup
Follow-up to 7d3311679e
2017-11-17 02:56:20 -05:00
Dan Stillman
7d3311679e Add creator fix to integrity check, and run at startup if necessary 2017-11-16 06:43:18 -05:00
Dan Stillman
1cb49cc5d3 Fix DB integrity check when there's only one of a given problem 2017-11-16 05:54:59 -05:00
Dan Stillman
810e0a3239 Add Zotero.getStringFromBundle()
The same as Zotero.getString(), but takes an nsIStringBundle as the
first parameter. Extensions could use this to get the same getString()
features with their own properties files.
2017-11-16 01:18:42 -05:00
Dan Stillman
c7fd46e6b4 Don't ignore whitespace when sorting
Intl.Collator's ignorePunctuation ignores whitespace too, so stop using
it, since it produces much weirder results than sorting on punctuation does.
2017-11-16 01:17:24 -05:00
Dan Stillman
20ad57a368 Update submodules 2017-11-12 18:47:32 -05:00
Dan Stillman
fbf2fbe0c6 Fix extremely slow tag query with some SQLite databases
Reverts a80f13099, "Avoid temporary table when getting tags for current view",
fixes a couple things, and removes the unused Zotero.Tags.getAllWithinSearch().

Fixes #1290
2017-11-11 04:11:30 -05:00
Adomas Venčkauskas
08eefeaf57 Don't send translator error from connectors reports in private-browsing mode 2017-11-10 14:20:40 +02:00
Dan Stillman
6b031249ac Fix HTTP breakage in bb1cbdff26 2017-11-08 02:18:33 -05:00
Dan Stillman
bb1cbdff26 Fix responseCharset parameter in HTTP methods
Setting `contentCharset` on the channel doesn't seem to work anymore, so
use `overrideMimeType()` instead like we do in the connector. As noted
in the comment, we should probably have a `responseContentType`
parameter instead, since that's what XHR actually allows. For the moment
we just use `text/plain`.
2017-11-07 16:53:14 -05:00
bwiernik
e935001586 Support short DOIs in cleanDOI() and update DOI copyAsURL prefix (#1356) 2017-11-07 16:48:12 -05:00
Adomas Venčkauskas
24507a73f6 Save to current collection from /connectors/savePage.
Closes #1351
2017-11-06 12:57:01 +02:00
Adomas Venčkauskas
8012829992 Ignore translator browserSupport in connectors except bookmarklet
Addresses zotero/zotero-connectors#197
2017-11-06 12:35:30 +02:00