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.theme import get_color
|
||||||
from book_list.top_bar import create_top_bar
|
from book_list.top_bar import create_top_bar
|
||||||
from complete import create_search_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 gettext import gettext as _, ngettext
|
||||||
from modals import error_dialog
|
from modals import error_dialog
|
||||||
from read_book.globals import current_book, ui_operations
|
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(_('Whole words'), value='word', selected=mode=='word'),
|
||||||
E.option(_('Regex'), value='regex', selected=mode=='regex'),
|
E.option(_('Regex'), value='regex', selected=mode=='regex'),
|
||||||
onchange=def(event):
|
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.div('\xa0\xa0'),
|
||||||
E.label(E.input(
|
E.label(E.input(
|
||||||
type='checkbox', name='case_sensitive', checked=bool(sd.get('book_search_case_sensitive'))),
|
type='checkbox', name='case_sensitive', checked=bool(sd.get('book_search_case_sensitive'))),
|
||||||
onchange=def(event):
|
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'),
|
, _('Case sensitive'),
|
||||||
),
|
),
|
||||||
E.div('\xa0\xa0'),
|
E.div('\xa0\xa0'),
|
||||||
@ -199,11 +199,10 @@ class SearchOverlay:
|
|||||||
c = self.results_container
|
c = self.results_container
|
||||||
group = c.querySelector(f'[data-toc-node-id="{toc_node_id}"]')
|
group = c.querySelector(f'[data-toc-node-id="{toc_node_id}"]')
|
||||||
if not group:
|
if not group:
|
||||||
title = toc_node?.title or _('Unknown')
|
|
||||||
group = E.div(
|
group = E.div(
|
||||||
data_toc_node_id=toc_node_id + '',
|
data_toc_node_id=toc_node_id + '',
|
||||||
data_spine_index=result.spine_idx + '',
|
data_spine_index=result.spine_idx + '',
|
||||||
E.div(title, style='font-style: italic'),
|
E.div(toc_node?.title or _('Unknown')),
|
||||||
E.ul()
|
E.ul()
|
||||||
)
|
)
|
||||||
appended = False
|
appended = False
|
||||||
@ -289,4 +288,15 @@ class SearchOverlay:
|
|||||||
self.queue_search(q, current_book(), self.view.currently_showing.name)
|
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
|
main = worker_main
|
||||||
|
Loading…
x
Reference in New Issue
Block a user