Commit graph

10379 commits

Author SHA1 Message Date
Dan Stillman
a0be2da42c Automatically capitalize subtitle for APA styles
Applied to all styles with ids matching 'apa($|-)'

Currently limited to colons, but Juris-M/citeproc-js#74 may extend this
to other punctuation

Closes #1681
2019-04-21 17:05:12 -04:00
Dan Stillman
7496faa8cf Update citeproc-js to 1.2.2 2019-04-20 15:32:46 -04:00
Dan Stillman
4eec421fe4 Don't return cached internal array for child notes 2019-04-16 05:33:31 -04:00
Dan Stillman
9b7984ef26 Run JS: Fix window title and stuck result pane after error 2019-04-16 03:34:45 -04:00
Dan Stillman
679f22d089 What's all this, then? A British English locale? I say!
This adds "English (UK)" to the locale list, which allows for "tag
colours" and allows dates to be recognized in d/m/y form.

I changed "color" and "license" on Transifex, but I'll leave other words
for others to change. If we stick to Oxford spelling, there probably
won't be too much else.
2019-04-16 03:33:30 -04:00
Dan Stillman
935cb95561 Update version 2019-04-11 20:36:50 -04:00
Dan Stillman
8cadbe7eff Update locales from Transifex and submodules 2019-04-11 20:20:50 -04:00
Dan Stillman
8337b7ec16 Don't set tag selector background on Windows/Linux
Fixes dark mode on Linux
2019-04-11 16:45:07 -04:00
Adomas Venčkauskas
a57d38aa29 Fix numbers in strings addition caused bug in providing citeproc citation data 2019-04-10 10:35:30 +03:00
Dan Stillman
1ca6898cb9 Fix Zutilo breakage (regression from d9cee322cd) 2019-04-10 02:13:37 -04:00
Adomas Venčkauskas
78c3d5808b Fix citeproc errors due to improper citeproc state updates
The error is triggered upon initial interaction with a doc after Zotero
restart or if new external citations (copied into the document) are
peresnt and `session.updateSession()` is called without a subsequent
`session.updateDocument()` call. `session.updateSession()` is called
without a subsequent `session.updateDocument()` call every time the
user cancels a citation insert.

More specifically, `session.updateSession()` is called every time a
citation dialog is invoked. It retrieves all citations and writes them
into a local `session.citationsByIndex` object. Moreover, it marks
each citation that hasn't seen before in a `session.newIndices` object.
`session.newIndices` is there to ensure that we load every new citation
into citeproc upon document update. This object is built by marking any
citation that does not appear in the previous invocation's list of
citations as new. However, if the document is never updated (because the
user cancels the insertion) then the new indices are not loaded
into citeproc. This commit fixes that, by excluding citeproc unloaded
items from the previous invocation's citation list.
2019-04-08 17:43:52 +03:00
Dan Stillman
ff6a4400b4 Update citeproc-js to 1.1.236 2019-04-07 11:36:27 -04:00
Dan Stillman
ca2656c8e7
Merge pull request #1677 from Juris-M/zmaster-title-short
Export CSL JSON with title-short rather than shortTitle
2019-04-04 13:33:17 -04:00
Frank Bennett
e618410eb2 Export CSL JSON with title-short rather than shortTitle 2019-04-04 00:45:32 +09:00
Dan Stillman
9ed48f3837 Keep earliest Date Added when merging items
Closes #1669
2019-04-02 14:01:25 -04:00
Dan Stillman
197d609f8e Update locales from Transifex and merge new English strings 2019-04-01 17:41:01 -04:00
Dan Stillman
531c092800 Tweak integration error text (#1672) 2019-04-01 17:40:45 -04:00
Dan Stillman
cf3f52ef37
Merge pull request #1672 from adomasven/feature/better-integration-errors
Display a more user-friendly error for integration errors
2019-04-01 17:40:13 -04:00
Dan Stillman
89992665cd Inherit ESLint config 2019-03-31 21:12:43 -04:00
Dan Stillman
2f43ea82f9 Disable logging for tag truncation issue 2019-03-31 07:39:06 -04:00
Dan Stillman
3ca5ac421c Don't truncate tags unnecessarily if width is miscalculated
https://forums.zotero.org/discussion/76665/tag-issue-display-of-some-tags-erratic
2019-03-31 07:37:24 -04:00
Dan Stillman
ecdcb65f57 Add debugging for tag selector truncation issue
https://forums.zotero.org/discussion/76665/tag-issue-display-of-some-tags-erratic
2019-03-30 12:23:20 -04:00
Dan Stillman
ba12592164 Don't chop off bottom of 'g' at some font sizes in Mac tag selector 2019-03-30 12:22:19 -04:00
Dan Stillman
3829f12603 Speed up renaming of colored tags 2019-03-30 10:35:03 -04:00
Dan Stillman
6a2611c9c6 Additional logging for teleporting collections
https://forums.zotero.org/discussion/comment/328917/#Comment_328917
2019-03-30 07:58:15 -04:00
Dan Stillman
37d94dff07 Restore tag selector search bar cancel button
Regression from 3126c58d30
2019-03-29 06:36:07 -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
75cb2724f2 Add missing CSS from 3126c58d30 2019-03-29 04:24:56 -04:00
Dan Stillman
038119c481
Merge pull request #1668 from Juris-M/zmaster
Handle handingindent return from citeproc-js as boolean
2019-03-29 02:53:06 -04:00
Dan Stillman
732cd01073 Update citeproc-js to 1.1.228 2019-03-29 02:23:51 -04:00
Dan Stillman
3126c58d30 Tag selector UI tweaks
- Don't cut off bottom of tags on Windows
- Fix appearance of search bar on Windows/Linux
- Fix cancel button on Windows/Linux
- Don't cut off right-hand pane of bottom bar when narrowing pane
2019-03-29 01:46:54 -04:00
Dan Stillman
f7f10c7405 Remove redundant tag selector filter CSS on macOS
The Search component provides the same styling.
2019-03-28 07:10:05 -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
c52589f96b Upgrade to Babel 7 2019-03-28 04:57:31 -04:00
Dan Stillman
6411342a0f ESLint config updates 2019-03-28 04:57:31 -04:00
Adomas Venčkauskas
0cb056c994 Display a more user-friendly error for integration errors 2019-03-27 17:34:32 +02:00
Dan Stillman
ec7b16249d Update version 2019-03-27 08:45:12 -04:00
Dan Stillman
69ff8ac1b6 Search anywhere within tag for tag selector filter
Follow-up to 62ea7e970a, and I think in line with the pre-React
behavior
2019-03-27 07:49:59 -04:00
Dan Stillman
b248d28992 Revert "Update citeproc-js to 1.1.226"
This reverts commit a5c7955670.

We need to push out a release to fix some bugs, so let's leave this out
for now.
2019-03-27 07:26:15 -04:00
Dan Stillman
197397ff7a Fix error dragging items if tag selector was closed at startup 2019-03-27 07:23:41 -04:00
Dan Stillman
71f9420cff Fix linked-file rename pref when retrieving metadata
Due to a typo in d0f7fd6df7, linked files were still being renamed even
with the pref off if metadata was found for the file. The test I added
was only for adding a file to an existing item, which didn't trigger
metadata retrieval.

This also adds a hook for stubbing the actual PDF recognition process so
we can test certain behaviors without making HTTP requests.
2019-03-27 06:43:07 -04:00
Dan Stillman
a5c7955670 Update citeproc-js to 1.1.226 2019-03-27 03:45:03 -04:00
Frank Bennett
0036e0a1e1 Assume citeproc-js returns hangingindent as a boolean 2019-03-21 21:27:28 +09:00
Dan Stillman
f596a203f7 Update React to 16.8.4 and chokidar to 2.1.2 2019-03-21 05:08:04 -04:00
Dan Stillman
6c86121120 Use onChange instead of onInput for Search component
React uses onChange for form elements (and complains if it's absent)
even when the underlying event is oninput.
2019-03-21 04:51:32 -04:00
Dan Stillman
49226edd07 Temporarily ignore collection-title for podcast in itemFromCSLJSON test
See #1667
2019-03-21 02:22:07 -04:00
Dan Stillman
8f1f1f1fba Update itemFromCSLJSON test for podcast broadcast mapping
Follow up to bf4deeff8f
2019-03-21 02:20:38 -04:00
Dan Stillman
09b7fa8a6d Fix time zone handling of CSL JSON export of date-only access date
Since 9c0f5998a3, depending on your timezone the day could be off by
one if the access date didn't have a timestamp (so only for manual
entries or imports).
2019-03-20 21:52:57 -04:00
Dan Stillman
03941dafe0 Fix tests after 42667e7090
It seems like the Zotero.Utilities.debounce() on handleSearch() in
tagSelector.jsx was somehow causing the function to be run without being
triggered from the onSearch events, resulting in an extra render. I'm
not sure why that was happening, but it's fixed now that there's no
longer a debounce() there.
2019-03-20 08:54:48 -04:00
Dan Stillman
62ea7e970a Don't use RegExp for tag filter (Reactification regression)
Using a regexp meant that an invalid regexp pattern would crash the tag
selector, and even if we caught that it would produce unexpected results
for some searches (e.g., anything with a period).
2019-03-20 07:15:55 -04:00