Commit graph

11423 commits

Author SHA1 Message Date
windingwind
06f359df23 Fix merge window style (#4430) 2024-07-31 01:37:37 -04:00
windingwind
99a2b83cb6 Fix CR attachment box (#4430) 2024-07-31 01:37:31 -04:00
Abe Jellinek
fbcadd06ba Update progress queue dialog styles (#4464) 2024-07-31 01:35:43 -04:00
windingwind
c7757131a6
Fix Prefs window style on Windows (#4465) 2024-07-31 01:28:05 -04:00
windingwind
6530ccd101
Fix Zotero.Item.fileExists calling on unsaved item (#4468) 2024-07-31 01:19:31 -04:00
Tom Najdek
a538a5588e
Reset file renaming preference if input left empty (#4462) 2024-07-30 23:08:41 +02:00
Dan Stillman
80cc971251 Merge new English strings 2024-07-28 03:34:25 -04:00
Dan Stillman
ba7ab0c262 Update English strings for Transifex 2024-07-28 03:31:17 -04:00
Dan Stillman
8df6661f7e Tweak RTF Scan intro text 2024-07-28 03:30:23 -04:00
Abe Jellinek
9d8845b961 Locate manager: Fix button spacing (#3807) 2024-07-28 03:26:39 -04:00
Abe Jellinek
10c3459a70 Preferences: Make macOS help button smaller (#3807) 2024-07-28 03:26:31 -04:00
Abe Jellinek
3d0014f258 Preferences: Fix styling a bit (#3807)
- Don't import global Zotero SCSS
   - I think this was always a mistake - preferences have their own
     root SCSS file (preferences.scss) and don't need zotero.scss
- Don't add margins on radio or button labels
   - Like above - I don't think this was correct even before the latest
     button style tweaks!
- Don't add global margins
   - Otherwise we start an arms race with all the other elements in the
     pane - anything without a margin-inline-start will look like it's
     sticking out to the left. Apply specific margins instead.
2024-07-28 03:26:28 -04:00
Abe Jellinek
5f717d3bde Show first-run banner on upgrade (#3807) 2024-07-28 03:26:12 -04:00
abaevbog
1cdb364361
Fix first row of itemTree not getting announced (#4448)
Tweak to the conditional to check if something is focused
via selection.count (instead of selection.focused which
defaults to 0 and fails on the first focused item).

Post: 40fd5efe05.

Fixes: #4444
2024-07-28 02:59:01 -04:00
Tom Najdek
00ae8bb9b2 Add more features to the file renaming functionality (#4424)
* New `attachmentTitle` field, returns the title of the current attachment (or
  the future title of the attachment being created)
* New function `match` to enable testing values with a regex.
* New function `start` to enable truncating from the beginning.
* Ignore new line characters in the template for easier editing.
* Avoid repeated characters when changing case (snake/dash)
* Increase the size of the template input field.

Closes #3252
2024-07-28 02:57:14 -04:00
Grace Dinh
29f4aece24 Add regex replace feature for file renaming (#3562) 2024-07-28 02:56:19 -04:00
Abe Jellinek
4187819cd1
File renaming: Match content type prefixes, add UI (#4431) 2024-07-27 03:01:43 -04:00
Abe Jellinek
4653059536
Select Items dialog: Change accept button label to Select (#4441) 2024-07-27 02:49:22 -04:00
abaevbog
8b67fbcdce
Select Items Dialog: restore tab order (#4442)
After redesign, tab order became: quickSearch -> itemTree ->
cancel and accept buttons -> collectionTree.

This restores original tab sequence: quickSearch -> collectionTree ->
itemsTree -> cancel and accept buttons.
2024-07-27 02:16:38 -04:00
Abe Jellinek
6a99fb673a Remove now-unused string (#4397) 2024-07-27 02:11:58 -04:00
Abe Jellinek
629c5ecab2 Find Full Text: Support Atypon (#4397)
Don't remove all query strings when normalizing URLs - keep 'download'
so that Atypon PDFs/EPUBs resolve correctly.
2024-07-27 02:11:58 -04:00
Abe Jellinek
7020d60351 Generalize Find Available PDF -> Find Full Text (#4397) 2024-07-27 02:11:22 -04:00
Dan Stillman
99df46cbbb Better architecture reporting in error reports 2024-07-27 02:10:19 -04:00
Dan Stillman
a92521bd30 Identify Windows 11 as Windows 11 2024-07-27 02:10:19 -04:00
windingwind
8c5d4c7cd5
Add plugin blocking list (#4438) 2024-07-27 00:23:31 -04:00
Abe Jellinek
b71547469f Select Items dialog: Use drawintitlebar, not chromemargin
Fixes missing window border/shadow and makes it possible to drag the
dialog on Windows.

Closes #4440
2024-07-26 11:44:28 -04:00
Abe Jellinek
7c7d8c1433
Implement Select Items dialog redesign (#4406) 2024-07-26 02:55:43 -04:00
Abe Jellinek
1463b58b5b Preferences: Make _syncToPrefOnModify work like _syncFromPref 2024-07-25 12:57:43 -04:00
Abe Jellinek
dbc8b9bfed Select Items dialog: Double-click to accept
Closes #4428
2024-07-25 10:13:21 -04:00
Dan Stillman
8076c97900 Merge new English strings 2024-07-25 03:00:09 -04:00
Abe Jellinek
9a43e8f057 Related box: Filter out missing items
Fixes #4427
2024-07-24 16:58:31 -04:00
Martynas Bagdonas
10adea71fc Add "Citation" string for note editor 2024-07-24 17:36:28 +03:00
Abe Jellinek
0944f3bdc6 Item pane header: Show default context menu for attachment titles
Closes #4415
2024-07-22 12:45:18 -04:00
Martynas Bagdonas
c2575d2a14 Gray out "Import Annotations…" in reader window when no annotations
Fixes #4416
2024-07-22 14:42:14 +03:00
abaevbog
c5c613c82c
vpat 80: focus first field in search window/dialog (#4402)
Instead of focusing the first condition, which ends up placing
focus in the middle of the new window or modal. It is best
to focus the first node, which is the general convention,
per https://www.w3.org/WAI/ARIA/apg/patterns/dialog-modal/, and
what many screen reader users expect. When we focus a field in
the middle of the window/dialog, it makes it seem for some users
that this is the first node, which will make them miss all the
fields above it.

Also, linked search name input to its label in searchDialog.xhtml.
2024-07-21 06:02:50 -04:00
Dan Stillman
846279da01 Use include.js in customElements.js 2024-07-21 06:01:43 -04:00
Dan Stillman
8a075dce9e Fix error generating header in updates window 2024-07-21 06:01:26 -04:00
Dan Stillman
1d0cdf4df0 Fix "Check for Updates" button in startup error dialog 2024-07-21 05:59:25 -04:00
Dan Stillman
3b1cb2b9c2 Avoid error if item is modified before collections pane is loaded
E.g., during Extra field migration at startup
2024-07-21 05:57:17 -04:00
Dan Stillman
9446f7f583 Fix Collection [n] not yet loaded startup error
Can happen during Extra field migration at startup due to
Item::getCollections() change in 2d3375e9f6 that requires collections
to be loaded

https://forums.zotero.org/discussion/115993/collection-not-yet-loaded-error-on-startup
https://forums.zotero.org/discussion/116137/zotero-cannot-be-used-after-updating-to-the-latest-version
2024-07-21 05:57:04 -04:00
Dan Stillman
7e01a7d0ec Merge new English strings and fix some backslash errors 2024-07-20 02:35:03 -04:00
Martynas Bagdonas
d16ea8fe15
Enable type change between highlight and underline (#4411) 2024-07-20 02:27:11 -04:00
Martynas Bagdonas
532ae729c0 Implement highlight ↔ underline annotation conversion (delete, recreate)
#3744
2024-07-19 14:31:46 +03:00
Martynas Bagdonas
10fecce381 Add missing File → Import Annotations option to reader window
Fixes #3864
2024-07-19 12:20:22 +03:00
Dan Stillman
691d26886f Update locales from Transifex 2024-07-19 04:27:15 -04:00
windingwind
b04f2c8ccb
Fix context notes pane not load (#4289)
fix: #4284
introduce a new notifier type "load", "tab", a follow up fix to #4174

---------

Co-authored-by: Bogdan Abaev <bogdan@zotero.org>
2024-07-19 02:41:45 -04:00
abaevbog
53fed83e05
do not save edits on Escape in reader tags popup (#4399)
<panel> takes over Escape handling by just closing the popup via
what looks like a capturing listener on document, since Escape
keydown events never even reach the popup itself. When the popup
is just closed like that, tagsBox is blurred so all unwanted edits get saved.

To properly handle Escape, attach our own capturing listener that will
reset all edits before the popup is closed.

Fixes: #4398
2024-07-19 02:34:28 -04:00
Abe Jellinek
38391f356c
Restore autoscroll support in reader (#4405)
- Mozilla's ActorManagerParent was only being imported when devtools
  were initialized (either by opening the Error Console or by connecting
  via remote debugging). Import it in our ActorManager so Mozilla
  actors, including AutoScroll, are always registered.
   - This may have other effects! I'm assuming most of us test with
     the error console visible, though, so we would've had Mozilla
     actors, while users running without devtools wouldn't have. We
     definitely want those actors. (Most of them, at least.)
- Don't override autoscroller styles with our panel customizations.
2024-07-19 01:57:45 -04:00
abaevbog
e6b5ba60dd
fix tab not scrolling into view (#4404)
After react 18 update, the tab node may not yet be rendered
by tabBar.jsx when we try to scroll it into view in Zotero_Tabs.select.

- To make sure scrolling happens when rendering is done, move scroll-related
logic into a useEffect of tabBar.jxs. It also makes sure that we'll scroll to
a selected tab if it is moved via context menu to the very beginning or the end.

- Added a small scroll-padding to tabs container to make sure the border
does not get cutoff after the tab is scrolled into view instead of
JS code accounting for the border.

- Fixed a glitch where the pinned library tab would not get selected
on shift-tab from opened tabs menu.

Fixes: #4382
2024-07-18 02:19:07 -04:00
abaevbog
40fd5efe05
vpat 48: announce selection for default virtualized table (#4391)
* vpat 48: announce selection for default virt table

For simpler virtualized tables
(e.g. style manager in Zotero_Preferences.Cite), the table
does not get re-rendered when selection changes, so
aria-activedescendant does not get updated in render().

- a single function to update aria-activedescendant of the table
- call it in _updateTree of the tree selection because _onSelection
is not called the very first time a table is rendered. In that case, after
restart, collectionTree would have a selected row but no aria-activedescendant
- remove this.forceUpdate() from selection handlers of itemTree and
collectionTree because judging by the coment it's main purpose was to set
aria-activedescendant through render()
- set aria-activedescendant in _onSelection handler
of virtualized table. 
- construct and set aria-label for rows build via
makeRowRenderer of VirtualizedTable so that is is
announced when the row is selected.
2024-07-17 10:34:16 +03:00