diff options
-rw-r--r-- | css/app.less | 30 | ||||
-rw-r--r-- | css/index.css | 69 | ||||
-rw-r--r-- | css/read.css | 204 | ||||
-rw-r--r-- | dist/app.min.css | 2 | ||||
-rw-r--r-- | dist/reader_iframe.min.js | 2 | ||||
-rw-r--r-- | js/reader_iframe.js | 29 | ||||
-rw-r--r-- | login.php | 4 |
7 files changed, 46 insertions, 294 deletions
diff --git a/css/app.less b/css/app.less index 5e6cc4c..d2d971e 100644 --- a/css/app.less +++ b/css/app.less @@ -169,19 +169,37 @@ body.epube-reader { .spacer > .toc-bar-entry { display : none; } + + .footer { + width : 100%; + + .chapter_wrapper, + .location { + min-width : 30%; + max-width : 70%; + } + } } @media (min-width: 540px) { - .footer .chapter_wrapper, .footer .location { - width : 25%; + .footer { + .chapter_wrapper, + .location { + min-width : 25%; + max-width : 30%; + } } } - @media (min-width: 800px) { - .footer .chapter_wrapper, .footer .location { - width : 20%; + /*@media (min-width: 800px) { + .footer { + .chapter_wrapper, + .location { + min-width : 20%; + max-width : 30%; + } } - } + }*/ .toolbar { text-align : right; diff --git a/css/index.css b/css/index.css deleted file mode 100644 index 3eae557..0000000 --- a/css/index.css +++ /dev/null @@ -1,69 +0,0 @@ -.display-flex { - display: flex; - flex-wrap: wrap; -} - -.separate-search { - padding : 8px; -} - -.row > div { - padding-top : 10px; -} - -.row .thumbnail { - height : 200px; - width : 140px; - margin-bottom : 0; -} - -@media(max-width: 641px) { - .row .col-xxs-6 { - width: 50%; - } -} - -.row .thumbnail img { - width : 100%; - height : 100%; - background-size : cover; - background-position : center; - background-repeat: no-repeat; -} - -.row .thumbnail.read img { - opacity : 0.5; - filter : grayscale(100%); -} - -.epube-app-filler { - height : 60px; - display : none; -} - -.in_progress { - font-style : italic; -} - -.caption div { - overflow : hidden; - text-overflow: ellipsis; - white-space : nowrap; -} - -::selection { - background : #007d71; - color : white; -} - -::-webkit-scrollbar { - width: 4px; -} - -::-webkit-scrollbar-thumb { - background-color: #007d71; -} - -::-webkit-scrollbar-track { - background-color: #eee; -} diff --git a/css/read.css b/css/read.css deleted file mode 100644 index f7a9e2d..0000000 --- a/css/read.css +++ /dev/null @@ -1,204 +0,0 @@ -.loading { - position : absolute; - color : #999; - top : 0px; - left : 0px; - height : 100%; - width : 100%; - z-index : 32; - text-align : center; - background : white; - padding : 16px; - font-size : 18px; - display : table; -} - -.loading > div { - display : table-cell; - vertical-align : middle; -} - -.notice { - width : 120px; - padding-left : 5px; -} - -.header { - top : 5px; - left : 0px; - width : 100%; - height : 24px; -} - -.footer { - bottom : 5px; - left : 0px; - width : 100%; - height : 24px; -} - -.header, .footer { - position : absolute; - font-size : 13px; - display : flex; - padding-left : 10px; - padding-right : 10px; - color : #999; - align-items : center; -} - -.header .title, .footer .chapter_wrapper { - overflow : hidden; - text-overflow: ellipsis; - white-space : nowrap; -} - -.header .title { - margin-left : 10px; - flex-grow : 2; - text-align : center; - font-weight : bold; -} - -.footer .chapter_wrapper { - padding-right : 10px; - cursor : pointer; -} - -.footer .spacer { - flex-grow : 2; - position : relative; - height : 12px; -} - -.footer .spacer .toc-bar-entry { - position : absolute; - background: #999; - top: 0; - bottom : 0; - width : 1px; -} - -.footer .spacer .toc-bar-entry.current-position { - background : #C33; -} - -.footer .location { - cursor : pointer; - text-align : right; -} - -@media (max-width: 539px) { - .spacer > .toc-bar-entry { - display : none; - } -} - -@media (min-width: 540px) { - .footer .chapter_wrapper, .footer .location { - width : 25%; - } -} - -@media (min-width: 800px) { - .footer .chapter_wrapper, .footer .location { - width : 20%; - } -} - - -.toolbar { - text-align : right; - display : flex; - flex-direction : row; -} - -.toolbar > * { - cursor : pointer; - margin : 0 4px; - padding : 0 2px; -} - -.toolbar > *:last-child { - margin-right : 0; -} - -#reader { - position : absolute; - top : 32px; - bottom : 32px; - left : 32px; - right : 32px; -} - -#left, #right { - position : absolute; - top : 48px; - bottom : 48px; - width : 0px; - z-index : 10; -} - -#left { - left : 0px; -} - -#right { - right : 0px; -} - -@media (max-width: 576px) { - #reader { - left : 24px; - right : 24px; - } -} - -.chapter { - cursor : pointer; -} - -.toc_list, .search_results, .dict_result { - max-height : 300px; - height : auto; - overflow : auto; -} - -.dict_result h1, -.dict_result h2, -.dict_result h3 { - font-size : 14px; - margin-top : 0; -} - -.dict_result h2 { - font-weight : bold; -} - -.toc_list b.pull-right, -.search_results b.pull-right { - margin-right : 8px; - margin-left : 16px; -} - -.toc_sublist { - margin-left : 16px; -} - -::-webkit-scrollbar { - width: 4px; -} - -::-webkit-scrollbar-thumb { - background-color: rgba(0,0,0,0.2); -} - -::-webkit-scrollbar-track { - background-color:rgba(0,0,0,0.1); -} - -body.is-epube-app .header .toolbar, -body.is-epube-app .header a { - display : none; -} - diff --git a/dist/app.min.css b/dist/app.min.css index 61e4d60..fc3dc88 100644 --- a/dist/app.min.css +++ b/dist/app.min.css @@ -1 +1 @@ -body.epube-index .caption div,body.epube-reader .footer .chapter_wrapper,body.epube-reader .header .title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.epube-index .display-flex{display:flex;flex-wrap:wrap}body.epube-index .separate-search{padding:8px}body.epube-index .row>div{padding-top:10px}body.epube-index .row .thumbnail{height:200px;width:140px;margin-bottom:0}@media (max-width:641px){body.epube-index .row .col-xxs-6{width:50%}}body.epube-index .row .thumbnail img{width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat}body.epube-index .row .thumbnail.read img{opacity:.5;filter:grayscale(100%)}body.epube-index .epube-app-filler{height:60px;display:none}body.epube-index .in_progress{font-style:italic}body.epube-index ::selection{background:#007d71;color:#fff}body.epube-index ::-webkit-scrollbar{width:4px}body.epube-index ::-webkit-scrollbar-thumb{background-color:#007d71}body.epube-index ::-webkit-scrollbar-track{background-color:#eee}body.epube-reader .loading{position:absolute;color:#999;top:0;left:0;height:100%;width:100%;z-index:32;text-align:center;background:#fff;padding:16px;font-size:18px;display:table}body.epube-reader .loading>div{display:table-cell;vertical-align:middle}body.epube-reader .notice{width:120px;padding-left:5px}body.epube-reader .header{top:5px;left:0;width:100%;height:24px}body.epube-reader .footer{bottom:5px;left:0;width:100%;height:24px}body.epube-reader .footer,body.epube-reader .header{position:absolute;font-size:13px;display:flex;padding-left:10px;padding-right:10px;color:#999;align-items:center}body.epube-reader .header .title{margin-left:10px;flex-grow:2;text-align:center;font-weight:700}body.epube-reader .footer .chapter_wrapper{padding-right:10px;cursor:pointer}body.epube-reader .footer .spacer{flex-grow:2;position:relative;height:12px}body.epube-reader .footer .spacer .toc-bar-entry{position:absolute;background:#999;top:0;bottom:0;width:1px}body.epube-reader .footer .spacer .toc-bar-entry.current-position{background:#C33}body.epube-reader .footer .location{cursor:pointer;text-align:right}@media (max-width:539px){body.epube-reader .spacer>.toc-bar-entry{display:none}}@media (min-width:540px){body.epube-reader .footer .chapter_wrapper,body.epube-reader .footer .location{width:25%}}@media (min-width:800px){body.epube-reader .footer .chapter_wrapper,body.epube-reader .footer .location{width:20%}}body.epube-reader .toolbar{text-align:right;display:flex;flex-direction:row}body.epube-reader .toolbar>*{cursor:pointer;margin:0 4px;padding:0 2px}body.epube-reader .toolbar>:last-child{margin-right:0}body.epube-reader #reader{position:absolute;top:32px;bottom:32px;left:32px;right:32px}body.epube-reader #left,body.epube-reader #right{position:absolute;top:48px;bottom:48px;width:0;z-index:10}body.epube-reader #left{left:0}body.epube-reader #right{right:0}@media (max-width:576px){body.epube-reader #reader{left:24px;right:24px}}body.epube-reader .chapter{cursor:pointer}body.epube-reader .dict_result,body.epube-reader .search_results,body.epube-reader .toc_list{max-height:300px;height:auto;overflow:auto}body.epube-reader .dict_result h1,body.epube-reader .dict_result h2,body.epube-reader .dict_result h3{font-size:14px;margin-top:0}body.epube-reader .dict_result h2{font-weight:700}body.epube-reader .search_results b.pull-right,body.epube-reader .toc_list b.pull-right{margin-right:8px;margin-left:16px}body.epube-reader .toc_sublist{margin-left:16px}body.epube-reader ::-webkit-scrollbar{width:4px}body.epube-reader ::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2)}body.epube-reader ::-webkit-scrollbar-track{background-color:rgba(0,0,0,.1)}body.is-epube-app.epube-reader .header .toolbar,body.is-epube-app.epube-reader .header a{display:none}@media (prefers-color-scheme:dark){body.theme-default,body.theme-default .loading,body.theme-default html:-webkit-full-screen{background:#222;color:#ccc}body.theme-default .modal{color:#333}}body.theme-gray,body.theme-gray .loading,body.theme-gray html:-webkit-full-screen{background:#eee;color:#424242}body.theme-gray .footer,body.theme-gray .header{color:#B85C57}body.theme-gray .footer .spacer .toc-bar-entry.current-position{background:#B85C57}body.theme-light .no-op{color:#fff}body.theme-mocca,body.theme-mocca .loading,body.theme-mocca html:-webkit-full-screen{background:#3B3228;color:#D0C8C6}body.theme-mocca a{color:#8AB3B5}body.theme-mocca a:hover{color:#7BBDA4}body.theme-mocca .footer,body.theme-mocca .header{color:#F4BC87}body.theme-mocca .footer .location{color:#BEB55B}body.theme-mocca .header button.btn{background:#BB9584;color:#534636;text-shadow:#534636 0 0;border-color:#534636}body.theme-mocca .footer .spacer .toc-bar-entry.current-position{background:#F4BC87}body.theme-night,body.theme-night .loading,body.theme-night html:-webkit-full-screen{background:#222;color:#ccc}body.theme-night a,body.theme-night a:hover{color:#00bdaa}body.theme-night .modal{color:#333}body.theme-night .footer .spacer .toc-bar-entry.current-position{background:#8b0000}body.theme-plan9,body.theme-plan9 .loading,body.theme-plan9 html:-webkit-full-screen{background:#FFFFE8;color:#424242}body.theme-plan9 a{color:#22b9b2}body.theme-plan9 a:hover{color:#28d7cf}body.theme-plan9 .footer,body.theme-plan9 .header{color:#B85C57}body.theme-plan9 .footer .spacer .toc-bar-entry.current-position{background:#B85C57}body.theme-sepia,body.theme-sepia .loading,body.theme-sepia html:-webkit-full-screen{background:#FAEFDB;color:#4a422b}body.theme-sepia .footer,body.theme-sepia .header{color:#B85C57}body.theme-sepia .footer .spacer .toc-bar-entry.current-position{background:#B85C57}
\ No newline at end of file +body.epube-index .caption div,body.epube-reader .footer .chapter_wrapper,body.epube-reader .header .title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.epube-index .display-flex{display:flex;flex-wrap:wrap}body.epube-index .separate-search{padding:8px}body.epube-index .row>div{padding-top:10px}body.epube-index .row .thumbnail{height:200px;width:140px;margin-bottom:0}@media (max-width:641px){body.epube-index .row .col-xxs-6{width:50%}}body.epube-index .row .thumbnail img{width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat}body.epube-index .row .thumbnail.read img{opacity:.5;filter:grayscale(100%)}body.epube-index .epube-app-filler{height:60px;display:none}body.epube-index .in_progress{font-style:italic}body.epube-index ::selection{background:#007d71;color:#fff}body.epube-index ::-webkit-scrollbar{width:4px}body.epube-index ::-webkit-scrollbar-thumb{background-color:#007d71}body.epube-index ::-webkit-scrollbar-track{background-color:#eee}body.epube-reader .loading{position:absolute;color:#999;top:0;left:0;height:100%;width:100%;z-index:32;text-align:center;background:#fff;padding:16px;font-size:18px;display:table}body.epube-reader .loading>div{display:table-cell;vertical-align:middle}body.epube-reader .notice{width:120px;padding-left:5px}body.epube-reader .header{top:5px;left:0;width:100%;height:24px}body.epube-reader .footer{bottom:5px;left:0;width:100%;height:24px}body.epube-reader .footer,body.epube-reader .header{position:absolute;font-size:13px;display:flex;padding-left:10px;padding-right:10px;color:#999;align-items:center}body.epube-reader .header .title{margin-left:10px;flex-grow:2;text-align:center;font-weight:700}body.epube-reader .footer .chapter_wrapper{padding-right:10px;cursor:pointer}body.epube-reader .footer .spacer{flex-grow:2;position:relative;height:12px}body.epube-reader .footer .spacer .toc-bar-entry{position:absolute;background:#999;top:0;bottom:0;width:1px}body.epube-reader .footer .spacer .toc-bar-entry.current-position{background:#C33}body.epube-reader .footer .location{cursor:pointer;text-align:right}@media (max-width:539px){body.epube-reader .spacer>.toc-bar-entry{display:none}body.epube-reader .footer{width:100%}body.epube-reader .footer .chapter_wrapper,body.epube-reader .footer .location{min-width:30%;max-width:70%}}@media (min-width:540px){body.epube-reader .footer .chapter_wrapper,body.epube-reader .footer .location{min-width:25%;max-width:30%}}body.epube-reader .toolbar{text-align:right;display:flex;flex-direction:row}body.epube-reader .toolbar>*{cursor:pointer;margin:0 4px;padding:0 2px}body.epube-reader .toolbar>:last-child{margin-right:0}body.epube-reader #reader{position:absolute;top:32px;bottom:32px;left:32px;right:32px}body.epube-reader #left,body.epube-reader #right{position:absolute;top:48px;bottom:48px;width:0;z-index:10}body.epube-reader #left{left:0}body.epube-reader #right{right:0}@media (max-width:576px){body.epube-reader #reader{left:24px;right:24px}}body.epube-reader .chapter{cursor:pointer}body.epube-reader .dict_result,body.epube-reader .search_results,body.epube-reader .toc_list{max-height:300px;height:auto;overflow:auto}body.epube-reader .dict_result h1,body.epube-reader .dict_result h2,body.epube-reader .dict_result h3{font-size:14px;margin-top:0}body.epube-reader .dict_result h2{font-weight:700}body.epube-reader .search_results b.pull-right,body.epube-reader .toc_list b.pull-right{margin-right:8px;margin-left:16px}body.epube-reader .toc_sublist{margin-left:16px}body.epube-reader ::-webkit-scrollbar{width:4px}body.epube-reader ::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2)}body.epube-reader ::-webkit-scrollbar-track{background-color:rgba(0,0,0,.1)}body.is-epube-app.epube-reader .header .toolbar,body.is-epube-app.epube-reader .header a{display:none}@media (prefers-color-scheme:dark){body.theme-default,body.theme-default .loading,body.theme-default html:-webkit-full-screen{background:#222;color:#ccc}body.theme-default .modal{color:#333}}body.theme-gray,body.theme-gray .loading,body.theme-gray html:-webkit-full-screen{background:#eee;color:#424242}body.theme-gray .footer,body.theme-gray .header{color:#B85C57}body.theme-gray .footer .spacer .toc-bar-entry.current-position{background:#B85C57}body.theme-light .no-op{color:#fff}body.theme-mocca,body.theme-mocca .loading,body.theme-mocca html:-webkit-full-screen{background:#3B3228;color:#D0C8C6}body.theme-mocca a{color:#8AB3B5}body.theme-mocca a:hover{color:#7BBDA4}body.theme-mocca .footer,body.theme-mocca .header{color:#F4BC87}body.theme-mocca .footer .location{color:#BEB55B}body.theme-mocca .header button.btn{background:#BB9584;color:#534636;text-shadow:#534636 0 0;border-color:#534636}body.theme-mocca .footer .spacer .toc-bar-entry.current-position{background:#F4BC87}body.theme-night,body.theme-night .loading,body.theme-night html:-webkit-full-screen{background:#222;color:#ccc}body.theme-night a,body.theme-night a:hover{color:#00bdaa}body.theme-night .modal{color:#333}body.theme-night .footer .spacer .toc-bar-entry.current-position{background:#8b0000}body.theme-plan9,body.theme-plan9 .loading,body.theme-plan9 html:-webkit-full-screen{background:#FFFFE8;color:#424242}body.theme-plan9 a{color:#22b9b2}body.theme-plan9 a:hover{color:#28d7cf}body.theme-plan9 .footer,body.theme-plan9 .header{color:#B85C57}body.theme-plan9 .footer .spacer .toc-bar-entry.current-position{background:#B85C57}body.theme-sepia,body.theme-sepia .loading,body.theme-sepia html:-webkit-full-screen{background:#FAEFDB;color:#4a422b}body.theme-sepia .footer,body.theme-sepia .header{color:#B85C57}body.theme-sepia .footer .spacer .toc-bar-entry.current-position{background:#B85C57}
\ No newline at end of file diff --git a/dist/reader_iframe.min.js b/dist/reader_iframe.min.js index 189e5ad..9280922 100644 --- a/dist/reader_iframe.min.js +++ b/dist/reader_iframe.min.js @@ -1 +1 @@ -"use strict";let Reader,App;function enable_swipes(){$(window).off("swipeleft swiperight"),$(window).on("swipeleft",(function(){Reader.Page.next()})),$(window).on("swiperight",(function(){Reader.Page.prev()}))}$(document).ready((function(){Reader=parent.__get_reader(),App=parent.__get_app(),$(window).on("doubletap",(function(){getSelection().toString().trim().match(/^$/)&&Reader.toggleFullscreen()})),$(window).on("click tap",(function(e){if(0==e.button){if($(".modal").is(":visible"))return;"undefined"!=typeof EpubeApp?EpubeApp.toggleActionBar():Reader.showUI(!0)}})),$(window).on("touchstart",(function(){enable_swipes()})),$(window).on("mousedown",(function(){$(window).off("swipeleft swiperight")})),$(window).on("wheel",(function(e){e.originalEvent.deltaY>0?Reader.Page.next():e.originalEvent.deltaY<0&&Reader.Page.prev()})),$(window).on("mouseup touchend",(function(){if(!App.onLine)return;const e=getSelection().toString().trim();e.match(/^[\w]+$/)&&Reader.lookupWord(e,(function(){"undefined"!=typeof EpubeApp&&EpubeApp.showActionBar(!1),getSelection().removeAllRanges()}))})),enable_swipes()}));
\ No newline at end of file +"use strict";let Reader,App;function enable_swipes(){$(window).off("swipeleft swiperight"),$(window).on("swipeleft",(function(){Reader.Page.next()})),$(window).on("swiperight",(function(){Reader.Page.prev()}))}$(document).ready((function(){Reader=parent.__get_reader(),App=parent.__get_app(),$(window).on("click tap",(function(e){if(0==e.button){if($(".modal").is(":visible"))return;"undefined"!=typeof EpubeApp?EpubeApp.toggleActionBar():Reader.showUI(!0)}})),$(window).on("touchstart",(function(){enable_swipes()})),$(window).on("mousedown",(function(){$(window).off("swipeleft swiperight")})),$(window).on("wheel",(function(e){e.originalEvent.deltaY>0?Reader.Page.next():e.originalEvent.deltaY<0&&Reader.Page.prev()}));let e=null;$(document).on("selectionchange",(function(){App.onLine&&(window.clearTimeout(e),e=window.setTimeout((function(){const e=getSelection().toString().trim();e.match(/^[\w]+$/)&&Reader.lookupWord(e,(function(){"undefined"!=typeof EpubeApp&&EpubeApp.showActionBar(!1),getSelection().removeAllRanges()}))}),250))})),enable_swipes()}));
\ No newline at end of file diff --git a/js/reader_iframe.js b/js/reader_iframe.js index 80e597e..c58061e 100644 --- a/js/reader_iframe.js +++ b/js/reader_iframe.js @@ -21,13 +21,13 @@ $(document).ready(function() { Reader = parent.__get_reader(); App = parent.__get_app(); - $(window).on("doubletap", function(/* evt */) { + /*$(window).on("doubletap", function(evt) { const sel = getSelection().toString().trim(); if (sel.match(/^$/)) { Reader.toggleFullscreen(); } - }); + }); */ $(window).on("click tap", function(evt) { if (evt.button == 0) { @@ -58,19 +58,26 @@ $(document).ready(function() { } }); - $(window).on("mouseup touchend", function() { + let selectionChangeTimeout = null; + + $(document).on("selectionchange", function() { if (!App.onLine) return; - const sel = getSelection().toString().trim(); + window.clearTimeout(selectionChangeTimeout); - if (sel.match(/^[\w]+$/)) { - Reader.lookupWord(sel, function() { - if (typeof EpubeApp != "undefined") - EpubeApp.showActionBar(false); + selectionChangeTimeout = window.setTimeout(function() { + const sel = getSelection().toString().trim(); + + if (sel.match(/^[\w]+$/)) { + Reader.lookupWord(sel, function() { + if (typeof EpubeApp != "undefined") + EpubeApp.showActionBar(false); + + getSelection().removeAllRanges(); + }); + } + }, 250); - getSelection().removeAllRanges(); - }); - } }); enable_swipes(); @@ -43,7 +43,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <script src="dist/app-libs.min.js"></script> <title>The Epube</title> - <link type="text/css" rel="stylesheet" media="screen" href="css/index.css" /> + <link type="text/css" rel="stylesheet" media="screen" href="dist/app.min.css" /> <link rel="shortcut icon" type="image/png" href="img/favicon.png" /> <link rel="manifest" href="manifest.json"> <meta name="mobile-web-app-capable" content="yes"> @@ -57,7 +57,7 @@ }); </script> </head> -<body> +<body class="epube-login"> <div class="navbar navbar-default navbar-static-top"> <div class="container"> |