mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Book details panel: De-emphasize titles making the actual data stand out more. Fixes #2029723 [[Enhancement] Suggestions to make the Book details panel look nicer](https://bugs.launchpad.net/calibre/+bug/2029723)
This commit is contained in:
parent
f1537ba35e
commit
7c7ff4cf08
@ -93,7 +93,7 @@ def mi_to_html(
|
|||||||
mi,
|
mi,
|
||||||
field_list=None, default_author_link=None, use_roman_numbers=True,
|
field_list=None, default_author_link=None, use_roman_numbers=True,
|
||||||
rating_font='Liberation Serif', rtl=False, comments_heading_pos='hide',
|
rating_font='Liberation Serif', rtl=False, comments_heading_pos='hide',
|
||||||
for_qt=False, vertical_fields=(), show_links=True,
|
for_qt=False, vertical_fields=(), show_links=True, gray='#7f7f7f',
|
||||||
):
|
):
|
||||||
|
|
||||||
link_markup = '↗️'
|
link_markup = '↗️'
|
||||||
@ -147,7 +147,8 @@ def mi_to_html(
|
|||||||
name = metadata['name']
|
name = metadata['name']
|
||||||
if not name:
|
if not name:
|
||||||
name = field
|
name = field
|
||||||
name += ':'
|
sep = '\xa0'
|
||||||
|
name += sep
|
||||||
disp = metadata['display']
|
disp = metadata['display']
|
||||||
if (metadata['datatype'] == 'comments' or field == 'comments'
|
if (metadata['datatype'] == 'comments' or field == 'comments'
|
||||||
or disp.get('composite_show_in_comments', '')):
|
or disp.get('composite_show_in_comments', '')):
|
||||||
@ -224,7 +225,7 @@ def mi_to_html(
|
|||||||
num_of_folders = 2
|
num_of_folders = 2
|
||||||
break
|
break
|
||||||
text = _('Book files')
|
text = _('Book files')
|
||||||
name = ngettext('Folder:', 'Folders:', num_of_folders)
|
name = ngettext('Folder', 'Folders', num_of_folders) + sep
|
||||||
links = ['<a href="{}" title="{}">{}</a>{}'.format(action(scheme, book_id=book_id, loc=loc),
|
links = ['<a href="{}" title="{}">{}</a>{}'.format(action(scheme, book_id=book_id, loc=loc),
|
||||||
prepare_string_for_xml(path, True), text, extra)]
|
prepare_string_for_xml(path, True), text, extra)]
|
||||||
if num_of_folders > 1:
|
if num_of_folders > 1:
|
||||||
@ -425,7 +426,11 @@ def mi_to_html(
|
|||||||
classname(fieldl), html) for fieldl, html in ans]
|
classname(fieldl), html) for fieldl, html in ans]
|
||||||
# print '\n'.join(ans)
|
# print '\n'.join(ans)
|
||||||
direction = 'rtl' if rtl else 'ltr'
|
direction = 'rtl' if rtl else 'ltr'
|
||||||
rans = '<style>table.fields td { vertical-align:top}</style><table class="fields" style="direction: %s; ' % direction
|
rans = (
|
||||||
|
'<style>table.fields td { vertical-align:top} table.fields td.title {'
|
||||||
|
f'text-align: right; color: {gray}; font-style: italic; font-weight: normal '
|
||||||
|
'}</style>'
|
||||||
|
'<table class="fields" style="direction: %s; ' % direction)
|
||||||
if not for_qt:
|
if not for_qt:
|
||||||
# This causes wasted space at the edge of the table in Qt's rich text
|
# This causes wasted space at the edge of the table in Qt's rich text
|
||||||
# engine, see https://bugs.launchpad.net/calibre/+bug/1881488
|
# engine, see https://bugs.launchpad.net/calibre/+bug/1881488
|
||||||
|
@ -8,7 +8,7 @@ from collections import namedtuple
|
|||||||
from contextlib import suppress
|
from contextlib import suppress
|
||||||
from functools import lru_cache, partial
|
from functools import lru_cache, partial
|
||||||
from qt.core import (
|
from qt.core import (
|
||||||
QAction, QApplication, QClipboard, QColor, QDialog, QEasingCurve, QIcon,
|
QAction, QApplication, QClipboard, QColor, QDialog, QEasingCurve, QIcon, QPalette,
|
||||||
QKeySequence, QMenu, QMimeData, QPainter, QPen, QPixmap, QPropertyAnimation, QRect,
|
QKeySequence, QMenu, QMimeData, QPainter, QPen, QPixmap, QPropertyAnimation, QRect,
|
||||||
QSize, QSizePolicy, QSplitter, Qt, QTimer, QUrl, QWidget, pyqtProperty, pyqtSignal,
|
QSize, QSizePolicy, QSplitter, Qt, QTimer, QUrl, QWidget, pyqtProperty, pyqtSignal,
|
||||||
)
|
)
|
||||||
@ -292,11 +292,15 @@ def render_data(mi, use_roman_numbers=True, all_fields=False, pref_name='book_di
|
|||||||
field_list = get_field_list(getattr(mi, 'field_metadata', field_metadata),
|
field_list = get_field_list(getattr(mi, 'field_metadata', field_metadata),
|
||||||
pref_name=pref_name, mi=mi)
|
pref_name=pref_name, mi=mi)
|
||||||
field_list = [(x, all_fields or display) for x, display in field_list]
|
field_list = [(x, all_fields or display) for x, display in field_list]
|
||||||
|
gray = '#888'
|
||||||
|
app = QApplication.instance()
|
||||||
|
if app is not None and app.is_dark_theme:
|
||||||
|
gray = app.palette().color(QPalette.ColorRole.PlaceholderText).name()
|
||||||
return mi_to_html(
|
return mi_to_html(
|
||||||
mi, field_list=field_list, use_roman_numbers=use_roman_numbers, rtl=is_rtl(),
|
mi, field_list=field_list, use_roman_numbers=use_roman_numbers, rtl=is_rtl(),
|
||||||
rating_font=rating_font(), default_author_link=default_author_link(),
|
rating_font=rating_font(), default_author_link=default_author_link(),
|
||||||
comments_heading_pos=gprefs['book_details_comments_heading_pos'], for_qt=True,
|
comments_heading_pos=gprefs['book_details_comments_heading_pos'], for_qt=True,
|
||||||
vertical_fields=vertical_fields, show_links=show_links
|
vertical_fields=vertical_fields, show_links=show_links, gray=gray
|
||||||
)
|
)
|
||||||
|
|
||||||
# }}}
|
# }}}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user