Commit graph

9618 commits

Author SHA1 Message Date
Martynas Bagdonas
62f07a7356 Upgrade note-editor schema to v8:
- Allow highlight and citation nodes in headers

Fixes #2467
Related #2390
2022-03-24 10:21:04 +02:00
Adomas Venčkauskas
229f42bed2 HTML Tree: Change Cu.reportError() to Zotero.logError() 2022-03-23 13:28:46 +02:00
Martynas Bagdonas
23a4a14b44 Upgrade note-editor schema to v7:
- Allow ul/ol nodes to have `dir` attribute
2022-03-23 12:35:08 +02:00
Adomas Venčkauskas
c083c69be1 Fix note insertion dialog not appearing when classic mode is enabled.
Closes #2463
2022-03-23 11:58:06 +02:00
Adomas Venčkauskas
1b124bff2d Actually fix quick format color issues. See cc5e110 2022-03-23 11:28:50 +02:00
Adomas Venčkauskas
0f2273ea43 Link to manual word plugin installation instructions on install failure.
Closes #2444
2022-03-23 11:12:42 +02:00
Dan Stillman
fcb16f628b Fix "path.startsWith is not a function" sync error on Windows
`OS.Path.join()` on Windows throws if an integer is passed. Seems like
this would happen on another computer whenever an image annotation is
deleted in a group?
2022-03-23 00:01:00 -04:00
Dan Stillman
37c48dc3ee Remove Zotero.Items.moveChildItems() transaction requirement exception
Follow-up to 734057ff9b

This was supposed to allow ZotFile to continue to work but 1) it
contained a bug and 2) another transaction messed things up for ZotFile
anyway, so we'll just fix this in jlegewie/zotfile#593.
2022-03-22 18:07:40 -04:00
Abe Jellinek
95d8b37f0a Potentially fix ProgressWindow crash
The call to _window.addEventListener() might have been causing an error
when _window was null or undefined (no main Zotero window could be
found), which would prevent _windowLoading from being set to true and
the window from being added to the ProgressWindowSet, which might have
caused unpredictable behavior when positioning windows later on.

I could only briefly reproduce the issue, so this is just one idea. The
call to addEventListener on a potentially null _window was definitely a
bug but I don't know if it caused the crash.
2022-03-22 12:55:47 -07:00
Adomas Venčkauskas
cc5e1106ec Fix quick format issues in Linux dark themes. Closes #2441 2022-03-22 14:32:15 +02:00
Adomas Venčkauskas
227b6354de Item Tree: Reset scrollbar to top on collection change 2022-03-22 13:58:02 +02:00
Adomas Venčkauskas
25230b0fca HTML Tree: Fix focused row losing focus sometimes not being redrawn 2022-03-22 13:58:02 +02:00
Dan Stillman
5df1017689 Correction to Scite access date fix in dc886d3cec 2022-03-22 06:01:30 -04:00
Dan Stillman
dc886d3cec Remove access dates broken by Scite
A non-date value ('INVALID_SCITE_VALUE') apparently gets output as
`false` in toJSON(), which results in a sync error.
2022-03-22 05:53:24 -04:00
Dan Stillman
d14a8b1d92 Put Scite cleanup code in a try/catch
Just to be safe
2022-03-22 05:01:50 -04:00
Dan Stillman
f8e9aa147b Add temporary code to fix invalid values from Scite at startup
https://github.com/scitedotai/scite-zotero-plugin/issues/38
2022-03-22 05:00:28 -04:00
Dan Stillman
f95bf41d13 Revert "Fix "cleanDOI: argument must be a string" startup error"
This reverts commit 8763190328.

This is caused by the Scite plugin, and it's better to block startup
until this is fixed, since it's wrecking other fields too.
2022-03-21 23:49:33 -04:00
Dan Stillman
174f1aadde Fix error adding group item before syncing in Zotero 6
Fixes #2440
2022-03-21 22:50:43 -04:00
Dan Stillman
8763190328 Fix "cleanDOI: argument must be a string" startup error
Due to 0 integer value for DOI from somewhere (a plugin?)

https://forums.zotero.org/discussion/comment/402388/#Comment_402388
https://forums.zotero.org/discussion/comment/402391/#Comment_402391
2022-03-21 22:02:54 -04:00
Abe Jellinek
bca76319ce
getSortTitle: Strip less punctuation, trim (#2442)
Now it:

1. Strips punctuation at the beginning, no matter what it is.
2. Strips non-dash punctuation in other positions.
3. Trims the result.

This should better prevent numerical ranges from being joined into a
single number that ends up incorrectly being sorted to the very bottom.
2022-03-21 20:06:27 -04:00
Martynas Bagdonas
388d18d017 Terminate PDF worker after processing PDFs queue
Fixes #2421
2022-03-17 14:26:07 +02:00
Martynas Bagdonas
edf0c31bdb Remove old note editor binding 2022-03-17 11:18:17 +02:00
Dan Stillman
121f3f3037 Update locales from Transifex 2022-03-16 20:45:18 -04:00
Abe Jellinek
b1d11bf7dc Really fix lastSync log spam
6b6c27029b didn't do the trick because
library.lastSync can be false and the ?. operator doesn't catch that.
2022-03-15 10:43:17 -07:00
Abe Jellinek
8a235c07f1 Fix et al. regex for sorting by creator
\. -> \\. and apply the same escaping to general.and.
2022-03-15 10:05:09 -07:00
Martynas Bagdonas
26e4de500e Fix overflowing itemPane and hidden contextPane for new profiles, in stacked view
Fixes #2305
2022-03-15 18:27:18 +02:00
Martynas Bagdonas
982b41359b Fix oversized tagBox icons in standalone PDF reader window
Fixes #2143
2022-03-15 18:27:18 +02:00
Martynas Bagdonas
d02eb145d5 Fix copying over PDF reader context pane
Fixes #2408
2022-03-15 18:27:18 +02:00
Dan Stillman
1f2f91d2d2 Update locales from Transifex 2022-03-15 07:43:11 -04:00
Martynas Bagdonas
d4339f20bd Don't try to modify non-editable annotation item when saving image 2022-03-15 11:04:02 +02:00
Martynas Bagdonas
769bfbc892 Fix PDF reader up/down keyboard navigation regression in RTL mode 2022-03-15 09:53:11 +02:00
Martynas Bagdonas
59caaf56ea Fix PDF reader keyboard navigation in RTL mode 2022-03-14 17:25:28 +02:00
Adomas Venčkauskas
12cd201b48 HTML Tree: Multi-selection fixes
- Clarification between focused row and pivot:
  - Pivot is only the row from which shift-selection pivots
  - Focused row is the one with the border around it
- Fixed an issue where clicking the focused row didn't select it.
  Closes #2402
- Allows to create a non-contiguous range-selection with ctrl/cmd+shift.
  Closes #2403
2022-03-14 14:57:59 +02:00
Dan Stillman
3ec883a7f6 Get attachment text on-demand if not cached in Item::attachmentText
Follow-up to 58f515058 with a better approach: if no full-text cache
file, just get text directly without indexing. In the one existing use
of `attachmentText`, attachment merging, this is better anyway, because
we might be deleting the file, so there's no point wasting time
inserting words into the database.
2022-03-12 20:22:29 -05:00
Dan Stillman
58f5150583 Don't automatically index full-text content in Item::attachmentText
Indexing starts a transaction, which will cause `.attachmentText` to
hang if accessed within another transaction. If a caller wants to make
sure it has attachment text, it should index items first outside a
transaction.
2022-03-12 19:11:02 -05:00
Dan Stillman
6aa401bceb Don't show annotation-only tags in tag selector 2022-03-12 03:00:40 -05:00
Martynas Bagdonas
c7972b3d38
Improve keyboard navigation in PDF reader tab (#2395) 2022-03-12 02:22:13 -05:00
Abe Jellinek
6b6c27029b
Fix log spam when library hasn't been synced (#2409)
This happens a lot during tests - library.lastSync is null, so
showAutoSyncReminder() throws. It doesn't fail tests but it does spam
the log.
2022-03-11 20:19:02 -05:00
Abe Jellinek
80bb40b153 Fix error when menus haven't been created 2022-03-11 14:02:07 -08:00
Abe Jellinek
52bc93adc9 Always select new items, disable File -> New Item appropriately
Fixes #2405. This also fixes an issue where Cmd/Ctrl-Shift-N in a
collection like Duplicate Items would open the item type menu on top of
a blank white item pane (since the new item didn't get selected first).
2022-03-11 13:42:15 -08:00
Abe Jellinek
c9ccd758bc Fix undefined error when new collection title is empty 2022-03-11 13:08:33 -08:00
Martynas Bagdonas
78e1e8593a Fix note template condition evaluating to true on empty array
Fixes #2386
2022-03-11 17:04:47 +02:00
Abe Jellinek
ef82becf00
Merge attachments and update notes (#2336)
We follow a different merge procedure for each attachment type:

- For PDF attachments, compare by MD5. If no match, get the top 50 words
  in the attachment's text and hash those, then check again for a match.
  Update references to item keys in notes and annotations.
- For web (snapshot / link) attachments, compare by title and URL.
  Prefer a title + URL match but accept a title-only match.
- For other attachment types, keep all attachments from all items being
  merged.

Also:

- Move most merge tests from Duplicates to Items#merge(). It just doesn't
  make sense to worry about the UI in these.
2022-03-09 17:26:26 -05:00
Abe Jellinek
ed31a11fce Scaffold: Sanitize items for display more accurately 2022-03-09 11:42:16 -08:00
Tom Najdek
1ad2056674
Add support for importing Citavi annotatons (#2351) 2022-03-09 04:06:44 -05:00
Dan Stillman
c7ece79f79 Fix missing creators not being removed in item.fromJSON()
Apparently there's been a bug for years where removing a creator
remotely hasn't caused it to be removed locally via sync...

https://forums.zotero.org/discussion/94910/desktop-app-not-correctly-syncing
2022-03-09 02:43:22 -05:00
Dan Stillman
326d3425db Update Preprint icon
Journal article plus pencil, similar to manuscript (blank page plus
pencil)

Follow-up to zotero/zotero-bits#88
2022-03-08 01:05:54 -05:00
Abe Jellinek
cc47359080 Update translate submodule 2022-03-07 13:46:07 -08:00
Abe Jellinek
6ad829a7e5 Set sync reminder lastDisplayed when dismissed by sync 2022-03-07 09:39:40 -08:00
Dan Stillman
e5558b6f3e Remove note backup functionality
Closes #2191
2022-03-05 06:12:29 -05:00
Dan Stillman
a1305712f3 Update locales from Transifex and merge new English strings 2022-03-05 05:35:22 -05:00
Dan Stillman
053d6a0116 Add Preprint item type
See zotero/zotero-bits#88
2022-03-05 02:03:29 -05:00
Dan Stillman
d750da089f Show clearer error for SSL certificate error
For both startup proxy auth requests and subsequent requests to
zotero.org domains

Closes #2337
2022-03-05 02:03:29 -05:00
Dan Stillman
f6bd7269ae Fix changing locale via keyboard on Windows
(And maybe Linux)

https://forums.zotero.org/discussion/94866/beta-6-0-no-shortcut-key-could-be-applied-in-language-of-advanced-setting
2022-03-05 00:48:44 -05:00
Martynas Bagdonas
3c42103848
Allow to Quick Copy annotations (#2377) 2022-03-04 03:52:23 -05:00
Dan Stillman
6da38c292e Scaffold: Tweak tooltip text for Run and Update button 2022-03-02 22:36:44 -05:00
Abe Jellinek
5409ae3313 Overhaul Scaffold (#2293) 2022-03-02 22:36:04 -05:00
Dan Stillman
a7cf689df2 Update locales from Transifex and merge new English strings 2022-03-02 16:39:04 -05:00
Abe Jellinek
d82981d601
Fix item tree jumping to top on focus without selection (#2347) 2022-03-02 14:55:01 -05:00
Adomas Ven
b38d7107d8
HTML Tree: Add a dotted border to pivot rows (#2375) 2022-03-02 05:41:59 -05:00
Dan Stillman
c0ab16e79d Merge pull request #2354
Add sync reminders
2022-03-02 05:25:38 -05:00
Dan Stillman
706233c974 Sync reminders changes (#2354)
- Adjust text
- Add "Learn More" button with link to sync documentation for
  set-up-sync notification
- Show "Don't Show Again" for set-up-sync even on first display
- Don't perform any action when clicking unlinked text
- Use yellow/orange background instead of blue for notification bar
- Prevent text from wrapping out of the bar at narrow window widths
- Use local variable for observer id
2022-03-02 05:20:34 -05:00
Abe Jellinek
b0f09b3a86 Sync reminders changes (#2354)
- Always wait seven days, standardize casing
- Enable auto-sync without opening preferences
- Implement suggestions
2022-03-02 05:20:22 -05:00
Fletcher Hazlehurst
1a3f6301b7 Add syncing reminders (#2354)
There are two:
- Sync never set up (no username in DB) / set up, but unlinked
- Sync set up but auto-sync disabled and sync not completed in 30 days

Checks are trigged on item adds.
2022-03-02 05:19:10 -05:00
Abe Jellinek
939ee6159d Use XRegExp in getSortTitle()
Fixes #2372
2022-03-01 16:37:13 -08:00
Dan Stillman
1cc03492c4 Split annotations on sync error
Follow-up to b7f26c47c1
2022-03-01 05:09:15 -05:00
Dan Stillman
a10fcfd58e Speed up comparison of items with huge numbers of tags
Can cause a freeze while syncing items with 1000s of tags
2022-03-01 02:45:07 -05:00
Martynas Bagdonas
b7f26c47c1 Split annotation if position data exceeds the limit 2022-02-28 20:10:20 +02:00
Abe Jellinek
b54466f089 Fix error restoring top-level notes & attachments
Fixes #2369
2022-02-28 08:18:59 -07:00
Martynas Bagdonas
003b3db281
Implement custom keyboard navigation (#2317) 2022-02-23 13:00:57 -05:00
Dan Stillman
1743360de7
Merge pull request #2366 from AbeJellinek/short-title-column
Add Short Title item tree column
2022-02-22 15:40:45 -05:00
Abe Jellinek
2e74bdd2ad De-duplicate column strings and use getString() 2022-02-22 10:59:07 -08:00
Dan Stillman
8d81705831 Move Duplicate Item in items list context menu
Move below Add to Collection and Remove from Collection
2022-02-21 23:16:49 -05:00
Dan Stillman
c192dacc76 Merge new English strings 2022-02-21 21:53:36 -05:00
Abe Jellinek
f333585d98
Add items to collection via context menu (#2360) 2022-02-21 19:36:37 -05:00
Abe Jellinek
198ae65b4a Fix Import placing items in feeds/uneditable libraries 2022-02-21 15:40:19 -08:00
Abe Jellinek
fb98fe5d2c Add Short Title item tree column 2022-02-21 14:50:43 -08:00
Dan Stillman
ca3fd80825 Remove use of Promise.tap() from Bluebird and our own Promise.check() 2022-02-21 15:46:23 -05:00
Dan Stillman
e48d069687 Update locales from Transifex and merge new English strings 2022-02-21 15:26:58 -05:00
Dan Stillman
4d79e162c9 Remove DB diagnostics for missing schema updates problem 2022-02-21 15:13:43 -05:00
Dan Stillman
7700cd776a Repeat itemAnnotations schema update step after 078e3bb079 2022-02-21 15:13:38 -05:00
Dan Stillman
078e3bb079 Switch from Bluebird coroutine to async/await for DB/schema
We've been seeing some behavior in `Schema::_migrateUserDataSchema()`
that should be impossible, with conditional blocks totally skipped. I
can't see how this is anything other than either a JS engine bug with
generators or some sort of bug in our version of Bluebird, but with any
luck it will go away by switching everything to async/await.
2022-02-21 15:13:05 -05:00
Dan Stillman
9a2aec970d Load styles list in preferences even if custom style has an invalid date
A bundled style will get replaced from the repo if it has an invalid
date, but a custom style would result in an empty list.

https://forums.zotero.org/discussion/comment/399774/#Comment_399774
2022-02-21 15:12:46 -05:00
Adomas Ven
191e43dcfa
Delay querying attachment state from DB on tree scroll (#2357)
This improves item tree fast-scrolling performance when attachment
column is enabled, but adds a noticable attachment state pop-in
2022-02-21 13:28:15 -05:00
Martynas Bagdonas
b71367760d Don't jump to library tab when closing tab after startup
Fixes #2362
2022-02-21 18:43:04 +02:00
Martynas Bagdonas
822f821718 Set the current author name when creating an annotation in a group
Fixes #2322
2022-02-21 18:11:56 +02:00
Martynas Bagdonas
04fa89ffc8 Don't copy/import/delete note images if library files aren't editable
#2364
2022-02-21 18:11:56 +02:00
Adomas Venčkauskas
000599bfff Do not load citeproc-rs on Style.init() unless it's enabled
Closes #2363
2022-02-21 13:50:08 +02:00
Abe Jellinek
48a3235a2e
Disable Delete/Restore menu items appropriately (#2340) 2022-02-20 11:45:53 -05:00
Abe Jellinek
13f48ec5c7
Render markup in item tree, strip when sorting (#2355) 2022-02-19 15:49:35 -05:00
Dan Stillman
a45da8df17 Add Greek locale 2022-02-19 14:18:50 -05:00
Dan Stillman
5d6318fd3e Update locales from Transifex and merge new English strings 2022-02-19 14:10:07 -05:00
Dan Stillman
fac8d55002 Update submodules 2022-02-19 13:53:03 -05:00
Dan Stillman
b54b7edf9b Don't set author name of current user when copying annotation from group
Fixes #2358
2022-02-19 13:47:28 -05:00
Dan Stillman
72ac453a8c Set createdByUserID to current user for locally created group item
Addresses #2322
2022-02-19 13:47:28 -05:00
Dan Stillman
4a914c26db Set user display name from /keys/current
So that it can be available for annotations created locally before
they're uploaded
2022-02-19 13:47:28 -05:00
Dan Stillman
a2458614df Don't include date line when generating filename for annotations note
Since in many locales it would contain slashes and colons, both of which
would be stripped in the filename, leaving long strings of numbers in
the filename
2022-02-19 13:45:29 -05:00
Dan Stillman
5eee488e20 Update utilities submodule
And add tests for `Utilities.Internal.noteToTitle()`

Follow-up to zotero/utilities@df2dda23b
2022-02-19 13:43:41 -05:00
Martynas Bagdonas
5405da99db
Add support for annotation templates (#2359) 2022-02-18 14:38:36 -05:00
Dan Stillman
7606c88e79 Tweak Word/Apple Silicon warning text 2022-02-17 01:43:39 -05:00