Commit graph

15767 commits

Author SHA1 Message Date
Bogdan Abaev
098be27375 citation dlg: fix row cutoff on linux after resize
When resizing the window in list mode to match the height
of the content, account for the difference between
outerHeight and innerHeight of the window on Linux.
outerHeight > innerHeight (perhaps Linux includes chrome,
borders, etc. in its outerHeight), so we have to add their difference
to the desired height for resizing. Otherwise, the visible
dialog ends up receiving only some of the desired height and
the last row is cut off.

Also, ensure that in tests, we wait for searching triggered by
switching dialog mode to finish before running the next search.

Fixes: zotero#5502
2025-08-21 11:50:10 +03:00
abaevbog
2f262c943c
Additional fixes to form element appearance on Linux (#5503)
Followup to 06ef9ab

Fix <html> based form elements, in citation dialog item popover.
Set slightly smaller default border width of buttons.
2025-08-21 11:48:53 +03:00
Abe Jellinek
4f1589132c
Add Relate Items to context menu (#5499) 2025-08-20 02:15:06 -04:00
windingwind
7f9418fe98
Implement custom menu API (#5028) 2025-08-20 02:10:35 -04:00
Abe Jellinek
8eb803292e Clear pane.persist in tests (#5495) 2025-08-20 02:00:31 -04:00
Abe Jellinek
d854058be6 Don't reopen collection/item pane on restart (#5495) 2025-08-20 02:00:31 -04:00
Abe Jellinek
d35bdd333b
Fix errors when multi-selection contains collections in trash (#5497)
By using getSelectedItems() instead of getSelectedObjects(). The code
below all assumes that `items` contains items, and we handle general
(item or collection) options above, so this seems more correct.

And fix duplicate var.
2025-08-20 01:23:47 -04:00
Dan Stillman
bdf49b9b00 Fix slow purging of creators
Same as e532e435f but for creators
2025-08-19 03:29:05 -04:00
Adomas Venčkauskas
72cc386207 Update LibreOffice submodule 2025-08-19 10:07:53 +03:00
Abe Jellinek
3a61e782ad Scaffold: Fix modern JS APIs missing from code completion 2025-08-18 13:17:03 -04:00
Dan Stillman
dfc869bd2d Update LibreOffice submodule 2025-08-16 11:08:31 -04:00
Dan Stillman
8df8182f01 Update LibreOffice submodule 2025-08-15 02:59:05 -04:00
Dan Stillman
bf59a1e2f8 Revert "Fix relations to erased items reappearing after sync (#5486)"
I think this might cause problems and needs to be tested further.

This reverts commit 07066fd8c1.
2025-08-15 02:09:18 -04:00
abaevbog
07066fd8c1
Fix relations to erased items reappearing after sync (#5486)
Fix ghost relations to erased items reappearing after
sync. The dataserver ensures that related relations are
bidirectional. If a related item is erased, syncing
would first upload the update to the remaining related item
(where the relation is removed), followed by the deletions.
While handling update upload, the dataserver would return
the old, should-be-removed, "dc:relation" entry for that item
because it does not know that the other item is erased.

To handle this, swap the order of operations during sync:
upload deletion first and then upload updates after.
Then, when the dataserver handles the update of the non-erased item,
there is no related item to enforce bidirectional relations to.

Fixes: #5481
2025-08-15 02:00:43 -04:00
abaevbog
8b0f8d7c20
avoid relation to self after merging related items (#5488)
When copying over relations during merge of items
that are related to one another, avoid relating the
chosen main item to itself.

Fixes: #5487
2025-08-15 01:40:01 -04:00
windingwind
20f738ba0d
Remove timeline related code (#5484) 2025-08-15 01:30:42 -04:00
Abe Jellinek
86f9dd7400
Handle invalid path when launching/revealing on macOS (#5485) 2025-08-15 01:29:05 -04:00
Abe Jellinek
d69a1a65ee Fix intermittent context pane toggle test failure
Hopefully.
2025-08-14 17:52:28 -04:00
Abe Jellinek
a993ac74f1
Ensure read-only fields don't save on blur (#5468)
Fixes tabbing out of Scaffold's abstract box causing the test item to be
added to the user's library.

And use same format as itemPaneHeader.js in abstractBox.js.
2025-08-13 23:59:26 -04:00
abaevbog
f3227275b1
filter out trashed items in relatedBox (#5482)
If the item itself is trashed, all related items are displayed
(trashed or not).

Fixes: #1780
2025-08-13 23:56:40 -04:00
Martynas Bagdonas
71c2ffb3ee Update reader submodule 2025-08-12 14:17:25 +03:00
Matthias Kurz
9330db9ff8
Update Copyright year to 2025 (#5473) 2025-08-12 00:47:26 -04:00
Matthias Kurz
9f14f8424f
Set Gecko MinVersion to 140 (#5474) 2025-08-12 00:47:16 -04:00
Abe Jellinek
3e17928547 Fix hiddenDOMWindow comment 2025-08-08 09:54:07 -06:00
Dan Stillman
96dd7b16ac Better method of unsetting and restoring Mozilla environment variables
Hopefully a better fix for #4981, which wasn't working properly on at
least some Linux systems because the variables were getting restored
before the subprocess launched. This delays a (debounced) second, to
give the subprocess time to start, and then automatically restores the
variables.

An explicit restart via app code also immediately restores the
variables, since restarts on Linux inherent the environment and don't
use our startup script. (An upgrade restart could still happen when the
variables were cleared, but you'd have to be extremely unlucky --
launching URLs or files while also performing a manual restart the same
second.)
2025-08-08 02:57:47 -04:00
Adomas Ven
06ef9ab657
Fix linux form element styling (#5467)
Closes #5435
2025-08-07 02:16:16 -04:00
Dan Stillman
24a249353c "Caching" → "Cached" in CSL.Engine cache debug line to clarify timing 2025-08-07 01:11:01 -04:00
Dan Stillman
970675a2ac Update citeproc.js to include Juris-M/citeproc-js#256 2025-08-07 01:10:10 -04:00
Dan Stillman
c72a8a1424 Update citeproc.js to latest build
Includes Juris-M/citeproc-js#253 and Juris-M/citeproc-js#254
2025-08-07 00:59:48 -04:00
Abe Jellinek
d514786239 Clear _blockingObserver field when it was never initialized
Follow-up to cc3fc42b0a
2025-08-05 11:18:19 -04:00
Abe Jellinek
cc3fc42b0a Catch BlockingObserver error when reader is closed immediately
https://forums.zotero.org/discussion/125841/cannot-open-a-pdf-file-in-a-new-tab
2025-08-05 11:17:03 -04:00
Adomas Venčkauskas
2c7475a5e6 Fix Google Docs integration breaking when cancelling edit bibliograpy
I've run into this randomly. It only occurs if the first operation on a
Google Doc since Zotero restart is the edit bibliography dialog which
you cancel. Due to how the HTTP integration client is implemented, the
missing await causes it to try to send another response to the Connector
(which is no longer waiting on the /response endpoint), failing and
causing a forever pending promise, which makes subsequent attempts to
interact with the Google Docs plugin no-op.

We get occassional reports from users about Google Docs getting stuck
that is fixed by Zotero restart, so hopefully this will reduce those.
2025-08-05 09:55:09 +03:00
Martynas Bagdonas
e644df74fe Remove tab characters from FTL files to avoid parsing issues
Fixes #5447
2025-08-04 15:02:51 +03:00
Tom Najdek
8355a95407
Warn users running non-ARM version on ARM CPU on Linux (#5461) 2025-08-02 09:59:48 -04:00
Abe Jellinek
f8a1a2c6ed
Don't merge into a missing snapshot attachment (#5459) 2025-08-02 01:53:47 -04:00
abaevbog
487677958e
fix subcollection not being copied to library root (#5464)
Fixes: #5463
2025-08-02 01:50:54 -04:00
Abe Jellinek
68ffe9583c Clean up JSDoc comments and unused field (#5443) 2025-08-02 01:49:39 -04:00
Abe Jellinek
fd6c52ede4 Find Full Text: Simulate ProQuest redirect back to original page (#5443)
We don't follow JS redirects, so this is necessary in order for
us to get to a translatable page after authentication.
2025-08-02 01:49:39 -04:00
Abe Jellinek
91732419b6 Attach CookieSandbox to Find Full Text requests and translation (#5443)
With a 24-hour validity per site (eTLD+1).
2025-08-02 01:49:39 -04:00
abaevbog
2a60011414
fx140: fix cutoff progressWindow on linux (#5462)
Resize the window to fit content on load after the
header is rendered. If the window is resized on
DOMContentLoaded, nothing is rendered yet and the
window will look cutoff on Linux.

Addresses #5453
2025-08-02 01:41:39 -04:00
abaevbog
873beebc0f
close more leftover windows in tests (#5460)
- close hyphenationTest window.
- properly close zoteroPane window in preferences_syncTest.
after() hook inside of the test would not close the window until the
very end of the entire test run. Without this, during
subsequent tests that open their own zoteroPane window, there
are two instances of zoteroPane open at the same time.
- close open tabs in readerTest cleanup, since subsequent
tests expect library tab to be selected.

Followup to https://github.com/zotero/zotero/pull/5444#issuecomment-3141879892
2025-08-02 01:40:21 -04:00
Abe Jellinek
74926fcc2e Fix menubar menu not opening after submenu item is selected
On Windows and (I'm assuming) Linux. Regression in c3f8ba8.

Fixes #5456
2025-08-01 12:12:36 -04:00
windingwind
37ff8c9143
Improve linux popup appearance (#5452)
* Fix tabs menu panel padding

* Fix tabs menu panel background

* Fix panel style selector

resolve: #5434
2025-08-01 11:02:14 -04:00
windingwind
1dbfb1a998
Improve linux window appearance (#5451)
resolve: #5449
2025-08-01 10:59:38 -04:00
Dan Stillman
2bff6541f2 Update note-editor and reader submodules 2025-07-31 22:50:21 -04:00
abaevbog
b1e163b7f5
fx140: Use architecture-specific build folder for tests on Linux (#5445) 2025-07-31 22:48:21 -04:00
Dan Stillman
87d27f9c51
Close ProgressQueueDialog after connector server tests (#5446)
Since some connector operations trigger recognition

This will hopefully fix the tags box test failures.
2025-07-31 21:54:15 -04:00
windingwind
773ca6f724
Improve item pane test stability (#5436) 2025-07-31 21:51:40 -04:00
abaevbog
69fdf0b145
fx140: fix collection tree toolbar color on Linux (#5440)
Override default toolbar color set in https://searchfox.org/mozilla-esr140/source/toolkit/themes/linux/global/toolbar.css#12

Fixes #5439
2025-07-31 13:35:14 -04:00
Dan Stillman
19a848484a Don't split tags at em dashes on paste in item tags box
https://github.com/zotero/zotero/pull/5366#discussion_r2245628458
2025-07-31 11:25:57 -04:00