diff --git a/src/calibre/gui2/__init__.py b/src/calibre/gui2/__init__.py index 76a7e5f2c5..08028c9bf6 100644 --- a/src/calibre/gui2/__init__.py +++ b/src/calibre/gui2/__init__.py @@ -111,7 +111,7 @@ defs['bd_show_cover'] = True defs['bd_overlay_cover_size'] = False defs['tags_browser_category_icons'] = {} defs['cover_browser_reflections'] = True -defs['extra_row_spacing'] = 0 +defs['book_list_extra_row_spacing'] = 0 defs['refresh_book_list_on_bulk_edit'] = True defs['cover_grid_width'] = 0 defs['cover_grid_height'] = 0 diff --git a/src/calibre/gui2/library/views.py b/src/calibre/gui2/library/views.py index 6b32967b97..73d003067b 100644 --- a/src/calibre/gui2/library/views.py +++ b/src/calibre/gui2/library/views.py @@ -163,6 +163,7 @@ class BooksView(QTableView): # {{{ def __init__(self, parent, modelcls=BooksModel, use_edit_metadata_dialog=True): QTableView.__init__(self, parent) + self.default_row_height = self.verticalHeader().defaultSectionSize() self.gui = parent self.setProperty('highlight_current_item', 150) self.row_sizing_done = False @@ -658,9 +659,8 @@ class BooksView(QTableView): # {{{ def do_row_sizing(self): # Resize all rows to have the correct height if not self.row_sizing_done and self.model().rowCount(QModelIndex()) > 0: - self.resizeRowToContents(0) - self.verticalHeader().setDefaultSectionSize(self.rowHeight(0) + - gprefs['extra_row_spacing']) + vh = self.verticalHeader() + vh.setDefaultSectionSize(max(vh.minimumSectionSize(), self.default_row_height + gprefs['book_list_extra_row_spacing'])) self._model.set_row_height(self.rowHeight(0)) self.row_sizing_done = True diff --git a/src/calibre/gui2/preferences/look_feel.py b/src/calibre/gui2/preferences/look_feel.py index 9df9d7da1e..dafbadccdb 100644 --- a/src/calibre/gui2/preferences/look_feel.py +++ b/src/calibre/gui2/preferences/look_feel.py @@ -157,6 +157,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): r('emblem_size', gprefs) r('emblem_position', gprefs, choices=[ (_('Left'), 'left'), (_('Top'), 'top'), (_('Right'), 'right'), (_('Bottom'), 'bottom')]) + r('book_list_extra_row_spacing', gprefs) def get_esc_lang(l): if l == 'en': diff --git a/src/calibre/gui2/preferences/look_feel.ui b/src/calibre/gui2/preferences/look_feel.ui index a859f6a17c..4299ac492c 100644 --- a/src/calibre/gui2/preferences/look_feel.ui +++ b/src/calibre/gui2/preferences/look_feel.ui @@ -207,18 +207,18 @@ Extra &spacing to add between rows in the book list: - opt_extra_row_spacing + opt_book_list_extra_row_spacing - - - None - + px + + -5 +