Commit graph

9843 commits

Author SHA1 Message Date
Dan Stillman
b6a597a7f9 fx115: nsIPromptService → Services.prompt 2024-03-30 00:58:54 -04:00
Dan Stillman
ef75f59037 fx115: Remove support for OS.File instance from md5Async() 2024-03-30 00:58:54 -04:00
Dan Stillman
95caebde2b Remove some old connector code 2024-03-30 00:58:54 -04:00
Dan Stillman
920461cd9d fx115: Update lots of OS.File/OS.Path uses 2024-03-30 00:58:54 -04:00
Dan Stillman
5a8a7ebccc fx115: Bundle PluralForm.jsm from older Firefox 2024-03-30 00:58:54 -04:00
Dan Stillman
f472ee6a4c fx115: Remove global.dtd includes and chromedir attribute
It only had `locale.dir`, which it looks like we can handle in different
ways now:

- CSS rules with `:-moz-locale-dir(ltr)`
- `let isLTR = document.documentElement.matches(":-moz-locale-dir(ltr)");`
2024-03-30 00:58:53 -04:00
Dan Stillman
13ab3bd87f fx115: Add command-line handling to Firefox command-line handler
XPCOM objects have to be statically registered now, so instead of
creating our own command-line handler, just stuff our code into the
Firefox one.

A few parameters require the Zotero object, which isn't available in the
Firefox CLH, so I've left those in zotero-service.js for now until we
decide how to deal with those.
2024-03-30 00:58:53 -04:00
Dan Stillman
e76c6c6a1a fx115: Update loadURI() calls to take nsIURI and remove loadURIWithFlags
https://bugzilla.mozilla.org/show_bug.cgi?id=1810141
https://bugzilla.mozilla.org/show_bug.cgi?id=1444760
2024-03-30 00:58:53 -04:00
Dan Stillman
c36f40735c fx115: Change FilePicker to Mozilla ESM style
var { FilePicker } = ChromeUtils.importESModule('chrome://zotero/content/modules/filePicker.mjs');
2024-03-30 00:58:53 -04:00
Dan Stillman
95d577beb6 fx115: Add shims for most of OS.File, OS.Path, and OS.Constants.Path
var { OS } = ChromeUtils.importESModule("chrome://zotero/content/osfile.mjs");
2024-03-30 00:58:53 -04:00
Dan Stillman
2051f08b4c fx115: Move Zotero object initialization to zotero.mjs 2024-03-30 00:58:53 -04:00
Tom Najdek
45bd374530
Fix error when dealing with invalid certificates (#3893) 2024-03-29 07:44:40 -04:00
Bogdan Abaev
0f8dce630d qf: fix insertNote dialog breakage
Fix breakage in insert note dialog caused by missing icon container after 1eaff81
2024-03-29 09:59:26 +02:00
Abe Jellinek
37a6df4ccb
editable-text: Clean up render() (#3895) 2024-03-29 01:16:58 -04:00
Abe Jellinek
f9e25675f0 editable-text: Prevent dropping text into read-only field 2024-03-28 13:13:10 -04:00
Abe Jellinek
489cee6b24 FileHandlers: Throw error when handler is missing on Windows/Linux
Not awaiting exec() has the side effect that we no longer get errors
if the executable is missing / isn't actually executable. Extract those
checks to prevent problems of the sort fixed in 63f54d3 in the future.
2024-03-27 13:52:15 -04:00
Abe Jellinek
63f54d3184 FileHandlers: Fall back when _getSystemHandler() fails
Continue to Zotero.launchFile() as intended.

https://forums.zotero.org/discussion/113179/pdfs-will-not-open-in-system-reader-when-double-clicked
2024-03-27 13:23:54 -04:00
windingwind
54b9ff6e8a
Preferences: Dispatch showing on all children (#3876) 2024-03-26 23:05:05 -04:00
Abe Jellinek
4f0e9bb9bb Scaffold: Enable syntax highlighting/formatting in Test Input 2024-03-26 16:36:05 -04:00
Abe Jellinek
a7044db15e Scaffold: Remember cookies set in browser by default
Making this configurable - it's worth testing translators to make sure
that they *aren't* dependent on some specific cookie configuration,
apart from obvious cases like login-gated sites.
2024-03-26 14:22:08 -04:00
Abe Jellinek
37ac6f9058 Update translate submodule 2024-03-26 14:19:47 -04:00
Tom Najdek
a0658b5ada
Fix styles in CSL Preview window (#3873) 2024-03-24 05:56:23 -04:00
Abe Jellinek
750f53aa53 Update translate submodule 2024-03-22 13:14:43 -04:00
Abe Jellinek
bef7ecd409 Scaffold: Print attachment URLs
Useful for debugging. This doesn't apply to tests.
2024-03-22 12:44:30 -04:00
Abe Jellinek
ff96de8723 Scaffold: Remove id field from returned items
Generates confusing diff output and isn't necessary.
2024-03-22 11:41:14 -04:00
Tom Najdek
19f4509075
Fix incorrectly colored icons in create collection dialog (#3872) 2024-03-22 01:23:31 -04:00
Martynas Bagdonas
a50b7ef04a Finish dictionary installation even if file cleanup fails (on Windows) 2024-03-19 12:03:27 +02:00
Abe Jellinek
0e087c8441 Update translate submodule 2024-03-18 15:50:30 -04:00
Abe Jellinek
cee1e3a596 Scaffold: Update copyright year automatically 2024-03-18 12:20:22 -04:00
Sebastian Karcher
6d02076a1c
Scaffold: Fix MARC template, update copyright (#3856) 2024-03-18 12:17:48 -04:00
abaevbog
1eaff8110c
Quick-format: do not hide reference panel (#3816)
Citation dialog: keep reference panel open without selection

- Reference panel remains opened while the focus is on an input
- The first item from the reference panel is no longer selected by default
to avoid unwanted items being added as a bubble
- The first item from the reference panel is selected only when the
dialog has no bubbles or when a search for a non-empty input has ran
- Shift-Enter from input or reference panel will accept the dialog's
state instead of creating a bubble
- Ensure that the reference panel reloads when a bubble is deleted
- Added button to accept the citation dialog

Some other changes:
- Z-icon and spinner/accept icon occupy the same amount
of space
- Ensure that window's width is 800px
- Set the editor's width dynamically when DOM is loaded
- Remove not used css classes and css adding margins to
z-icon.
- Do not accept/bubbleize while loading
2024-03-18 14:27:21 +02:00
Bogdan Abaev
3dc37183b4 qf: fix wrong references panel position on windows
- use dialog as the anchor, not the document element
- after the window is resized, the panel will remain
where it was, so if it's far away from the dialog,
if gets closed and re-opened to reposition it.
2024-03-18 13:00:17 +02:00
Tom Najdek
f144f3a725
Don't use link icon in tabs or open-tabs menu. Resolve #3837 2024-03-15 13:49:43 +01:00
abaevbog
e5dd25fbd5
Fix collections filter not hiding on windows (#3850)
On windows, if the cross icon from the collection filter
search-textbox is clicked, the 'blur' event fires before
the input is cleared, and the filter is never hidden.
To make sure that the search field ends up going away,
hide it if the field is empty and not focused in input
handler.

Fixes: #3840
2024-03-15 03:37:42 -04:00
Bogdan Abaev
eb2ef8a2d1 shortcuts of tab navigation capturing events
2 listeners handle shortcuts and hotkeys: bubbling ZoteroPane.handleKeyDown
and capturing Zoteropane.captureKeyDown.
We generally want shortcuts to be handled by the non-capturing listener
to avoid a conflict with lower level component that may want to handle the event
(e.g. we want to handle Escape keypress only if nothing else took care of it).
Tab navigation is an exception, since we want it to happen all the time.
For example, Ctrl+PageUp can be handled by itemTree but we want to override
it to make sure that it selects the tab regardless of other listeners.

This fixes regression after 5f0e3d5
where the tab selection logic was never reached because the event was handled
by itemTree.
2024-03-13 15:38:40 +02:00
Bogdan Abaev
e07ac555af fix collection highlight regression
- Bring back un-highlighting of collections on keydown if any other
control key besides Ctrl/Options is pressed (with better comments).
It fixes regression after 527fa5b12f
where if one presses, for example, Ctrl-Shift-A to copy an item,
collection highlighting would scroll the collection tree for no reason.

- To decrease the chance of collection highlighting being activated when
it is not intended, only highlight collections when the itemTree is focused
2024-03-13 15:38:40 +02:00
Tom Najdek
f8d59d14bc
Move tags back to beginning of item rows #3781 (#3839)
To get the current behaviour (tags after title), set
pref `extensions.zotero.ui.tagsAfterTitle` to true.
2024-03-12 19:02:52 -04:00
abaevbog
8e5732cf9c
fix to "show in library" not focusing the itemTree (#3836)
- handle additional focusElementID options value in Zotero_Tabs.select to
focus a node with the specified ID, instead of what was recorded
as last focused element
- use that parameter in ZoteroPane.selectItems to make sure that
itemTree is focused after the tab is switched to zotero-pane
- removed redundant calls to Zotero_Tabs.select('zotero-pane') after
Zotero_Pane.selectItems
2024-03-12 18:57:48 -04:00
Abe Jellinek
c31a40c749
editable-text: Make dropping text work when field is unfocused (#3730) 2024-03-12 01:38:00 -04:00
Abe Jellinek
5489b6cc4b
Scaffold: Show current Git branch in title (#3834) 2024-03-12 01:33:03 -04:00
abaevbog
844fd98c72
qf: fix suppress author checkbox click (#3832)
Use <checkbox> instead of <html:input type="checkbox"> for the
suppress author checkbox. <html:input> on mousedown on the actual box
looses focus, so the popover is immediately closed by focusout listener.
Fixes: #3830
2024-03-11 17:53:58 -04:00
windingwind
92a04fcffa
Revert editable text style on Windows (#3828) 2024-03-11 02:25:26 -04:00
windingwind
f0db826b72
Fix update.xhtml style on Windows (#3824) 2024-03-10 01:57:38 -05:00
Tom Najdek
16fa1ac893
Fix attachment icon remains after deleting attachment. Fix #3779 2024-03-08 15:22:15 +01:00
Adomas Venčkauskas
633bee45af Fix Citation dialog not working on Windows with high refresh rates
Closes #3804
2024-03-08 12:24:01 +02:00
Abe Jellinek
ac196a5944
Preferences: Don't reopen to subpane (#3802) 2024-03-07 03:09:30 -05:00
Abe Jellinek
1ca23fedb2 FileHandlers: Don't await long-running exec() on Windows/Linux
We can await /usr/bin/open on macOS because it returns as soon as the
application has begun launching, but we can't await when we exec a
program directly on other platforms.

Fixes #3799
2024-03-06 14:03:17 -05:00
Abe Jellinek
ba86e9b4c9 Preferences: Catch l10n failure and print a more helpful error 2024-03-04 11:24:32 -05:00
windingwind
23da0d70b0
Implement Windows redesign for native elements (#3727) 2024-03-02 02:51:55 -05:00
windingwind
337f54ac03
Fix attachmetsBox inTrash? (#3780) 2024-03-01 17:11:11 -05:00
abaevbog
b047f3d903
itemBox: ensure the grippy is hidden if <2 authors (#3735)
When contextmenu closes, it clears visibility style from all components.
It is added temporarily so that the options buttons do not
disappear if the mouse leaves the row. The visibility setting for
the grippy for items with only one author should be in
a separate class so that grippy is not displayed by accident.

Fixes: zotero#3732
2024-03-01 00:46:09 -05:00
Abe Jellinek
9e78957c72 Preferences: Fix freeze/double dialog when setting data directory
Addresses #3767
2024-02-29 10:45:52 -08:00
Abe Jellinek
19b12b613b Preferences: Dispatch synctopreference *before* setting preference
Matches pre-fx102 behavior.
2024-02-29 10:44:05 -08:00
Abe Jellinek
ae441c6db1 FileHandlers: Fix Acrobat and PDF Expert not opening on macOS
Fixes #3771
2024-02-29 09:24:11 -08:00
Abe Jellinek
352f71e32e
Fix zotero://open/ and FileHandlers regressions (#3761) 2024-02-29 05:08:33 -05:00
Abe Jellinek
5e10e627c3
Replace calls to keepParents() with keepTopLevel() (#3766) 2024-02-28 19:13:20 -05:00
Abe Jellinek
cbe75f1de4
New Collection dialog: Widen (#3733) 2024-02-28 01:53:32 -05:00
abaevbog
1a48e4d3f6
quick-format: post-accessibility update edits (#3753)
- Backspace from the very beginning of the input will delete the previous
bubble, as opposed to removing the input itself. If it makes it so that
two inputs are next to each other, they are merged.
- When a new input is created via a mouse click, and the current input
is empty, manually delete it right away. Waiting for the blur handler
to remove it makes it so that the bubbles shift back and forth for a moment
when a new input is added and the old input is not removed.
- Minor tweak to make sure that even if there's a 'br' before an input,
clicking before it will not make a new input and just refocus it.

Fixes: zotero#3749
2024-02-28 00:20:54 -05:00
Abe Jellinek
368e94fbb1
Locate menu: Don't show "New Tab" when external, fix bugs (#3755)
- Run label update logic once instead of repeating on every item
- Show plural attachment type when multiple attachments of same type
  are selected (instead of "Attachments")
- Fix incorrect icon and label showing when openReaderInNewWindow = true
2024-02-28 00:13:07 -05:00
Abe Jellinek
e1538d9f10
Use HTTPS when opening DOIs via Locate menu and double-click (#3757) 2024-02-27 17:42:08 -05:00
Abe Jellinek
50331b9a04 editable-text: Accurately set height limits from min/max-lines
2ex wasn't quite right, so let's use the actual line-height when
possible.
2024-02-27 11:34:02 -08:00
Dan Stillman
98fc32a65e Add Tamil locale from Transifex
Contributed by @TamilNeram
2024-02-27 07:01:49 -05:00
abaevbog
5f0e3d550b
make shortcuts keypress listener non-capturing (#3743)
- ZoteroPane.handleKeyDown does not capture events. It is not strictly
necessary now but it helps to avoid future issues such as one solved in
b15fb36f1b. One benefit from this now is
if one tabs onto a toolbarbutton that opens a menu in contextPane (e.g.
an options button in itemBox), clicks space to open the menu and then
escape to close it, this will keep focus where it was, while the capturing
listener would immediately shift the focus to the reader.
- Removed shift-tab specific case from the handler. It looks like it
was handling the shift-tab in the following scenarios:
from notes search bar (can just be handled by Tab),
from "Return to notes list button" in note editor toolbar (it's no longer there),
from a child of zotero-view-item e.g. itembox. (does not apply,
since zotero-view-item itself is a focusable scrollable area)
- use reader.focus() instead of reader.focusFirst() in tab handler,
since focusFirst() focuses the <body> of the browser and it's not interactable.
2024-02-27 01:52:40 -05:00
Abe Jellinek
bbab56837e Set Abstract section summary to abstract 2024-02-27 01:50:40 -05:00
Abe Jellinek
cb420fb570 Add support for collapsible-section summaries 2024-02-27 01:50:40 -05:00
abaevbog
0007d077cc
accessibility improvements for quick format dialog (#3464)
- removed all cursor-related logic. Instead, insert a new input component
each time the user wants to type. The input remain between bubbles
and focusing on one will open the reference panel. Leaving the input hides
the reference panel.
- during drag-drop reordering, lock the editor height so that it doesn't
get out of sync with the window.
- removed the iframe, since it was no longer needed.
- keyboard navigation: Home/End will place an input at the start/end
of the editor and focus it. Tab focuses the last active input if any, or
the input in the end otherwise. Shift-Tab from the editor focuses the
dropdown button if it is active. Tab from the input will focus the first
entry of the reference list. Tab from the reference list will focus the
active input. Shift-ArrowLeft/Right from focused bubble will swap the bubble
with its neighbor. ArrowDown/Up from bubble will open/close the citation dialog.
- when a reference item is selected, previously active input is re-focused.
- aria-properties to have voiceover, JAWS and NVDA read bubbles, inputs and
reference items, as well as announce hints about available keypresses.
- typing from bubble or the reference panel will refocus previously active
input
- different minor updates to make the functionality less janky
- refactoring of refreshing and resizing of the reference panel to
be more straightforward and to only do it when necessary.
E.g. clicking on a bubble and closing the
popover after will not rerun search and just display the old results.
- some throttling logic so that two escape keypresses one after another
when the itemPopover is open do not close the entire dialog
- renamed variables: qfb=dialog, qfe=editor, panel=itemPopover
- use short form of locator string for bubbles
2024-02-27 01:00:14 -05:00
Martynas Bagdonas
5dcaf65757 Don't show context pane toggle in standalone reader window 2024-02-26 20:43:20 +02:00
Tom Najdek
cffb5cdd4b
Fix best attachment type sometimes missing. Fix #3740 2024-02-26 13:14:27 +01:00
Abe Jellinek
52856ae696 Fully block all HTTP requests in the reader 2024-02-24 02:21:06 -05:00
Abe Jellinek
6095ee91ff Generalize RemoteResourceBlockingObserver -> BlockingObserver 2024-02-24 02:21:06 -05:00
Abe Jellinek
a7d59a90d3
Unify attachment opening code and support EPUB/snapshot note links (#3705) 2024-02-23 06:38:11 -05:00
Tom Najdek
b1333d0e9d
More attachment type icons in the item tree (#3645) 2024-02-23 06:11:40 -05:00
windingwind
ae8cbdf3b7
Support keyboard navigation in attachment preview (#3739) 2024-02-23 05:58:09 -05:00
Abe Jellinek
93536a1592 Fix autocomplete issues caused by stopping 'change' propagation
Only stop propagation when the window is inactive, and don't fire the
synthetic event on blur. Does the same thing as efd7ec6 was intended to
do, but in a less heavy-handed way.

Fixes #3734
2024-02-22 16:39:20 -05:00
Abe Jellinek
efd7ec6dc2 Fix title/abstract saving when window becomes inactive
We weren't stopping 'change' from propagating upwards when the change hadn't
actually been committed yet, and the pane-header and abstract-box CEs
listen to that event instead of 'blur'.
2024-02-22 09:56:28 -05:00
abaevbog
26fd57398c
do not focus contextPane after it's opened (#3728)
When contextPane is toggled open, keep the focused element unchanged

Fixes: #3716
2024-02-22 02:36:51 -05:00
Abe Jellinek
b15fb36f1b editable-text: Don't put 'null'/'undefined' in the field
In case something deleted dataset.initialValue after focus and before we
received this keypress.

Addresses #3725. Might still want to rework that listener, but this
change made sense regardless, since the same kind of race condition
could be triggered elsewhere.
2024-02-21 16:07:02 -05:00
Abe Jellinek
07296b4506 Merge: Count last word when calculating most frequent words
Not that it really matters.
2024-02-21 15:12:14 -05:00
Abe Jellinek
69d9b01b6e Preferences: Exclude HTML hidden="" elements from search 2024-02-21 14:58:49 -05:00
Abe Jellinek
71a85e4d06 Preferences: Delete menulist observer after disconnecting 2024-02-21 12:47:03 -05:00
Martynas Bagdonas
38a42d3c91 Properly trigger shifted annotation sync after deleting PDF pages 2024-02-21 15:04:24 +02:00
Abe Jellinek
64b8c7b250
SingleFile actor: Skip cross-origin frames to fix error (#3721) 2024-02-21 06:43:45 -05:00
Abe Jellinek
130a72af1b
Fix empty Quick Copy locale dropdown (without a freeze) (#3720) 2024-02-21 06:42:59 -05:00
Martynas Bagdonas
2918e5d1a4 Don't use sortable property when inserting a citation inside note editor
Fixes #3723
2024-02-21 09:12:49 +02:00
Abe Jellinek
1f599283df
Fix indexing files with text content types that Firefox won't display (#3708) 2024-02-19 05:11:16 -05:00
Tom Najdek
24cb38cfc8
Fix attachment column icon flickering upon selection (#3695) 2024-02-19 05:04:28 -05:00
abaevbog
826774b1f7
keyboard navigation for tag selector (#3615)
- Tab from the tags list or shift-tab from the tags filter field
focuses the first non-disabled tag. If there are none, the tags are
skipped and the focus moves directly to the input field or the tags list.
- Arrow Right/Left move focus between tags skipping over disabled tags
- Space/Enter clicks on the selected tag
- Space/Enter click on the search button when focused
2024-02-19 04:57:03 -05:00
Tom Najdek
1b751d675b
Trim spaces from values in getFileBaseNameFromItem (#3711) 2024-02-19 04:43:19 -05:00
abaevbog
61d3c5c85c
revision of focus management through the reader (#3687)
- brought back escape behavior that just focuses the reader whenever
a reader tab is opened, wherever it comes from (unless it's from an
element that is .open - like an item type menu, in which case just
let it get closed)
- removed moving focus from contextPane title to sync button on shift-tab
- using new reader methods onIframeTab, onToolbarShiftTab to move focus
to the contextPane on tab from reader iframe or to the sync button
on shift-tab from the toolbar

So now, the focus path is: tab bar -> tabs menu -> sync button -> reader
toolbar -> reader sidebar -> reader scrollable area -> contextPane title
(if visible) or tab bar
2024-02-19 04:03:00 -05:00
windingwind
294835b995
Fix csl editor style in dark theme (#3702) 2024-02-19 03:35:57 -05:00
Dan Stillman
5940b63908 Revert "Fix empty Quick Copy locale dropdown"
This reverts commit 0dfe276d9b.

Causing a hang when some people mouse over the Export tab:

https://forums.zotero.org/discussion/111956/zotero-7-beta-freezes-in-the-settings-panel
2024-02-19 03:32:53 -05:00
Martynas Bagdonas
009a2ca38a Properly trigger note image attachment sync and display it when finished 2024-02-16 14:38:17 +02:00
Martynas Bagdonas
d47ed5f747 Hide unnecessary menu separators in Tools menu 2024-02-16 12:31:58 +02:00
Tom Najdek
abe8def0f1
Trim leading/trailing space in filename format string. Fix #3701 2024-02-16 10:17:03 +01:00
Adomas Venčkauskas
f548efde15 Citation dialog: Allow citing the same item multiple times
Removed as part of #3544 but it turns out there's good uses for it:
https://forums.zotero.org/discussion/111831/multiple-citations-of-the-same-source

The same item still won't appear multiple times in the Open Documents
section, but you can look for it in your Library or Cited section
2024-02-15 08:47:57 +02:00
Abe Jellinek
fbc82f687d updateLocaleList: Append menuitem to menupopup, not parent menulist
Appending to the menulist sort of worked - the text of the added
menuitem appeared in the menulist label, albeit off to the right -
but the item didn't actually show in the menu and didn't get removed
on subsequent calls.
2024-02-14 16:38:54 -05:00
Abe Jellinek
ba5d34876e Don't fire syncfrompreference when value hasn't changed
Except during initialization. Fixes an infinite loop when the Quick Copy
locale is set to a custom value.
2024-02-14 16:36:22 -05:00
Abe Jellinek
0dfe276d9b Fix empty Quick Copy locale dropdown
Closes #3254
2024-02-14 16:09:06 -05:00
Abe Jellinek
43d9d604a6 Fix blockRemoteResources passed to wrong method
After OOPification of HiddenBrowser.jsm. The constructor accepts
blockRemoteResources, the load() method ignores it.
2024-02-14 11:25:44 -05:00
Adomas Venčkauskas
beb7b51cb3 Adjust the titlebar/menubar xml and styling.
Reasoning:
- Different Linux DEs specify different titlebar button (min, max,
close) locations which we did not and could not support before.
- Previous approach copied from Firefox depended on custom offsets
specified in CSS instead of allowing the browser engine to place
elements

Changes:
- Titlebar and menubar no longer collapsed into each other with a
negative margin, instead just a single flexbox (on macOS the titlebar
is still collapsed into the tab bar)
- Support for -moz-gtk-csd-reversed-placement to correctly place the
titlebar buttons on Linux
- Removed/changed some code copied from Firefox that does not apply or
uses the wrong selectors
- Fixed the display of Linux Unity DE buttons with icons appearing outside
of button borders
- Removed the Z in the titlebar on Linux since only a few DEs use that.
- Aligned the tabbar on Linux and Windows to the left margin of the
window.
2024-02-14 06:24:00 -05:00
Adomas Venčkauskas
34b389d118 Fix the startup missing data directory picker not working 2024-02-14 13:22:41 +02:00
Abe Jellinek
f729172bdd Fix error after setting custom file handler 2024-02-13 13:58:49 -05:00
Abe Jellinek
872e7b2427 Item/attachment box: Prevent default label focus/blur behavior
Since ceb1dd7da3 added a tabindex on
#zotero-view-item, clicking anywhere outside a field in the pane will
blur the active field. That's an improvement, but it conflicted with our
custom label behavior - when an active field's label is clicked, we want
to blur it and keep it blurred, but the default behavior is to re-focus
it on mouseup.

Fix by preventing the default focus behavior on mousedown/click.
2024-02-09 14:38:56 -05:00
Abe Jellinek
6a39980a97 Save Abstract edits when switching items
Since itemPane.js sets mode before item, the editable-text's value would
get reset before save() ran.

Not touching the header since we're replacing that with an item-box
field (which does not have this bug) soon anyway.

Fixes #3679
2024-02-09 12:21:56 -05:00
Adomas Venčkauskas
0aea17581e Citation Dialog: Show selected notes in the Add Note dialog
Closes #3642
2024-02-09 14:24:05 +02:00
Adomas Venčkauskas
d852185950 Citation Dialog: Fix open documents being matched multiple times.
Closes #3690
2024-02-09 14:17:43 +02:00
Abe Jellinek
4a91df1b1d
Add test for SandboxItem#setExtra() (#3572) 2024-02-09 09:34:47 +02:00
Adomas Venčkauskas
90282b3739 Clear item tree pivot after switching collections. Closes #3551
After switching collections and shift-clicking on the item tree
will no longer group-select from the pivot of the previous selection
2024-02-08 15:03:02 +02:00
Bogdan Abaev
527fa5b12f linux: collection highlight on control
On Linux, trigger collection highlighting on Control instead of Alt
to not interfere with the menubar.

Addresses: #3683
2024-02-08 10:07:36 +02:00
Adomas Venčkauskas
88482bd776 Do not register the menu access key handlers multiple times 2024-02-07 17:18:56 +02:00
Bogdan Abaev
fc5aa1a6ba win: no collection highlight if input is focused
So that collections do not randomly get highlighted when one clicks
Ctrl-C/Ctrl-V to copy-paste something in the itemPane
2024-02-06 15:20:43 -05:00
abaevbog
ceb1dd7da3
additions to keyboard nav for toolbar buttons and reader (#3602)
- handle space and enter in zotero pane to always click on toolbarbutton.
It ensures consistent behavior across all components to avoid Enter
triggering click on some buttons but not others.
- address the issue of focus not being able to leave the reader once it
gets there. On Escape, when reader is opened, instead of re-focusing the reader,
focus the selected tab. From there, Enter will focus the reader, and tabbing
allows you to reach the itemPane.
- Tab/Shift-tab moves focus between Sync button and itemPane when
reader is opened
2024-02-06 12:51:06 -05:00
Bogdan Abaev
e69ce9b86c avoid ztabindex overlap when new creator is added
Increated the ztabindex offset for non-creator rows, so that when a new
creator is added but not saved yet, there is no two elements with
the same ztabindex which would break tab-based navigation

Fixes: #3666
2024-02-06 12:44:29 -05:00
Bogdan Abaev
15d5dcaaee itemBox creator names fixes
- Instead of setting default name as the value of the field when a
creator name is empty, set the default names as a placeholder so that
it shows up only when the field is empty.
- Have the creator options show up before the creator is saved so that
the mode can be switches before saving the creator.
- Re-do of capitalizeCreatorName to not break when one of the names is focused.

Fixes: #3610
2024-02-06 12:44:29 -05:00
abaevbog
3a2cd70684
update tab when collection row is updated (#3673)
When saved search, collection or feed is renamed, update the zotero-pane
tab so that it has the new title.

Fixes: #3664
2024-02-06 02:23:09 -05:00
Abe Jellinek
de89e82e75 Make Tags/Related sections functional in note windows
Fixes #3581
2024-02-05 17:11:42 -05:00
Dan Stillman
f29f87ad5b Fix missing "Edit Saved Search" label
Regression from f8108aca45

https://forums.zotero.org/discussion/111486/zotero-7-beta-edit-saved-search-from-right-click-on-a-saved-search-collection
2024-02-04 06:22:50 -05:00
Abe Jellinek
6486c509ad Fix customElements.js error when editing saved search
Fixes #3672
2024-02-02 15:32:55 -05:00
windingwind
3acef799f5
Fix custom elements import (#3639)
Fixes #3600
2024-02-02 04:02:08 -05:00
abaevbog
a74c86d948
collection search tooltiptext and placeholder cleanup (#3632)
Fluent tooltiptext for collection search button and placeholder
for collection search input
2024-02-02 03:58:27 -05:00
abaevbog
4a3a80b4f8
editable-text min/max-lines attributes (#3649)
- min/max-lines attribute on editable-text determines how tall the field
can/has to be
- if max-lines is not specified (or is below 1), the textarea will expand
as much as needed without overflow
- removed hardcoded height and variables from css, substituted them with
usage of these attributes for consistency
- No fields have any max-lines at this point, so all fields will expand as
needed
2024-02-02 03:53:23 -05:00
Abe Jellinek
c10dabcbba Ignore editable-text blurs caused by window becoming inactive
Fixes #3588
2024-02-02 03:39:55 -05:00
Abe Jellinek
6b1940cebb Add generic menu for all unfocused editable-texts 2024-02-02 03:39:55 -05:00
Abe Jellinek
af79e9c405 Ignore base-mapped fields more robustly 2024-02-02 03:39:55 -05:00
Abe Jellinek
b8c1b7c139 Fix DOI View Online/Copy as URL regression
Was opening/copying the bare DOI, not the URL.
2024-02-02 03:39:55 -05:00
Abe Jellinek
fa6e6f9458 Make existing edit context menus more context-aware
- Don't show the default text editing context menu when right-clicking
  an unfocused editable-text
- In item box/header context menus, only show Copy and Paste (plus
  field-specific transform options) when unfocused

Fixes #3619
2024-02-02 03:39:35 -05:00
abaevbog
9823b1199a
no extra arrows from scrollable components on win (#3634)
Somehow `scrollbar-width: thin` removes unnecessary arrows from
editable-text textarea and itemPane on windows

Addresses: #3633
2024-02-02 03:05:59 -05:00
Tom Najdek
41ccbc90a0
Fix missing variable value in import wizard localization. Fix #3471 2024-02-01 15:41:23 +01:00
Tom Najdek
6efbf4c2ec
Fix tab content misaligned in RTL mode. Fix #3658 2024-02-01 15:41:23 +01:00
abaevbog
8bcf1d446a
url/doi/options icon does not occupy space unless hovered (#3631)
url/doi/options do not occupy space unless the row is focused or hovered.
This does not apply to options icons after multiline fields because
it would shrink textarea on hover and shift text in an awkward way.

Fixes: #3612
2024-02-01 04:27:32 -05:00
Martynas Bagdonas
8a9df4a1b3 Move context pane toggle into reader toolbar
Related #3648
2024-02-01 14:49:59 +08:00
Dan Stillman
ebd3d7a988 Fix wrong tab being selected after Reopen Closed Tab
Fixes #3651
2024-02-01 00:55:02 -05:00
Tom Najdek
493c3add8a
Fix a memory leak in file renaming preferences pane (#3654) 2024-02-01 00:44:22 -05:00
Dan Stillman
f8108aca45 Move "Rename Collection" and "Edit Saved Search" to Fluent
Without ellipses

And remove unused "Edit Feed…", which is in zotero.dtd too
2024-02-01 00:42:14 -05:00
Abe Jellinek
a4c09ed701 Trigger inline editing from Rename Collection... 2024-02-01 00:42:14 -05:00
Abe Jellinek
ab5def98a7 Move item type menu CSS override to SCSS 2024-01-31 14:48:59 -05:00
Abe Jellinek
0e251b4975 Scaffold: Fix tests losing defer: true on update 2024-01-31 14:30:34 -05:00
Abe Jellinek
7944253bed Scaffold: Update HiddenBrowser to use object-oriented API
Fixes updating tests.
2024-01-31 14:27:21 -05:00
Abe Jellinek
3f348e3340 Use actual placeholder attribute for editable-texts
As far as I can tell, the Abstract field was the only editable-text
using a placeholder set by Fluent.

https://github.com/zotero/zotero/pull/3632#issuecomment-1919619813
2024-01-31 13:06:57 -05:00
Abe Jellinek
a4c75df182 Don't allow pinning Item Notes and All Notes
Fixes #3626
2024-01-31 12:52:56 -05:00
Abe Jellinek
a23b5310e6 Fix nonfunctional Advanced Search menu item in dialogs 2024-01-30 11:43:56 -05:00
windingwind
1375de4ba2
Fix quick format background (#3638) 2024-01-30 01:58:50 -05:00
Martynas Bagdonas
a12c032ab9 Fix not updating reader "Add to Note" button regression 2024-01-30 09:30:28 +08:00
Martynas Bagdonas
9edfcba9a9 Hide item notes list section in context pane for parentless attachments 2024-01-29 16:06:52 +08:00
abaevbog
e68b9b80ad
opened tabs menu visibility improvements (#3620)
- Added tooltip to display the entire title of the tab on hover
- Ellipsize the text of the tab title to display as much of the last
word as possible

Fixes: #3609
2024-01-29 02:40:09 -05:00
Tom Najdek
41294e0ff7
Fix a bug where first column is clipped if it has fixed or static width (#3605)
Also:

* Fix issues with notes and attachment columns
* Tweak first-column attachment column alignment
2024-01-29 02:37:46 -05:00
Dan Stillman
418ec5cfc0 Move "Print" to zotero.ftl
Follow-up to d606644a78
2024-01-29 02:31:55 -05:00
Martynas Bagdonas
630eccf72f Fix context pane note back button regression
Fixes #3616
2024-01-29 15:18:37 +08:00
Martynas Bagdonas
3a3a81b0ed Add missing "Use Dark Mode for Content" to reader window menu
Fixes #3592
2024-01-29 15:18:37 +08:00
Martynas Bagdonas
d606644a78 Localize "Print" and "Save As" in reader tab/window File menu 2024-01-29 15:18:37 +08:00
Martynas Bagdonas
5eb0ed109b Fix broken Fluent localization in reader window menu 2024-01-29 15:18:37 +08:00
Dan Stillman
0045cd1b7a Fix search bar in classic citation dialog and Related Items dialog
Fixes #3599
2024-01-29 02:13:05 -05:00
Adomas Venčkauskas
452ee3a55b Fix citation dialog open documents not working when a standalone pdf is open
Closes #3621
2024-01-29 09:11:12 +02:00
Abe Jellinek
7f993167b4 Fix regression that broke Date field tooltip
Field inputs are XUL in Z6, HTML in pre-redesign Z7, and XUL again in
post-redesign Z7. We switched to the title attribute for HTML but didn't
switch back to tooltipText when going back to XUL.
2024-01-26 13:40:16 -05:00
Abe Jellinek
00ca99ae86 Item box: Fix Short Title rendering as multiline
Also, rerender editable-text when noWrap changes.
2024-01-26 13:38:29 -05:00
Dan Stillman
1cc5c1ce2e Disable automatic safe mode for now
Until we can figure out why some shutdowns are counting as crashes

https://github.com/zotero/zotero/issues/3196
2024-01-26 07:35:09 -05:00
windingwind
c21c5632c2
Fix attachment row annotation button bug (#3577) 2024-01-26 00:51:27 -05:00
windingwind
63c532398b Fix sidenav default buttons display bug 2024-01-24 23:32:24 -05:00
windingwind
665f812bd1 Fix sidenav button visibilities update bugs 2024-01-24 23:32:24 -05:00
windingwind
7fe01d6c03 Clicking filename label should focus/blur field in attachment box 2024-01-24 23:32:24 -05:00
abaevbog
f990cb3f4b tabs menu updates
- CMD-F will focus the input field
- ArrowLeft/Right keypresses are ignored
- Reset focus index on the focus of the input field
2024-01-24 23:32:24 -05:00
abaevbog
1a82ae5c3b collection filter sizing tweaks
- ensure filter field is hidden if the pane is collapsed
- JS-based max-width setting to prevent overflow outside of collection pane
2024-01-24 23:32:24 -05:00
Abe Jellinek
608b732fbb Open tabs menu: Move margin/padding to SCSS 2024-01-24 23:32:24 -05:00
Abe Jellinek
873c87956c Open tabs menu: Escape regex special characters
So we don't throw an error/match inappropriately when the filter
contains backslashes, periods, pluses, and so on.
2024-01-24 23:32:24 -05:00
Abe Jellinek
a1134255ee Always rerender sidenav, even if item doesn't change
Feeds issue remains.
2024-01-24 23:32:23 -05:00
Abe Jellinek
2b50536775 Tweak method name 2024-01-24 23:32:23 -05:00
Dan Stillman
c2cc5e1935 Separate lines for extension-change confirmation into two strings 2024-01-24 23:32:23 -05:00
windingwind
4f73ea0cfa Fix attachment box rename 2024-01-24 23:32:23 -05:00
Abe Jellinek
3472d6cabe Prevent window overflow in Standard mode 2024-01-24 23:32:23 -05:00
Dan Stillman
613a907f3e Change pref from reader.useDarkModeForContent to reader.contentDarkMode 2024-01-24 23:32:23 -05:00
abaevbog
620b35ab78 minor focus tweaks
- after an item is added via "Add item by identifier" panel, end
focus to that item in itemTree.
- restored default behavior when the focus remains visible around an
element when all menupopups open, except for the item type menu in itemBox.
- opening item type menu will still hide the focus-ring
2024-01-24 23:32:23 -05:00
abaevbog
ed8e3f142b itempane keyboard navigation
- right/left arrows on section header expand/collapse the sections
- space/enter on section header toggle section collapsed/expanded
- tab from the header goes through the header's buttons and then
tabs into the section if that's opened
- arrow up/down on the header jumps to the previous/next header
- space/enter on clickable elements simulate a click
- if there is a pinned section, tab from the title will focus its header
2024-01-24 23:32:23 -05:00
windingwind
3bdcf34a89 Fix stacked mode layout when toggle item pane 2024-01-24 23:32:23 -05:00
windingwind
7f58873e0b Fix item pane size when switching to note in stacked mode 2024-01-24 23:32:23 -05:00
Dan Stillman
1d8baa635a New app icons 2024-01-24 23:32:22 -05:00
Tom Najdek
ccfc3127ba Tweak padding in the tag selector list 2024-01-24 23:32:22 -05:00
Dan Stillman
61cca0fc69 Use Fluent instead of DTD for "Use Dark Mode for Content" string 2024-01-24 23:32:22 -05:00
abaevbog
11fc1ebd8e remove "Go to this item online" tooltip from url field in itembox
Also:

- set the .tooltiptext for options button in fluent file, so that text
shows up on hover
- added tooltiptext to creator + and - buttons
2024-01-24 23:32:22 -05:00
Abe Jellinek
b8f2aaafa9 Attachment preview: Fix cut-off snapshots
Also:
- Prevent selecting any text within the snapshot
2024-01-24 23:32:22 -05:00
Abe Jellinek
832a6f3eff Fix right-click -> Merge Items... 2024-01-24 23:32:22 -05:00
windingwind
0cd7a52dc0 Fix attachment preview retry and error catch 2024-01-24 23:32:21 -05:00
windingwind
1c343ee820 Fix viewItem unnecessary scroll 2024-01-24 23:32:21 -05:00
windingwind
86947d7154 Remove attachment-preview-box 2024-01-24 23:32:21 -05:00
Abe Jellinek
3ac8f803c9 Fix duplicate creator context menus, extract utility function 2024-01-24 23:32:21 -05:00
Abe Jellinek
f468245caf Attachments box: Don't set this._item to non-regular item
Fixes occasional errors due to `getAttachments()` being called on a
non-regular item in `updateCount()`.
2024-01-24 23:32:21 -05:00
Martynas Bagdonas
c208325aeb Add menu option to toggle dark mode for reader content 2024-01-24 23:32:21 -05:00
Abe Jellinek
c549a96834 Restore notes-box add button 2024-01-24 23:32:21 -05:00
Tom Najdek
03be35426c Couple of small fixes to the tag selector
* Add bottom padding
* Increase padding for macOS 0-width scrollbars
2024-01-24 23:32:21 -05:00
Dan Stillman
f084b8c8ad Move density options to separate submenu in View 2024-01-24 23:32:20 -05:00
abaevbog
4a096665a0 refresh collectionTree rowMap after row is added
It prevents the trash row from getting wrong offset and overlapping
with the row above it
2024-01-24 23:32:20 -05:00
Abe Jellinek
be3d7c95f9 Match Reset Sync with "Sync Reset Options"
Only adding warning2 because that's really the only relevant, searchable part of the warning.
2024-01-24 23:32:20 -05:00
Abe Jellinek
05747f050a Fix undefined errors in feed settings window 2024-01-24 23:32:19 -05:00
windingwind
982289b484 Fix dialog background 2024-01-24 23:32:19 -05:00
Tom Najdek
2f9a12c2da Improve "Run JavaScript" dialog 2024-01-24 23:32:19 -05:00
Tom Najdek
a54ed665bf Improve style editor dialog 2024-01-24 23:32:19 -05:00
Tom Najdek
c514f92f9b Update csl editor theme based on system color scheme 2024-01-24 23:32:19 -05:00
Tom Najdek
d99ad84d4c Improve long tag fixer dialog 2024-01-24 23:32:19 -05:00
Tom Najdek
f0de6d0d57 Tweak spacing in select items dialog 2024-01-24 23:32:19 -05:00
Tom Najdek
701c76aa3f Redesign RTF Scan wizard 2024-01-24 23:32:19 -05:00
Tom Najdek
b30e975379 Inject custom styles into <wizard>
<wizard> is a custom element built-in in FF. This commit monkey-patches
attachShadow to inject custom styles into the shadow root of <wizard>.
2024-01-24 23:32:19 -05:00
Abe Jellinek
37d2b41778 Make clicky item icons match line height 2024-01-24 23:32:18 -05:00
Abe Jellinek
1d662b9fef Preferences: Fix and improve search 2024-01-24 23:32:18 -05:00
Abe Jellinek
fbbe9625fc Focus new tag when popup is opened 2024-01-24 23:32:18 -05:00
Abe Jellinek
6948252e32 Prevent collapsing / hide twisty in tags popup 2024-01-24 23:32:18 -05:00
Abe Jellinek
8e3abd8706 Add padding to reader tags popup
And move styles to SCSS.
2024-01-24 23:32:18 -05:00
Abe Jellinek
482e436203 Import SCSS in reader windows
Fixes unstyled tags popup.
2024-01-24 23:32:18 -05:00
Abe Jellinek
b391b6ca21 Tags box: Fix tag being saved every time autocomplete popup hides 2024-01-24 23:32:18 -05:00
Dan Stillman
f2bf40a314 Don't default existing users to Compact 2024-01-24 23:32:18 -05:00
Abe Jellinek
99b0411857 Return created collection from newCollection()
Regression from fd0664bfb06409118ecaff73e064ab9c3103d823
2024-01-24 23:32:17 -05:00
Abe Jellinek
57a1214eaa Remove reader pointerdown listener on close
Avoids a memory leak.
2024-01-24 23:32:17 -05:00
Abe Jellinek
2624770cea Remove debug from collapsible-section 2024-01-24 23:32:17 -05:00
Abe Jellinek
49fe2b98d9 Restore tag autocomplete popup
Regression from 275ea6f because of a duplicate element ID. Now we only create
one popup, even if there are multiple tags-boxes.
2024-01-24 23:32:17 -05:00
windingwind
b2ce3d4a5c Fix sidenav button default status 2024-01-24 23:32:17 -05:00
windingwind
365e97ba1e Fix quick search does not re-run when changing mode 2024-01-24 23:32:17 -05:00
Dan Stillman
0c089efd8a More attachment box fixes
- Only try to show preview or check file existence for file attachments
- Use fileExists() for file check
- Show Accessed for linked-URL attachments
2024-01-24 23:32:17 -05:00
windingwind
61a5704dd4 Fix attachment box bugs 2024-01-24 23:32:17 -05:00
Dan Stillman
b34d0d2acc Fix regression in Zotero.FullText.canReindex() 2024-01-24 23:32:16 -05:00
Dan Stillman
3b9afcc500 Add Zotero.FullText.canIndex()
Currently identical to canReindex(), but in theory attachments aren't
supposed to be reindexable if they're already fully indexed
2024-01-24 23:32:16 -05:00
Bogdan Abaev
3338b4b285 new item focus handling tweaks
- properly re-focus previously focused item type menu in itemBox
- fix strange behavior of re-emerging item type menu popup caused by
itemBox.focusFirstField
- force the focus-ring to be around the itemType menu
2024-01-24 23:32:16 -05:00
Bogdan Abaev
b6d5a52417 additional focus management for popups
When a menupopup is opened, the active element does not change, so
their focus-ring will be hidden until the menupopup closes for it to be
less distracting.

When a panel popup is opened, the focus will be moved inside
of the panel, so we keep track of whichever element was previously
focused, and re-focus it when the panel goes away.

Minor reorganization of focus-ring mixin to use variables instead
of parameters to make hiding of focus-ring easier.
2024-01-24 23:32:16 -05:00
Dan Stillman
1427e3e324 Open item pane if closed on New Item 2024-01-24 23:32:16 -05:00
Bogdan Abaev
8e4fd75f1d passing newItem tests 2024-01-24 23:32:16 -05:00
Bogdan Abaev
99ab42a674 Prevent trash row from receiving focus on Enter in filter box
Prevent trash/duplicated/unfiled/etc. rows from getting focused on Enter
if it is the currently selected collection row that technically
passes the filter and Enter is pressed.
2024-01-24 23:32:16 -05:00
Bogdan Abaev
2c97a7a03e avoid blinking of focused collection row on escape
Make sure that on escape, the focus is moved to collectionTree strictly
once all filtered rows are rendered. Minor refactoring to achieve
it, since setFilter is async.
2024-01-24 23:32:16 -05:00
Bogdan Abaev
0f0badea27 restore collection scroll position after filter
Before filtering starts, save the selected row, scroll position, and
which rows were collapsed before filering, and restore them once the
filtering is over if a row was focused during filtering.
2024-01-24 23:32:16 -05:00
yexingsha
6e7c80d97b changed all font-weight: bold/590 to 600 2024-01-24 23:32:15 -05:00
Abe Jellinek
ee5106939c Potentially fix Linux popup positioning issue 2024-01-24 23:32:15 -05:00
windingwind
f039124312 Use html label in info table 2024-01-24 23:32:15 -05:00
windingwind
d00fc7ca22 Fix attachment box info table layout 2024-01-24 23:32:15 -05:00
windingwind
3603254d35 Fix attachment row rendering bug with web attachment 2024-01-24 23:32:15 -05:00
windingwind
607f9814a0 Fix uncaught errors on item.save() coming from attachmentBox 2024-01-24 23:32:15 -05:00
windingwind
6af4605bd0 Implement attachment preview
- Implement attachment preview
- Implement attachment-box redesign
- Make filename editable
- Use new reindex icon
- Update attachment note layout
- Fix reader.js eslint errors
- Add fallback attachment icon and use redesign
- Use attachment preview for regular items
- Fix pinned pane not exists error
- Double click preview to open to page
- Fix itemPane pin bug
- Preload preview iframe
- Fix item pane scroll
- Add media preview support
- Fix item pane scroll bar on macos
- Fix reader sidebar with standalone attachment
- Fix attributeChangedCallback
- Add attachmentBox _updateAttachmentIDs
- Make attachment notes readonly and simplify note window script
- Implement convert attachment note to new note
- Support preview dragging
- Annotations box redesign
- Support custom buttons in the collapsible-section
- Add preview toggle button
- Fix collapsible section attribute listener
- Make attachment box notify sync to fix errors in test
2024-01-24 23:32:15 -05:00
windingwind
2a5d713f98 Move drag handler into utilities_internal 2024-01-24 23:32:14 -05:00
Abe Jellinek
9a0a15abbe Don't show string "PLACEHOLDER" in menu while localization runs
Ideally we should cache these/not recreate the menuitems every time, or
something like that, so that localization pop-in doesn't happen at all. But a
brief flash of an empty menuitem is better than a brief flash of placeholder
text.
2024-01-24 23:32:14 -05:00
Abe Jellinek
f44cc548f9 Locate menu: Get selected item(s) from current tab 2024-01-24 23:32:14 -05:00
windingwind
424afb9af6 Fix splitter style 2024-01-24 23:32:14 -05:00
yexingsha
cf241447ab fixed some spacing in collectionTree and itemTree 2024-01-24 23:32:14 -05:00
Bogdan Abaev
30b4577283 pinned panes for reader contextPane
When tab selection changes, scroll to the pinned pane if there is one.
2024-01-24 23:32:14 -05:00
Bogdan Abaev
6ac6c2582d do not reopen collapsed itemPane on item change
To preserve the proper scroll behavior to top pane/pinned pane on item
change, remember which pane needs to be scrolled to when itemPane is
collapsed, and scroll to it when the itemPane is expanded.
2024-01-24 23:32:14 -05:00
Abe Jellinek
2963b86176 Bidi: Allow switching text direction & add control for bidi pref 2024-01-24 23:32:14 -05:00
Abe Jellinek
6836bde339 Fix RTL layout issues in item tree 2024-01-24 23:32:13 -05:00
Abe Jellinek
f4d3ef94e7 New Collection dialog: Apply macOS non-native menu fixes 2024-01-24 23:32:13 -05:00
Abe Jellinek
2ab1bf6e11 RTL: Put creator commas on left, use locale character 2024-01-24 23:32:13 -05:00
Abe Jellinek
4490da93ca RTL: Flip Locate icon (by making it a zotero-tb-button) 2024-01-24 23:32:13 -05:00
Abe Jellinek
f938445271 Prevent error when itemsView hasn't been initialized 2024-01-24 23:32:12 -05:00
Abe Jellinek
64b8068504 Focus item tree on Escape in empty Quick Search textbox 2024-01-24 23:32:12 -05:00
Dan Stillman
5167ac2d6f Restore Dev/Troubleshooting Mode warning after redesign
Show label after tabs menu, and adjust Troubleshooting Mode color for
dark mode
2024-01-24 23:32:12 -05:00
Abe Jellinek
0f4a9e1482 Prevent dblclick inside collection name input from reactivating row 2024-01-24 23:32:12 -05:00
Abe Jellinek
d44b869420 Implement new New Collection dialog with parent menu 2024-01-24 23:32:12 -05:00
abaevbog
5b1fd4b628 refresh row map after collection deletion
It refreshes customRowHeights which is used by windowed list to
calculate the right offsets.
Without this, customRowHeights remains same as before deletion, so windowed
list picks the offset based on stale data, which makes it use smaller
offset that makes headers overlap with other rows.
2024-01-24 23:32:12 -05:00
abaevbog
741ed9b98c minor collection search improvements
- always scroll to selected row on empty filter
- fixed a bug that would interfere with focusing on the selected collection
on Enter if there are capital letters in the filter field
2024-01-24 23:32:11 -05:00
abaevbog
7d68f75d03 improve itemBox creator names visibility
- do not display creator buttons until hovered
- make last name have flex-grow priority over first name
- removed inline margins of rows
- removed extra padding from icons

This makes it more likely that the creator name will be displayed
fully without ellipsis until it is hovered. When the buttons are
displayed on focus or hover, the last name tries to remain
unellipsized as long as the first name is still visible after buttons
appear. If the first name is too short, both names will be ellipsized.
2024-01-24 23:32:11 -05:00
Abe Jellinek
75b1747d1d Remove existing <h1>s from built-in prefpanes 2024-01-24 23:32:11 -05:00
Abe Jellinek
784f877fbd Add automatic <h1> to prefpanes 2024-01-24 23:32:11 -05:00
abaevbog
15cfdb8317 use textContent instead of innerText in table cell render 2024-01-24 23:32:11 -05:00
Dan Stillman
8888fa6dcb Move Interface prefs to top of General pane
Now that light/dark mode is there, it should be prominent.
2024-01-24 23:32:11 -05:00
windingwind
318de52dc5 Fix ESLint in utilities_internal.js 2024-01-24 23:32:10 -05:00
Tom Najdek
7df21ed14c Check for scrollbar presence when calculating table widths 2024-01-24 23:32:10 -05:00
Tom Najdek
a9eb79a45b Extend hover/drag color to the edges of the items header 2024-01-24 23:32:10 -05:00
abaevbog
d8a00610da added library tab to tabs menu, minor refactoring
- library tab appears in the tabs menu without the close button
and no drag functionality
- minor refactoring to simplify how the tabs icons are fetched for
items with item.getItemTypeIconName()
- added focus-ring to tabs and filter field via @focus-ring mixin
so that the focus outline looks the same for the input field and buttons
- removed default margin from the <description> component of the tab
titles that moved titles up by a bit
2024-01-24 23:32:10 -05:00
abaevbog
7d1f58ce5e fixed to keyboard tab navigation regressions
- make sure the visible zotero-pane tab is selected to focus on
- make sure lastFocusedElement is not set to be another tab or
<window> to not move focus on them when Enter is pressed on zotero-pane
tab
- refocus the lastFocusedElement from zoteroPane after a timeout
to make sure focus does not stay on the actual tab after mouse click
- save lastFocusedElement before closing and reopening and unloaded reader
tab so that if we move from zoteroPane to a reader tab that will be loaded
and then go back, the orignially focused element is refocused
2024-01-24 23:32:10 -05:00
abaevbog
32bfc267a7 itembox value fields and editable-text tweaks
- fixed creator names text selection glitch (hide the comma instead
of not displaying it + removed redundant value update that's no longer
needed)
- set selection direction in editableText on tab to not scroll to the
end of input
- added autocomplete to observedAttributes of editable-text to
properly add autocomplete even if autocomplete params are set after
the element has been rendered (which is needed for creator names). This
fixes wrong Esc behavior that erases autocomplete fields instead of
resetting to previous value.
- fixed creator names autocomplete and type switch regression after
the comma was removed
2024-01-24 23:32:10 -05:00
windingwind
56cef1d504 Fix advancedSearch menu 2024-01-24 23:32:10 -05:00
Abe Jellinek
90b3c2206b Animate Abstract open completely, simplify
(And remove the unused 'toggle' event.)
2024-01-24 23:32:10 -05:00
Abe Jellinek
a9d30b7e8a Fix static height remaining after _runWithTransitionsDisabled() 2024-01-24 23:32:10 -05:00
abaevbog
8c0116d1db tabs menu update and minor refactoring
- tabs menu button is disabled when no reader tabs are opened
- tabs menu popup will be hidden if all tabs are closed
- keypress event handling moved from tabBar.jsx to zoteroPane.js
because all other keyboard navigation events are handled there
and it already has the functionality to skip disabled or hidden components
(e.g. tabs menu button, sync error)
- minor tweaks to tests to wait for collection search bar to hide
to get keyboard navigation tests passing
2024-01-24 23:32:01 -05:00
Abe Jellinek
a2e8294389 Add highlight to show whether notes or item pane is active 2024-01-24 23:32:00 -05:00
Tom Najdek
bdc5f71990 Fix unselectable tree item elements
The previous workaround to ensure the twisty animation plays caused an issue
where, in some cases, tree item entries became unselectable.

Instead of skipping the rendering of the entire row (when it has been marked as
just toggled), we are now forcing the toggle animation to play after the row has
been re-rendered.

Additionally, one case where the just-toggled state wasn't cleared was fixed.
2024-01-24 23:32:00 -05:00
Abe Jellinek
691e5d8cc1 Tags box: Fix multiline editing after editable-text changes 2024-01-24 23:32:00 -05:00
Abe Jellinek
fca87eff9c Tags box: Add new tag before editor when Enter is pressed
Previously, when you clicked the Add button, typed a tag, and pressed Enter, the
new tag would be added *after* the now-empty editor field, putting the editor at
the top rather than the bottom.
2024-01-24 23:32:00 -05:00
Abe Jellinek
ccdd6c08ba Libraries & Collections: Add sibling after *all* children
Not only direct children
2024-01-24 23:31:53 -05:00
Abe Jellinek
f0c9e42a8e Show menu when adding from attachments-box 2024-01-24 23:31:53 -05:00
Abe Jellinek
9a07c8cb2e Prevent error when switching from reader to library 2024-01-24 23:31:52 -05:00
Abe Jellinek
9892601153 Update tags-box count when empty row is removed 2024-01-24 23:31:52 -05:00
Abe Jellinek
d62c9e217b Don't show sidenav Expand/Collapse button in library view 2024-01-24 23:31:52 -05:00
Dan Stillman
0facc521b2 Restore menus for attachment/note toolbar buttons and update File menu
We previously switched to just Add File and New Note buttons, but people
are going to want to create child attachments/notes via the toolbar.
This adds menus for those two buttons with clearer wording.

Also:

- Update the File menu with options that correspond to each of the four
  items pane toolbar buttons (including a new menu option for Add by
  Identifier)
- Update the order and wording of the Add Attachment submenu in the
  items list context menu
- Remove File menu options from the reader view that were added
  accidentally during the toolbar redesign
2024-01-24 23:31:52 -05:00
Dan Stillman
b15313fc3e Fix "Manage Attachments" menu being disabled incorrectly
We were originally going to put it in the File menu, and its disabled
state was only being updated when the File menu was opened after
selecting an item instead of the Tools menu. But we shouldn't actually
disable it anyway, only its contents (which we're doing elsewhere), so
just take this out.
2024-01-24 23:31:52 -05:00
windingwind
1b9f7424eb Fix itemPane.js eslint errors 2024-01-24 23:31:52 -05:00
Bogdan Abaev
13de06cd52 itemBox redesign
- Table structure rewrite to use grid layout instead
of the <table> component so that screen readers can see the content
- Added icons to mirror right-click actions
- Moved creator actions to the options menu
- Drag-drop to reorder creators
- Using editable-text instead of clicky component
- Consolidated autocomplete logic in one function
- Added @focus-ring to all components of the itemBox
- Fields are focusable and navigatable via keyboard in non-edit modes
- General refactoring to consolidate stylesheets across platforms
and remove code that's not more used (mainly related to handling old
clicky text component).
- Retractions panel background set for --material-background instead
of light pink in dark mode.
2024-01-24 23:31:52 -05:00
Bogdan Abaev
553d1f6b3c editable-text updates
- Added nowrap attribute to not add the stretching aspect
of the editable-text and to not have any text wrapping. To be used in cases when
the input is a single line and it's width is stretched with flexbox, for
example tags or itemBox value fields.
- Added 'tight' attribute to set lower padding values on editable-text.
To be applied on fields that are not as prominent as abstract or header
as it makes the actual editable-text component smaller.
- Minor style changes to not shift layout on focus on windows (using
transparent border instead of 0 margin).
- No overflow of textarea to avoid longer-than-needed textareas on
windows.
- Keep track if the component was focused on via mouse click or not.
If the focus happened without prior mouse click, select all text.
- Reset cursor and selection on blur.
- Make sure the .input is always re-added if it disappears after drag-drop.
- Added sizeToContent function to set max-width based on the width
of the input.
- Allow the browser to break up words more freely with overflow-wrap: anywhere
to avoid stretching the itemBox with extra long header without spaces.

-  Apply 'nowrap' and 'tight' to tags so that a long tag does not stretch
the itemBox or make the editable-text extra tall.
2024-01-24 23:31:52 -05:00
Abe Jellinek
527c30b8c1 Initial implementation of Libraries and Collections box 2024-01-24 23:31:51 -05:00
windingwind
a3dec4be45 Fix Scaffold for redesign 2024-01-24 23:31:51 -05:00
windingwind
b649a1a953 Fix context pane return button and background
* Fix context pane return button and background
* Remove unused code
* Fix tab notes container background
* Fix context pane sections background
2024-01-24 23:31:51 -05:00
abaevbog
133fb3ad23 improve collection search filter expansion
- Speed up transition to 0.2s
- Focus once the transition is fully done
- The actual input field is hidden and the button is displayed 50 milliseconds
after the field starts shrinking to not have the magnifying glass
appear to the right of the input field right before the input is
hidden.
2024-01-24 23:31:51 -05:00
Abe Jellinek
583c6328a0 Unify context pane into new item pane/sidenav design 2024-01-24 23:31:51 -05:00
windingwind
f9a2f2f3e0 Fix Linux UI bugs 2024-01-24 23:31:51 -05:00
abaevbog
fb26921e11 Opened tabs menu with a search bar
- Matching substrings from tab's title are bolded.
- Drag-and-drop functionality to reorder tabs.
- ArrowUp/ArrowDown navigate the tab's titles. Tab/Shift-Tab move
across both titles and close buttons. Enter from filter field focuses
the first tab's title. Home/PageUp focuses the filter field. End/PageDown
focuses the last tab's title. ArrowUp/ArrowDown from the filter focus
the last/first tab's title respectively. ArrowUp from the first tab or
ArrowDown from the last tab focus the filter.
2024-01-24 23:31:51 -05:00
windingwind
843d23bbd2 Preferences redesign 2024-01-24 23:31:51 -05:00
windingwind
c6505d3e39 Fix submenu animation 2024-01-24 23:31:51 -05:00
Abe Jellinek
0b81fef457 Show sidenav in feeds 2024-01-24 23:31:51 -05:00
windingwind
1ce70262e1 Fix splitter theme 2024-01-24 23:31:50 -05:00
windingwind
91ec79401d Add window inactive opacity to toolbar and tabs 2024-01-24 23:31:50 -05:00
Dan Stillman
16f66227bd Tweak padding for test-build warning 2024-01-24 23:31:50 -05:00
windingwind
b18a47b0d2 Remove stop sync button 2024-01-24 23:31:50 -05:00
Tom Najdek
df80c7573a Animate chevron when opening collection/item 2024-01-24 23:31:50 -05:00
windingwind
db5863fa0a Use redesign loading icon for sync spinner 2024-01-24 23:31:50 -05:00
Dan Stillman
c8c3856214 Adjust font-size increments
- Align with integer px values
- Add more granular resizing for common sizes
- Allow sizes smaller than the default (now 13px)
2024-01-24 23:31:49 -05:00
windingwind
a8016b1b2f Fix MacOS non-native checkbox menu options should be indented even if no checkbox 2024-01-24 23:31:46 -05:00
windingwind
687a6c5091 Fix exiting a submenu flashes the entire menu closed 2024-01-24 04:03:40 -05:00
windingwind
f5f475f738 Fix closing and reopening a *native* menu too quickly causes it to be closed again 2024-01-24 04:03:40 -05:00