mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Add some formatting to the search results
This commit is contained in:
parent
550b6776e1
commit
2b34c68901
@ -8,7 +8,7 @@ from book_list.globals import get_session_data
|
||||
from book_list.theme import get_color
|
||||
from book_list.top_bar import create_top_bar
|
||||
from complete import create_search_bar
|
||||
from dom import clear
|
||||
from dom import clear, add_extra_css, build_rule
|
||||
from gettext import gettext as _, ngettext
|
||||
from modals import error_dialog
|
||||
from read_book.globals import current_book, ui_operations
|
||||
@ -94,14 +94,14 @@ class SearchOverlay:
|
||||
E.option(_('Whole words'), value='word', selected=mode=='word'),
|
||||
E.option(_('Regex'), value='regex', selected=mode=='regex'),
|
||||
onchange=def(event):
|
||||
get_session_data().set('book_search_mode', event.target.checked)
|
||||
get_session_data().set('book_search_mode', event.target.value)
|
||||
),
|
||||
),
|
||||
E.div('\xa0\xa0'),
|
||||
E.label(E.input(
|
||||
type='checkbox', name='case_sensitive', checked=bool(sd.get('book_search_case_sensitive'))),
|
||||
onchange=def(event):
|
||||
get_session_data().set('book_search_case_sensitive', event.target.value)
|
||||
get_session_data().set('book_search_case_sensitive', event.target.checked)
|
||||
, _('Case sensitive'),
|
||||
),
|
||||
E.div('\xa0\xa0'),
|
||||
@ -199,11 +199,10 @@ class SearchOverlay:
|
||||
c = self.results_container
|
||||
group = c.querySelector(f'[data-toc-node-id="{toc_node_id}"]')
|
||||
if not group:
|
||||
title = toc_node?.title or _('Unknown')
|
||||
group = E.div(
|
||||
data_toc_node_id=toc_node_id + '',
|
||||
data_spine_index=result.spine_idx + '',
|
||||
E.div(title, style='font-style: italic'),
|
||||
E.div(toc_node?.title or _('Unknown')),
|
||||
E.ul()
|
||||
)
|
||||
appended = False
|
||||
@ -289,4 +288,15 @@ class SearchOverlay:
|
||||
self.queue_search(q, current_book(), self.view.currently_showing.name)
|
||||
|
||||
|
||||
add_extra_css(def():
|
||||
css = ''
|
||||
sel = f'#{SearchOverlay.CONTAINER_ID} '
|
||||
sel += ' div[data-toc-node-id] '
|
||||
css += build_rule(sel, margin='1rem')
|
||||
css += build_rule(sel + ' > div', font_style='italic', font_weight='bold', cursor='pointer')
|
||||
css += build_rule(sel + ' li', list_style_type='none', margin='1rem', margin_right='0')
|
||||
return css
|
||||
)
|
||||
|
||||
|
||||
main = worker_main
|
||||
|
Loading…
x
Reference in New Issue
Block a user