Repository navigation
feat(reader): the places that refer to a line, and the sources, as search results - #733
Merged
Merged
Conversation
…arch results A new "מראי מקומות" pane lists the places that refer to the selected line: its REFERENCE and מסורת הש״ס links in both directions and its עין משפט (Rambam, Tur, Shulchan Aruch...), until now hidden. The "מקור" pane is drawn by the same view. Both read as the search's results: a book at a time, its first passage cut around its quote of the line, its other places behind "עוד N מקומות", filter tabs by kind and category. A click opens the book there. - One view (LinePlacesView) and one loader for both panes, on SeforimLibrary's getReferencesForLines / getSourcesForLines; the legacy sources paging, the per-line "selected sources" state and the SOURCE branches of LineTargumView are removed. - The result row, title, snippet, filter tabs and links are shared with the search page (ResultRow, ResultTitle, SnippetText, FilterTabs). - The results follow the text zoom in the panes and the search list (LocalResultTextScale); tabs and status lines keep their size. - A daf or perek heading lists the places of its whole section, as the commentaries do; the rail buttons are enabled by the same lines. - The quote of each passage is found only for the passages on screen, off the UI thread: Bereshit chapter 1 loads in about 20 ms. - Panes docked beside the text sit side by side, in the rail's order. - showReferences is appended at the end of the persisted tab state (ProtoBuf field numbers); the now unused sources selections stay for the same reason. - SeforimLibrary bumped to the master with #138. Signed-off-by: Elie Gambache <elyahou.hadass@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
A new מראי מקומות pane lists the places that refer to the selected line: its REFERENCE and מסורת הש״ס links (both directions) and its עין משפט (Rambam, Tur, Shulchan Aruch…). None of these links were shown until now. The מקור pane is now drawn by the same view.
Both panes read like the search results:
Bereshit 1:1 has 164 places in 38 books: they become 38 cards.
Details
LinePlacesView,features/bookcontent/references) for both panes, on SeforimLibrary's newgetReferencesForLines/getSourcesForLines(feat(dao): load a line's cross-references and sources with their books SeforimLibrary#138, submodule bumped).ResultRow,ResultTitle,SnippetText,FilterTabsare extracted fromSearchResultScreenand used by both.LocalResultTextScale); tabs and status lines keep their size. A wide pane under the text lays its books out in columns (fewer when zoomed in).LineTargumView(about 400 lines).showReferencesis appended at the end of the persisted tab state (ProtoBuf field numbers); the now unused sources selections are kept for the same reason.Testing
LineReferencesTest); the sources tests adapted.:SeforimApp:jvmTest: 1236 tests, 1 failure,WidgetSizesScreenshotTest, which also fails on master.detektpasses;ktlintCheckreports only the import order inE2eQuoteLinksScenario.kt, also failing on master.