Commit graph

10609 commits

Author SHA1 Message Date
Martynas Bagdonas
52c219c8b9 Switch to Library tab when dragging over EPUB or HTML files as well 2023-11-28 11:05:13 +00:00
Martynas Bagdonas
3eb1c3fb4f Fix reader PDF view iframes not receiving mouseup event 2023-11-28 08:44:25 +00:00
Martynas Bagdonas
58c6bdf504 Fix overflowing context pane
Fixes #3491
2023-11-23 11:32:05 +00:00
abaevbog
436b19d64c
Fix inconsistent ESC behavior on text edit when reader is opened (#3417)
This is needed to let itemBox, tagBox, etc. to handle ESC
events to revent any edits made to textfields. Only applied
if the currently focused element is input or textarea.

Fixes: #3246
2023-11-21 07:42:33 -05:00
Adomas Venčkauskas
9d710ea135 Be less aggressive about sending Zotero to back after http integration commands
Report https://forums.zotero.org/discussion/109479/bug-after-adding-citation-main-window-is-hidden-76
2023-11-21 10:34:36 +02:00
Dan Stillman
7027c08f1a Update locales from Transifex and merge new English strings 2023-11-18 04:08:07 -05:00
Dan Stillman
2c50749ab3 Add "GoogleDrive" as cloud storage path 2023-11-18 01:34:41 -05:00
Martynas Bagdonas
de9abdae39 Add localized string for black color 2023-11-17 18:33:41 +00:00
Martynas Bagdonas
94070e1b7c Fix navigation to specific annotation when using zotero://open-pdf
Fixes #3487
2023-11-15 21:54:59 +00:00
abaevbog
7c5600913b
fix to collections highlight bugs (#3412)
1. Trigger ZoteroPane.handleBlur on focusout instead of blur
to remove highlight when itemTree entries loose focus
even if ctrl/alt is still being held.
2. Prevent default event on Alt click on linux to avoid moving
focus to menubar
3. Avoid re-triggering focus multiple times
when ctrl is being held on windows to prevent highlight from becoming
stuck and not going away.

Fixes: zotero#3410
2023-11-10 19:17:01 -05:00
Abe Jellinek
cdc59e6a29 Remove debug logging from search routine
Way too slow and noisy.
2023-11-10 16:40:12 -05:00
Abe Jellinek
835542bb6f Preferences search: Match Fluent strings 2023-11-10 16:40:12 -05:00
Dan Stillman
b6d8571860 Update Z.File.getSample() signature to match getBinaryContentsAsync()
Not updated with 2b41b0127c
2023-11-10 16:30:10 -05:00
Dan Stillman
f1373652e6 Fix file:// URI handling in getBinaryContentsAsync() 2023-11-10 15:58:53 -05:00
Adomas Venčkauskas
5efd181e5b Fix Zotero 2.1 and earlier citation upgrade code 2023-11-08 09:53:39 +02:00
Dan Stillman
bf478392ce Block most resource loading in reports 2023-11-02 17:50:16 -04:00
Dan Stillman
47e55286f7 Add Baidu Netdisk and MEGA to cloud-storage-folder checks
Closes #3465
2023-10-31 05:31:06 -04:00
Martynas Bagdonas
4266df4d3a Propagate annotation deletion between reader instances of the same file
Fixes #3375
Fixes #3241
2023-10-27 18:28:43 +01:00
Adomas Venčkauskas
b71012689f Updates translate submodule. Fixes #3182 2023-10-26 13:03:00 +03:00
Adomas Venčkauskas
011dabd372 Fix corner case after #3460. Closes #3461 2023-10-24 14:24:38 +03:00
Adomas Ven
3b9d0ac1bb
Allow the collection tree rows to have custom row heights (#3460)
- The underlying changes are in windowed-list, which the item tree and
  all virtualized tables are based on, so if there are bugs they might
  show up outside of the collection tree.
- The expensive operation is adding/removing rows, since row offsets
  have to be recalculated (this includes collapsing/expanding rows).
- The cost on further drawing while scrolling is constant and shouldn't
  affect performance much.
2023-10-24 03:56:07 -04:00
Martynas Bagdonas
7e82cc5ffd Fix recursion error when toggling/resizing sidebar in reader window
Fixes #3379
2023-10-19 18:15:51 +01:00
Dan Stillman
fc088bc1f3 Update utilities submodule
Includes https://github.com/zotero/utilities/pull/30
2023-10-06 06:58:50 -04:00
Dan Stillman
a1f6821fe1 Fix attachment-title renaming bug on Windows
https://forums.zotero.org/discussion/comment/444399/#Comment_444399
2023-10-06 04:56:19 -04:00
Adomas Venčkauskas
195ea69b19 Fix tiny Quick Format dialog before text entry. Closes #3443 2023-10-03 10:24:20 +03:00
Dan Stillman
e3c64fb047 Don't migrate prefs in new profile 2023-09-29 04:06:04 -04:00
Adomas Venčkauskas
2db19ad4ca Fix http word integration word path unicode issues. 2023-09-27 12:19:38 +03:00
Dan Stillman
aef49da233 Fix nsIZipReader.close error after invalid ZIP file download 2023-09-26 05:09:40 -04:00
abaevbog
bbfc6ed817
activate collection tree row only if it's focused (#3431)
Fixes: #3426
2023-09-24 05:34:00 -04:00
Abe Jellinek
79ef266f2f
Detect more EPUBs in viewAttachment() content type fixer (#3433) 2023-09-23 03:09:23 -04:00
Abe Jellinek
c45405190a importFromFile: Remove duplicate and unused declarations
Apparently a var doesn't shadow a parameter with the same name, but that wasn't
obvious.
2023-09-22 12:20:12 -04:00
abaevbog
399baf0d73
disable "Find available PDF" if files not editable (#3430)
For example, in a public group files are not editable,
so this menu item is disabled.

Fixes: #3428
2023-09-22 09:13:36 -04:00
Abe Jellinek
f28873382d Preferences: Highlight parent of selected pane in navigation
Also, fix help and back buttons not hiding when starting a search.

Closes #3425
2023-09-21 13:39:06 -04:00
Abe Jellinek
9779c70915 Reports: Don't strip valid surrogate pairs
Without the /u (Unicode) flag, [\ud800-\udfff] matches *all* surrogate pair code
points, even when they're in a valid position in the string.

Fixes #3421
2023-09-21 13:19:22 -04:00
Adomas Venčkauskas
220eba8c63 Fix bibliography editor dialog (regression c89590c7) 2023-09-21 10:34:11 +03:00
Adomas Venčkauskas
a8ccab78f5 Fix classic citation and bibliography dialogs not persisting dimensions
The persisting logic doesn't work without an id on the root element
2023-09-21 10:34:11 +03:00
Adomas Venčkauskas
f8c3a3a31e Fix citation dialog being moved to the wrong location sometimes 2023-09-21 10:34:11 +03:00
Dan Stillman
98c1a6ca1b Fix "Export PDFs…" stopping if attachment file isn't found 2023-09-21 02:47:48 -04:00
Abe Jellinek
540a174dab TranslationChild: Make "interactive" count as readyEnough
Some pages (notably the first DOI.js test case) never get to "complete". I don't
know why! But for practically all translators that don't use defer: true,
"interactive" is ready enough.
2023-09-20 12:56:02 -04:00
Abe Jellinek
6740b2644d Make relevant prefs available in RemoteTranslate 2023-09-20 12:09:37 -04:00
Abe Jellinek
667f940a6c Reader: Use url (was baseURI) for all reader types 2023-09-15 12:33:53 -04:00
Martynas Bagdonas
1b23838d37 Load PDF file from URI to avoid keeping extra file copy in memory 2023-09-15 11:05:31 +02:00
windingwind
78fe68164f Remove reader events when plugin is disabled 2023-09-14 07:54:29 +02:00
Martynas Bagdonas
96652ea9e8 Enable plugins adding custom content to reader UI and context menus
#3373
2023-09-13 14:16:28 +02:00
Abe Jellinek
87286ca776 Remove tab content immediately
Amends 30c70a6ecd.
On some machines, the callback added in that change would never actually run, so
memory usage would grow quickly when switching between tabs. By wrapping in
setTimeout() instead of requestIdleCallback(), we keep the performance gains
from removing once the element is no longer visible (so we can avoid repaints,
rebuilding the layout tree, etc.), but we make sure that the callback gets
called nearly immediately.

#3321
2023-09-07 13:38:55 -04:00
Dan Stillman
8d93fd4c8c Fix test breakage after f68818387 2023-09-06 07:38:14 -04:00
Dan Stillman
f688183878 Fix keyboard accessibility in conflict-resolution dialog
It's now possible to tab through the panes and the buttons, and
left/right-arrow also change the selection, so you can use Left/Right +
Return to move through multiple conflicts.

Fixes #3395
2023-09-06 06:40:59 -04:00
windingwind
b91ae86079 Mark ItemTreeColumnOptions.renderCell as optional 2023-09-06 14:02:18 +08:00
Dan Stillman
b4c3c0c7f9 Don't require unused date field in retractions list 2023-09-03 18:43:44 -04:00
Dan Stillman
b918ad2892 Fix error closing ZIP reader during file sync on Windows
In Z7 on Windows 10 (but not 11 for me), nsIZipReader doesn't properly
close the file after `findEntries()` is called (as discovered by
@abaevbog), so a `remove()` on the downloaded ZIP file during file
syncing triggers an access-denied error. Setting the zip-reader variable
to null and forcing garbage collection seems to fix it. Doing this
everywhere we use nsIZipReader just to be safe.

I found the `forceGC()` in only one test file in fx102, but setting the
reader to null is done more widely, so maybe they just don't try to
delete ZIP files before GC happens and manage to avoid this bug.

Fixes #3369
2023-08-31 06:17:18 -04:00
windingwind
794e89d307
Add itemTree render cell option (#3342) 2023-08-30 00:11:25 -04:00
Martynas Bagdonas
b72894d874 Fix still broken reader view focusing after tab switch 2023-08-29 13:47:11 +03:00
abaevbog
ae1c8bd059
set opened reader tab index on state restore (#3357)
Fixes: #3353
2023-08-28 23:29:41 -04:00
Abe Jellinek
85cade3fb2
Make preferences less janky, preload panes on hover, allow panes to delay visibility until promise resolves (#3363)
Prevents flashes of unlocalized labels and controls without values set.
Makes switching panes feel speedier overall because of preloading.

I thought there was an issue for the flashes of uninitialized content but can't
find it now.
2023-08-26 05:57:38 -04:00
Abe Jellinek
6cd44f19fe Fix more Z6/Z7 inconsistencies in Advanced Search
- Prevent row height from changing when switching between text input conditions
  and menulist conditions
   - Replace some of (far from all of) the XUL layout with flexbox
- Restore groupbox appearance
   - A little retro? We probably want some kind of border like we used to have
- Replace some duplicate IDs with classes for styling
2023-08-24 11:14:59 -04:00
Dan Stillman
075457be45 Use REPLACE instead of INSERT for ebook schema changes
Follow-up to bdea760 (#3360), which I changed incorrectly
2023-08-24 05:13:42 -04:00
Dan Stillman
e3a6508134 Merge new English strings 2023-08-24 04:16:43 -04:00
Abe Jellinek
bdea76024b
Add EPUB to Attachment File Type in Advanced Search (#3360) 2023-08-24 03:06:33 -04:00
Abe Jellinek
8f4cb5002a
Fix progress queue segfault (#3359) 2023-08-23 04:56:21 -04:00
Abe Jellinek
30c70a6ecd Defer removing tab content
Improves EPUB close performance.

By wrapping with requestIdleCallback(), we ensure:

  1. remove() won't be called right away, so the DOM elements being removed
     won't be visible and won't trigger a relayout.
  2. remove() won't be called while there are pending UI events, so it
     shouldn't cause the UI to hang/lag/stutter.

Combined, these two improvements make the UI hang when closing a large EPUB
mostly imperceptible on my machine.

Addresses #3321; doesn't completely fix it because there's likely more to be
done on the reader side to optimize the DOM.
2023-08-21 12:20:57 -04:00
Dan Stillman
38d0750dd3 Don't include parent title in tab title for secondary attachments
As suggested in https://github.com/zotero/zotero/issues/2731#issuecomment-1201382522
2023-08-20 02:26:58 -04:00
Tom Najdek
4f19b1d13e
Improve file renaming preview in preferences (#3343) 2023-08-19 05:06:08 -04:00
Dan Stillman
4dbd52782c Better fixing of tab-title logic
Follow-up to 3eef4284d1, which wasn't totally correct, and adds the
attachment title before the parent metadata for secondary attachments.

https://forums.zotero.org/discussion/comment/441362/#Comment_441362
2023-08-19 04:51:04 -04:00
Dan Stillman
3eef4284d1 Fix "Filename" tab title option
https://forums.zotero.org/discussion/comment/441259/#Comment_441259
2023-08-19 04:00:49 -04:00
Martynas Bagdonas
b05ef8ed04 Properly focus reader iframe when opening a new reader instance 2023-08-18 18:33:52 +02:00
Abe Jellinek
17daf9fe8d Fix EPUB attachments with wrong MIME type on view
Fixes #3320
2023-08-15 17:54:37 -04:00
Abe Jellinek
7b26dab2f2 Show spread mode menu items in EPUB reader
Fixes #3318 (only odd spreads supported right now because of CSS grid
limitations)
2023-08-15 17:54:36 -04:00
Northword
dcca56d6c3
preferenceOptions.helpurl should be string instead string[] (#3310) 2023-08-11 07:13:58 -04:00
Dan Stillman
9dd182e9ca Collection tree selection fixes
Fixes various logic around what gets selected when collections and
searches are moved to or restored from the trash (which has never been
exposed) or when they're erased
2023-08-11 04:16:42 -04:00
Dan Stillman
c4eb9df716 Update utilities submodule 2023-08-09 18:09:03 -04:00
Dan Stillman
5e27a75010 Switch to better sentence-caser from zotero/utilities#26
Closes #293
2023-08-09 07:51:16 -04:00
Martynas Bagdonas
879109336a Rename pdf-reader paths to reader 2023-08-08 11:28:00 +03:00
Dan Stillman
ed52c7d7ef Merge new English strings 2023-08-07 16:07:56 -04:00
Martynas Bagdonas
07e4d68760 Suppress noisy "dead object" error after each click inside reader tab 2023-08-07 16:07:56 -04:00
Dan Stillman
7e481e3e5f Move Language to the bottom of the General prefpane 2023-08-07 16:07:55 -04:00
Dan Stillman
38b9457ea9 Move new string to Fluent 2023-08-07 16:07:55 -04:00
Dan Stillman
caee5f29ca Update reader prefs
- Move open-in prefs into reader prefs
- Move reader prefs up below File Handling
- Move new strings to Fluent
- Fix clicking on labels to focus open-in drop-downs
- Tweak text
2023-08-07 16:07:55 -04:00
Abe Jellinek
deb6acaab1 Add preferences for ebook & snapshot file handling 2023-08-07 16:07:55 -04:00
Abe Jellinek
2ef560f7d8 Extract ISBNs and DOIs from EPUB content (#64)
And move EPUB functionality to class.
2023-08-07 16:07:55 -04:00
Abe Jellinek
cab0fa93e7 Extend Retrieve Metadata to support EPUBs (#57) 2023-08-07 16:07:55 -04:00
Martynas Bagdonas
80da0fbb56 Remove the unnecessary buf to Uint8Array conversion 2023-08-07 16:07:55 -04:00
Abe Jellinek
b0b11cfcf5 Use data option to initialize reader 2023-08-07 16:07:55 -04:00
Martynas Bagdonas
e031509966 Fix Reader 2.0 merge caused regressions 2023-08-07 16:07:55 -04:00
Martynas Bagdonas
c62ed29de9 Fix text annotation dragging error 2023-08-07 16:07:55 -04:00
Martynas Bagdonas
f18411c151 Properly trigger annotation position split if server says it's too long 2023-08-07 16:07:54 -04:00
Martynas Bagdonas
12fde2dd4a Fix reader error handling and properly display critical errors 2023-08-07 16:07:54 -04:00
Martynas Bagdonas
46d066394f Temporary fix for tab crashes caused by tab loading racing conditions 2023-08-07 16:07:54 -04:00
Martynas Bagdonas
7e28973f3a Fix reader focusing 2023-08-07 16:07:54 -04:00
Abe Jellinek
b408b43394 Support pre-SingleFile snapshots 2023-08-07 16:07:54 -04:00
Martynas Bagdonas
5d8dd7cdf4 Add missing strings needed for reader 2023-08-07 16:07:54 -04:00
Martynas Bagdonas
3c08604770 Fix PDF file printing 2023-08-07 16:07:54 -04:00
Martynas Bagdonas
17deb16779 Add partial underline annotation support for note-editor
(changes to note-editor have to be merged to have full support)
2023-08-07 16:07:54 -04:00
Abe Jellinek
e199f35006 Fix _getColorIcon(), update stroke color, use for selected menuitems
- Need to set width/height for macOS native menu
- CSS named grays are too light to show well on the background, so use #555
- type="checkbox" menuitems don't show their icons, so use the icon stroke
  instead
2023-08-07 16:07:54 -04:00
Abe Jellinek
3443d065a3 Use native context menus on macOS 2023-08-07 16:07:53 -04:00
Abe Jellinek
1740e5f1aa Call uninit() in close()
This properly unregisters pref observers and flushes the reader's state.
2023-08-07 16:07:53 -04:00
Abe Jellinek
0ee54b4a7e Use IOUtils instead of OS.File 2023-08-07 16:07:53 -04:00
Abe Jellinek
bdb444371f Debounce writing EPUB/snapshot state to disk 2023-08-07 16:07:53 -04:00
Abe Jellinek
6a4715c324 Enable "Add Note from Annotations" for EPUBs and snapshots 2023-08-07 16:07:53 -04:00
Abe Jellinek
db6ff88ad1 Add full-text indexer for EPUBs 2023-08-07 16:07:53 -04:00
Martynas Bagdonas
e8c5c22d05 Fix pdf-worker CMaps and standard fonts paths 2023-08-07 16:07:53 -04:00