This commit is contained in:
Kovid Goyal 2017-06-18 08:14:26 +05:30
parent 8d63d0bade
commit bc63794138
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
2 changed files with 12 additions and 25 deletions

View File

@ -5,20 +5,11 @@ from __python__ import bound_methods, hash_literals
from elementmaker import E
from gettext import gettext as _
from book_list.cover_grid import (
append_item as cover_grid_append_item, create_item as create_cover_grid_item,
init as init_cover_grid
)
from book_list.details_list import (
append_item as details_list_append_item,
create_item as create_details_list_item,
init as init_details_list
)
from book_list.globals import get_db, get_session_data
from book_list.router import back, open_book
from book_list.top_bar import create_top_bar
from book_list.ui import set_panel_handler
from book_list.views import ALLOWED_MODES, DEFAULT_MODE
from book_list.views import setup_view_mode, DEFAULT_MODE
from dom import clear, ensure_id
from modals import error_dialog
from utils import conditional_timeout
@ -86,20 +77,11 @@ def render_books(books):
book_list_data.append_item(div, child)
def apply_view_mode(mode=DEFAULT_MODE):
def apply_view_mode(mode):
mode = mode or DEFAULT_MODE
if book_list_data.mode is mode:
return
if mode not in ALLOWED_MODES:
mode = DEFAULT_MODE
book_list_data.mode = mode
if mode is 'cover_grid':
book_list_data.render_book = create_cover_grid_item
book_list_data.init_grid = init_cover_grid
book_list_data.append_item = cover_grid_append_item
elif mode is 'details_list':
book_list_data.render_book = create_details_list_item
book_list_data.init_grid = init_details_list
book_list_data.append_item = details_list_append_item
setup_view_mode(mode, book_list_data)
clear_grid()
render_books()

View File

@ -122,9 +122,7 @@ def render_ids(book_ids):
book_list_data.append_item(div, child)
def apply_view_mode(mode=DEFAULT_MODE):
if book_list_data.mode is mode:
return
def setup_view_mode(mode, book_list_data):
if mode not in ALLOWED_MODES:
mode = DEFAULT_MODE
book_list_data.mode = mode
@ -136,6 +134,13 @@ def apply_view_mode(mode=DEFAULT_MODE):
book_list_data.render_book = create_details_list_item
book_list_data.init_grid = init_details_list
book_list_data.append_item = details_list_append_item
return mode
def apply_view_mode(mode=DEFAULT_MODE):
if book_list_data.mode is mode:
return
setup_view_mode(mode, book_list_data)
clear_grid()
render_ids()