-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Search floating mode #11510
Search floating mode #11510
Conversation
On the first glimpse looks good, I am just not sure if the effect of union/intersection is kept : https://docs.jabref.org/finding-sorting-and-cleaning-entries/groups#display-union-or-intersection-of-groups |
@AEgit will be happy to hear that we are bringin back the floating mode! |
Left, right arrows
Yes, still working |
@ThiloteE, @ryan-carpenter, @AEgit, could you test the build from this PR and provide your feedback? |
JabRef 5.16-PullRequest11510.31--2024-07-17--9fef618 Wow, as @Siedlerchr said, I have long been waiting for the comeback of the floating mode ^^ I don't have much time for testing these days, but might have more time over the weekend. Based on first observations this comes close to what old JabRef 3.8.2 did, in fact it adds functionality that was previously not present. Anyway, awesome to see this feature re-introduced to JabRef! With that, I might be able to switch from good old JabRef 3.8.2 to the new JabRef for my actual work. |
Don't forget to make a backup of your data. 😁 |
Thanks for the quick reply and your feedback. I managed to install the old version for comparison. I found there is no difference between the old version and this PR when using the "filter search" toggle. The only difference between the two versions is the label showing the number of search results. In this PR, the number shown represents entries that match both the group and search query. The "filter groups" toggle is an addition not present in the old version. In the old version, when you select a group, you still see all entries whether in float or filter mode, without the option to only show entries matching the selected group. So, if you prefer the old behavior, you only need to toggle on/off "filter search" and disable "filter groups."
I tried to compare search performance before and after this PR with a larger library and found no difference. (This PR should improve performance when multiple libraries are opened). |
4f0d25a
to
da05a82
Compare
src/main/java/org/jabref/gui/maintable/BibEntryTableViewModel.java
Outdated
Show resolved
Hide resolved
src/main/java/org/jabref/gui/util/ViewModelTableRowFactory.java
Outdated
Show resolved
Hide resolved
Overall looks good to me, just a question about the updateItem stuff, this looks suspicious to me |
There is an issue in floating mode where adding an entry to the selected group does not update the entry's rank or color. |
We plan to migrate the Easybind repo to JabRef org, but that might take some time to get it pushed to maven central |
JabRef 5.16-PullRequest11510.31--2024-07-17--9fef618 I had a further look at the version - so far, looks good to me. As @LoayGhreeb mentioned, you can recreate the floating mode of the old version if you select the appropriate filter steps (tunring off "Filter by groups" and turning off/on - whatever you prefer - "Filter search results"). I note the following:
Otherwise, though, seems really fine to me so far - very happy again to see this change implemented! |
The build for this PR is no longer available. Please visit https://builds.jabref.org/main/ for the latest build. |
This PR Fixes #9073, Fixes #4237, Fixes #3176.
Improved performance when opening multiple libraries. Previously, updating the search term or selected groups in one library triggered filtering in all open libraries. Now, it only updates the current library. Each table now listens to the library groups/query instead of a global property from the
StateManager
.Reintroduced floating search in the main table, with two new toggles to control which entries are shown:
Added a toggle to invert the selected groups, showing entries that do not match the selected group(s).
Mandatory checks
CHANGELOG.md
described in a way that is understandable for the average user (if applicable)