Commit graph

3779 commits

Author SHA1 Message Date
Dan Stillman
e177e3e718 Optimize local file modification checks during file syncs
- On manual sync or the first auto-sync of a session, check all files
- During other auto-syncs, check only files previously modified or
  opened externally via Zotero (including Show File) within the last 3
  hours
- Every 3 hours, do a full check of all files even if it's an auto-sync
- Spin event loop during synchronous file checks to avoid hanging the UI
- Zotero.Sync.Runner.sync() now takes an options object (e.g.,
  options.background)

Todo:

- Provide feedback on last full check in sync icon tooltip?
- Auto-sync on app focus, if this speeds up syncs enough?
2013-08-02 00:45:26 -04:00
Dan Stillman
dc8998c5bc Add Firefox-wide shortcut (Ctrl/Cmd-Shift-S) for "Save to Zotero"
Also: Don't show Firefox-specific shortcut keys in Standalone prefs
2013-07-31 23:19:19 -04:00
Dan Stillman
f0c5c50bd4 Blacklist Firefox HealthReport errors 2013-07-30 15:48:53 -04:00
Dan Stillman
ec47a31000 Fix warning in Nightly about yield without a value 2013-07-29 02:26:09 -04:00
Dan Stillman
2736e7e6d1 Use Ctrl-Shift for all shortcuts on Windows/Linux instead of Ctrl-Alt
https://forums.zotero.org/discussion/25927/#Item_5
2013-07-28 20:18:24 -04:00
Simon Kornblith
670f272b32 Alter message on auto-update
Avoid ambiguously implying that Linux users should be running Zotero as
root, and tell them to fix the permissions on the Zotero executable instead.

See https://forums.zotero.org/discussion/31020/
2013-07-27 01:46:13 -04:00
Dan Stillman
b059b2abde Fix shortcut keys on Windows and Linux 2013-07-26 15:35:06 -04:00
Simon Kornblith
1055187c8b If Zotero is run as root, clobber the cache directory and show a warning 2013-07-25 00:47:38 -04:00
Dan Stillman
185c5a3a4d Perform sync file modification checks off the main thread in Firefox 23+
OS.File doesn't seem to work reliably before Firefox 23, so older
versions will continue to do mod time checking on the main thread.

Zotero.Sync.Storage.checkForUpdatedFiles() now returns a promise.
2013-07-22 20:41:37 -04:00
Dan Stillman
b9c2ea507d Add mode name to credentials-cached debug message 2013-07-22 20:39:20 -04:00
Dan Stillman
f85d25d1d1 Remove unused argument in Z.Sync.Storage.Mode.prototype.cacheCredentials 2013-07-22 20:37:39 -04:00
Dan Stillman
40f0de75d8 Separate out Zotero.Item._updateAttachmentStates() 2013-07-22 20:35:21 -04:00
Dan Stillman
4b280090fc Better debugging info for library errors 2013-07-22 20:31:52 -04:00
Dan Stillman
5806c53825 Evaluate test.js as JS 1.8 in Firefox 17 2013-07-22 20:30:45 -04:00
Dan Stillman
73b0bc67c5 Add Zotero.Item.libraryKey, to return libraryID and key ("0/ABCD2345") 2013-07-22 20:29:32 -04:00
Dan Stillman
828a2917c4 Add Zotero.platformVersion and Zotero.platformMajorVersion
platformVersion is a string that needs to be checked with
nsIVersionComparator. platformMajorVersion is an integer that can be
checked with > and < when the major Gecko version is enough.
2013-07-22 20:27:53 -04:00
Dan Stillman
e459020b66 Add asynchronous Zotero.Utilities.Internal.md5Async()
Also switch ZU.Internal.md5() to use the same binary->hex conversion
code, since I can no longer reproduce the problem I was having with it
before.
2013-07-22 20:27:40 -04:00
Dan Stillman
b075d91f9c Revert "Remove debug line"
This reverts commit a2249b9bee.
2013-07-22 03:16:40 -04:00
Dan Stillman
500c55bdd3 Revert "Revert "Extra debugging for file sync hangs on slow connections""
This reverts commit 4907489707.
2013-07-22 03:16:19 -04:00
Dan Stillman
a2249b9bee Remove debug line 2013-07-22 02:36:46 -04:00
Dan Stillman
4907489707 Revert "Extra debugging for file sync hangs on slow connections"
This reverts commit 46cce5a2bd.

Conflicts:
	chrome/content/zotero/xpcom/storage/streamListener.js
2013-07-22 02:35:53 -04:00
Simon Kornblith
67ad94c45f Update to citeproc-js 1.0.471 2013-07-22 01:46:20 -04:00
Dan Stillman
c722ec888f Remove hopefully unnecessary hack dating to Firefox 3.1 2013-07-17 18:56:33 -04:00
Dan Stillman
46cce5a2bd Extra debugging for file sync hangs on slow connections 2013-07-17 18:55:43 -04:00
Dan Stillman
8c6a9bfbf0 Add some debugging for a memory usage issue during file syncing 2013-07-17 18:03:00 -04:00
Dan Stillman
375f0774c0 Merge pull request #327 from aurimasv/dup-right-click
Allow right-click on multiple items in duplicate view. Closes #53
2013-07-16 00:32:15 -07:00
Dan Stillman
51cbf0c820 Fix spacing around Reindex Item icon on Windows 2013-07-16 03:19:44 -04:00
Dan Stillman
dcbabfa013 Merge branch '4.0'
Conflicts:
	install.rdf
	update.rdf
2013-07-15 20:05:41 -04:00
Dan Stillman
75d5d9f88d Add Publication Title to title/creator/year search
As requested by Simon
2013-07-15 19:55:18 -04:00
Simon Kornblith
b55f226900 Fix handling of multiple missing/corrupt citations when "No" is clicked 2013-07-13 16:04:24 -04:00
Simon Kornblith
d2166540c6 Zip as much as possible in ZSA without repacking omni.ja, part 1 2013-07-12 01:42:09 -04:00
Dan Stillman
59550167a7 Move TinyMCE into resource://
This fixes CSS in popups and probably other things.
2013-07-12 00:40:03 -04:00
Dan Stillman
7ec7039a9a Update repotime, submodules, renamed styles, and versions 2013-07-11 23:21:28 -04:00
Simon Kornblith
61fba0a788 Update to citeproc-js 1.0.470 2013-07-11 23:00:14 -04:00
Dan Stillman
1d09c85822 Avoid unnecessary scrollbar in sync error panel, and remove height hack 2013-07-08 21:09:39 -04:00
Dan Stillman
10e9c5e0b7 Restore ZFS quota warning
Possible that this hasn't shown since 4.0?
2013-07-08 20:13:47 -04:00
Dan Stillman
16327ddad6 Don't update Date Modified when syncing related items
This caused all items with related items to lose their Date Modified
when synced down.
2013-07-08 18:18:16 -04:00
Simon Kornblith
0a8990947c Update to citeproc-js 1.0.469 2013-07-03 00:40:35 -04:00
Dan Stillman
8e8bc15071 Closes #291, Default to last-used item type when creating item via
keyboard
2013-07-02 16:48:53 -04:00
Dan Stillman
30a0bbcca2 Fix conflict with Cmd-Shift-A, and probably other third-party shortcuts
The Zotero shortcut keys, and their event.preventDefault(), were bound
to keydown, so shortcuts bound to keypress were still be called. This
moves most of the shortcut handling code into the keypress handler.

Fixes #344
2013-07-02 02:43:53 -04:00
Dan Stillman
4d9191ccd8 Fixes #343, Add Item by Identifier textbox is truncated on second open 2013-06-30 01:46:50 -04:00
Dan Stillman
d1e2ea57a5 Maybe fix note overwriting with embedded images in notes
But given that I can't really reproduce it, this is more of a guess.
2013-06-28 15:26:23 -04:00
Simon Kornblith
85682dbb19 Remove field codes for empty bibliographies when refreshing
This happens when a user inserts a bibliography in the middle of a
paragraph and doesn't fully delete it.

Also remove unused code for deleting citations from the document.
2013-06-27 22:02:35 -04:00
Simon Kornblith
44bb1ad976 Ignore empty bibliography fields 2013-06-27 22:02:31 -04:00
Simon Kornblith
28355c5ab5 Fix error message when inserting a field in an unsupported location 2013-06-27 22:01:31 -04:00
Simon Kornblith
852021d150 Fix error message when inserting a field in an unsupported location 2013-06-27 22:00:38 -04:00
Simon Kornblith
263eb508cc Remove field codes for empty bibliographies when refreshing
This happens when a user inserts a bibliography in the middle of a
paragraph and doesn't fully delete it.

Also remove unused code for deleting citations from the document.
2013-06-19 13:46:09 -04:00
Simon Kornblith
2a9d1d2693 Ignore empty bibliography fields 2013-06-19 13:29:04 -04:00
Simon Kornblith
505e4a5674 Merge branch '4.0' 2013-06-19 12:54:47 -04:00
Simon Kornblith
f0c2507b89 Anchor regex 2013-06-19 02:23:26 -04:00
Simon Kornblith
6f9ffe13e3 Don't change capitalization of unabbeviated words in journal titles
Fixes https://forums.zotero.org/discussion/30352/
2013-06-18 23:51:46 -04:00
Simon Kornblith
dde9901c72 Anchor regex 2013-06-13 14:37:51 -04:00
Simon Kornblith
da4e7dd4f1 Merge branch '4.0' 2013-06-13 14:20:06 -04:00
Simon Kornblith
9f0e5c02a6 Ignore files in translators directory not ending in .js
Fixes #339
2013-06-13 14:18:59 -04:00
Simon Kornblith
f02132f5a9 Merge pull request #330 from aurimasv/4.0
Prefer higher priority translators even if they don't target the top frame
2013-06-06 16:50:34 -07:00
Simon Kornblith
6ef9a061f3 Only use Components.utils.methodjit when supported
As Boris Zbarsky pointed out in
https://bugzilla.mozilla.org/show_bug.cgi?id=878679,
the setTimeout() hack doesn't help in Firefox 23 and later. For now we
use the useMethodjit hack when available, so that performance won't
regress for Firefox 23, and cross our fingers that
https://bugzilla.mozilla.org/show_bug.cgi?id=776798 is fixed for
Firefox 24.
2013-06-06 19:38:48 -04:00
Simon Kornblith
1cee348f51 Revert "Remove use of Components.utils.methodjit"
This reverts commit 53a4d987b6.
2013-06-06 19:31:09 -04:00
Simon Kornblith
aecdf99482 Use Services.jsm where possible 2013-06-06 02:37:19 -04:00
Simon Kornblith
37425195c6 Merge branch '4.0' 2013-06-05 18:20:59 -04:00
Simon Kornblith
53a4d987b6 Remove use of Components.utils.methodjit
It appears that this flag can no longer be set in new-ish Nightlies.
This patch switches code that used nsITimers with the
Components.utils.methodjit hack to use setTimeout on the hidden DOM
window instead, so that we still get the JIT. (See
https://bugzilla.mozilla.org/show_bug.cgi?id=776798)

This might also mean that callbacks from doGet etc. no longer get JITed.
At some point, we should test this with the JIT profiler.
2013-06-05 18:12:52 -04:00
Simon Kornblith
5bfee27ab9 Remove unused getService for VersionComparatorService 2013-06-05 17:55:49 -04:00
Simon Kornblith
5bde5a106b Use Services.obs instead of getService for observer service 2013-06-05 17:54:53 -04:00
Aurimas Vinckevicius
7fb3c13bc2 Prefer higher priority translators even if they don't target the top frame.
E.g. pdf+html pages for HighWire 2.0 (http://www.plantcell.org/content/25/4/1213.full.pdf+html?with-ds=yes)
2013-05-27 18:43:42 -05:00
Simon Kornblith
a7984916ad Protect against pasting HTML-formatted text into QuickFormat dialog 2013-05-24 00:39:19 -04:00
Simon Kornblith
c0f3e3c425 Fix box scrolling 2013-05-23 23:27:29 -04:00
Simon Kornblith
a439456f05 Don't let bubbles get highlighted 2013-05-23 23:27:29 -04:00
Simon Kornblith
3eff3605f7 Fix deletion and keyboard navigation 2013-05-23 23:27:29 -04:00
Simon Kornblith
9c63379544 Fix drag and drop in QuickFormat dialog.
Unfortunately, this required switching from using labels to spans,
which means there is more work to make the delete key work properly
again.
2013-05-23 23:27:29 -04:00
aurimasv
fdb35e2e92 Allow right-click on multiple items in duplicate view. Closes #53 2013-05-20 04:39:19 -05:00
Dan Stillman
311e6f2fa7 Merge pull request #326 from aurimasv/dup-click
Tweak duplicate view click behavior
2013-05-19 20:21:49 -07:00
Aurimas Vinckevicius
4546089672 Tweak duplicate view click behavior
Allow ctrl/alt/shift click actions in duplicate view. (closes #324)
Allow right-click behavior on single item/attachment selection. (closes #325)
2013-05-19 22:20:28 -05:00
Dan Stillman
d3ec8fcdcf Ignore standalone-no-display class when building attachment button menu 2013-05-19 00:14:13 -04:00
Dan Stillman
c5291bdd7d Remove unnecessary ids after bfb30eed59 2013-05-19 00:10:49 -04:00
Dan Stillman
903fc0e001 Fix incorrect id in bfb30eed59 2013-05-19 00:10:08 -04:00
aurimasv
bfb30eed59 Don't display snapshot or link from page context menus for Standalone 2013-05-18 23:01:24 -05:00
Dan Stillman
bbf066f55a Merge pull request #313 from adam3smith/adduris
add more item handler protocols to add by URI
2013-05-14 00:06:42 -07:00
Dan Stillman
9c82a7a661 Reset Quick Copy list when resetting translators, too 2013-05-10 14:51:41 -04:00
Dan Stillman
5fbd569fdf Fix refreshing of Quick Copy list when resetting styles 2013-05-10 14:49:29 -04:00
Dan Stillman
6b61795d96 Fix NS_ERROR_FILE_IS_LOCKED if no files to add to upload zip 2013-05-10 01:14:22 -04:00
Simon Kornblith
0805a943ba Merge branch '4.0'
Conflicts:
	chrome/content/zotero/xpcom/zotero.js
	install.rdf
	update.rdf
2013-05-09 22:12:10 -04:00
Simon Kornblith
4616a51874 Fix #318, x-www-form-urlencoded, not x-www-urlencoded 2013-05-08 13:23:33 -04:00
Simon Kornblith
2a33ede284 Fix innocuous error installing a style
Installing a style could throw an error if the preferences were open and the
styles pane had not yet been selected, although the style would be
successfully installed.

See https://forums.zotero.org/discussion/29250/importing-a-new-style/
2013-05-02 14:48:53 -04:00
Dan Stillman
01fd28b99f Update versions 2013-05-02 03:10:38 -04:00
Dan Stillman
59ef9c89da Fix DB upgrade error after running <=Zotero 4.0.6 on 4.0.7 DB 2013-05-02 03:06:37 -04:00
Dan Stillman
5a2a485a79 Add a WebDAV verification step to ensure 404 on missing files 2013-05-02 01:19:26 -04:00
Dan Stillman
9b5327ecd7 Fix spacing of sync auto-change log message 2013-05-01 23:58:48 -04:00
Dan Stillman
877b8741ae Fix some tag bugs from efda43f6e3 (and maybe also earlier?) 2013-05-01 23:58:33 -04:00
Dan Stillman
efda43f6e3 Speed up saving of tags with many items
Fixes #289, RIS import gets progressively slower
2013-05-01 19:16:15 -04:00
Dan Stillman
9e8559b4be Speed up flattenArguments() 2013-05-01 18:29:44 -04:00
Dan Stillman
35f1720b08 Add missing index to creatorData table
It's amazing what you can find when you actually have a profiler.
2013-05-01 18:00:28 -04:00
Dan Stillman
8bed3d44ed Remove another extra function wrapper 2013-05-01 16:19:01 -04:00
Dan Stillman
1e47d12436 Remove extra function wrapper 2013-05-01 16:17:32 -04:00
Dan Stillman
75293a475d Use nicer alerts for error reporting error messages 2013-05-01 15:33:15 -04:00
Dan Stillman
2a7a604f28 Use foreground requests for manual sync and error reporting
Adds a 'foreground' flag to Zotero.HTTP.promise() options

Also, can now pass successCodes: false to always resolve the promise and never
throw UnexpectedStatusException
2013-05-01 15:30:39 -04:00
Dan Stillman
e09295ee76 Fix compatibility with authenticated proxies
It's not clear when this became an issue, but our usual background HTTP
requests (set that way to avoid triggering auth prompts when saving from
websites) weren't triggering proxy authentication dialogs, which was breaking
most network activity in Standalone. To fix this, we now make a foreground
request at startup to a file on S3 and resolve the Zotero.proxyAuthComplete
promise when we're done. Any network requests that want to wait for proxy
authentication can wait for that promise.

This behavior can be disabled via the triggerProxyAuthentication hidden pref.
2013-05-01 06:29:31 -04:00
Simon Kornblith
527e0ebf4e Update to citeproc-js 1.0.460 2013-05-01 01:49:27 -04:00
Dan Stillman
73b90eb1df Update versions 2013-05-01 01:16:41 -04:00
Dan Stillman
e442279210 Update submodules and repotime 2013-05-01 01:11:34 -04:00
Dan Stillman
c78f8b8e77 Return false for group.filesEditable if group.editable is false
It's possible for filesEditable in the DB to be set to 1 even if
editable is 0. We generally check editable first anyway, but let's be
safe.

Also make editable/filesEditable return booleans instead of numbers
2013-04-30 18:13:40 -04:00
Dan Stillman
b09daebbde Don't try to upload files if no file editing access for library
This should fix https://forums.zotero.org/discussion/29149/ and probably
some other things.
2013-04-30 17:48:01 -04:00