add books button, add page count on bottom and in settings, add swipe for closing sidebar, fix settings modal, fix few styles

This commit is contained in:
IgorKurkov
2025-10-29 22:06:09 +01:00
parent 560e8e132d
commit 6d6d5ac097
4 changed files with 112 additions and 8 deletions

View File

@@ -57,6 +57,13 @@
data-view="Bookmarks"
>Bookmarks</a
>
<a
id="back-button"
data-view="Back to Books"
href="{{ url_for('web.index') }}"
>
Books
</a>
<!--a id="show-Notes" class="show_view icon-edit" data-view="Notes">Notes</a-->
</div>
<div id="tocView" class="view"></div>
@@ -95,7 +102,10 @@
<div id="prev" class="arrow"></div>
<div id="viewer"></div>
<div id="next" class="arrow"></div>
<div id="progress">0%</div>
<div class="read-footer">
<div id="pages-count"></div>
<div id="progress">0%</div>
</div>
<div id="loader">
<img src="{{ url_for('static', filename='img/loader.gif') }}" />
</div>
@@ -167,9 +177,18 @@
id="navGestures"
onclick="selectNavMode('gestures')"
>
<span id="navGesturesTick"> </span>{{_('Gestures')}}
<span id="navGesturesTick"> </span>{{_('Gestures (for mobile)')}}
</button>
</div>
<div class="form-group">
<p>
<input
type="checkbox"
id="showPagesCount"
name="showPagesCount"
/>{{_('Show pages count')}}
</p>
</div>
<div class="form-group fontSizeWrapper">
<label>{{ _('Font Size') }}</label>
<div
@@ -390,9 +409,28 @@
// Initialize nav mode on load
(function () {
var savedMode =
localStorage.getItem("calibre.reader.navMode") || "gestures";
localStorage.getItem("calibre.reader.navMode") || "sizes";
selectNavMode(savedMode);
})();
// Pages counter visibility setting
(function () {
var checkbox = document.getElementById("showPagesCount");
var pagesEl = document.getElementById("pages-count");
var key = "calibre.reader.showPages";
var saved = localStorage.getItem(key);
var show = saved === null ? true : saved === "true";
if (checkbox) checkbox.checked = show;
if (pagesEl) pagesEl.style.display = show ? "" : "none";
if (checkbox) {
checkbox.addEventListener("change", function () {
var val = checkbox.checked;
localStorage.setItem(key, String(val));
var target = document.getElementById("pages-count");
if (target) target.style.visibility = val ? "visible" : "hidden";
});
}
})();
</script>
<script src="{{ url_for('static', filename='js/libs/screenfull.min.js') }}"></script>
<script src="{{ url_for('static', filename='js/libs/hammer.min.js') }}"></script>