mirror of
https://github.com/jiojciojsioe3/a3cjroijsiojiorj.git
synced 2024-11-15 15:31:51 +08:00
Improve appearance on mobile
This commit is contained in:
parent
7372b617b0
commit
d44a4a1ce2
@ -25,8 +25,8 @@
|
|||||||
}
|
}
|
||||||
#song-search{
|
#song-search{
|
||||||
background: linear-gradient(to top, rgb(245 246 252 / 8%), #ff5963), url("bg_search.png");
|
background: linear-gradient(to top, rgb(245 246 252 / 8%), #ff5963), url("bg_search.png");
|
||||||
background-size: 3.12vmax;
|
background-size: 3.12em;
|
||||||
background-position: -1.2vmax;
|
background-position: -1.2em;
|
||||||
}
|
}
|
||||||
.song-search-result-course::before{
|
.song-search-result-course::before{
|
||||||
background-image: url("difficulty.png");
|
background-image: url("difficulty.png");
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
#song-search-container {
|
#song-search-container {
|
||||||
position: fixed;
|
position: absolute;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
top: 0;
|
top: 0;
|
||||||
@ -8,32 +8,45 @@
|
|||||||
bottom: 0;
|
bottom: 0;
|
||||||
background-color: rgba(0,0,0,0.5);
|
background-color: rgba(0,0,0,0.5);
|
||||||
z-index: 2;
|
z-index: 2;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 21px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#song-search {
|
#song-search {
|
||||||
position: absolute;
|
position: relative;
|
||||||
top: 0;
|
|
||||||
right: 0;
|
|
||||||
bottom: 0;
|
|
||||||
left: 0;
|
|
||||||
margin: auto;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
width: 60vmax;
|
width: 60em;
|
||||||
height: 80vmin;
|
height: 80%;
|
||||||
border-radius: 0.8vmax;
|
border-radius: 0.8em;
|
||||||
border: 0.35vmax solid #8C0C42;
|
border: 0.35em solid #8C0C42;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
padding: 1vmax 1vmax 0 1vmax;
|
padding: 1em 1em 0 1em;
|
||||||
z-index: 1;
|
z-index: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#song-search-container.touch-enabled{
|
||||||
|
font-size: calc(3 * var(--vmin, 1vmin));
|
||||||
|
}
|
||||||
|
@media (max-width: 950px){
|
||||||
|
#song-search-container:not(.touch-enabled){
|
||||||
|
font-size: calc(3 * var(--vmin, 1vmin));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@media (max-height: 650px){
|
||||||
|
#song-search-container:not(.touch-enabled){
|
||||||
|
font-size: calc(2 * var(--vmin, 1vmin));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#song-search-input {
|
#song-search-input {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
font-size: 2vmax;
|
font-size: 1.8em;
|
||||||
padding: 0.8vmax 1.2vmax;
|
padding: 0.5em 0.7em;
|
||||||
border-radius: 0.3vmax;
|
border-radius: 0.2em;
|
||||||
border: 0.25vmax black solid;
|
border: 0.13em black solid;
|
||||||
font-family: TnT;
|
font-family: TnT;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
-webkit-box-sizing:border-box;
|
-webkit-box-sizing:border-box;
|
||||||
@ -42,11 +55,11 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
#song-search-input:focus {
|
#song-search-input:focus {
|
||||||
border: 0.25vmax #fff923 solid;
|
border-color: #fff923;
|
||||||
}
|
}
|
||||||
|
|
||||||
#song-search-results {
|
#song-search-results {
|
||||||
margin-top: 0.5vmax;
|
margin-top: 0.5em;
|
||||||
overflow-y: scroll;
|
overflow-y: scroll;
|
||||||
-ms-overflow-style: none;
|
-ms-overflow-style: none;
|
||||||
scrollbar-width: none;
|
scrollbar-width: none;
|
||||||
@ -59,14 +72,14 @@
|
|||||||
|
|
||||||
.song-search-result {
|
.song-search-result {
|
||||||
display: flex;
|
display: flex;
|
||||||
height: 3.2vmax;
|
height: 3.2em;
|
||||||
margin: 0.2vmax;
|
margin: 0.2em;
|
||||||
padding: 0.7vmax;
|
padding: 0.7em;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
border: 0.3vmax black solid;
|
border: 0.3em black solid;
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -82,25 +95,25 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result:last-of-type {
|
.song-search-result:last-of-type {
|
||||||
margin-bottom: 1vmax;
|
margin-bottom: 1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-info {
|
.song-search-result-info {
|
||||||
flex: 10;
|
flex: 10;
|
||||||
font-size: 1.2vmax;
|
font-size: 1.2em;
|
||||||
margin: 0.3vmax;
|
margin: 0.3em;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
z-index: 0;
|
z-index: 0;
|
||||||
position: relative;
|
position: relative;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
padding-left: 0.2vmax;
|
padding-left: 0.2em;
|
||||||
overflow-x: clip;
|
overflow-x: clip;
|
||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-subtitle {
|
.song-search-result-subtitle {
|
||||||
display: block;
|
display: block;
|
||||||
font-size: 0.8vmax;
|
font-size: 0.8em;
|
||||||
margin-top: 0.5vmax;
|
margin-top: 0.5em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-title::before,
|
.song-search-result-title::before,
|
||||||
@ -114,9 +127,9 @@
|
|||||||
flex: 1;
|
flex: 1;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
margin: 0.2vmax;
|
margin: 0.2em;
|
||||||
font-size: 1.2vmax;
|
font-size: 1.2em;
|
||||||
border-radius: 0.3vmax;
|
border-radius: 0.3em;
|
||||||
position: relative;
|
position: relative;
|
||||||
z-index: 1;
|
z-index: 1;
|
||||||
}
|
}
|
||||||
@ -143,8 +156,8 @@
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
opacity: 0.5;
|
opacity: 0.5;
|
||||||
z-index: -1;
|
z-index: -1;
|
||||||
background-size: 6vmax;
|
background-size: 4.8em;
|
||||||
border-radius: 0.3vmax;
|
border-radius: 0.3em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-stars {
|
.song-search-result-stars {
|
||||||
@ -152,8 +165,8 @@
|
|||||||
background: rgb(0 0 0 / 47%);
|
background: rgb(0 0 0 / 47%);
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
padding: 0.1vmax 0;
|
padding: 0.1em 0;
|
||||||
border-radius: 0 0 0.3vmax 0.3vmax;
|
border-radius: 0 0 0.3em 0.3em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-easy {
|
.song-search-result-easy {
|
||||||
@ -161,8 +174,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-easy::before {
|
.song-search-result-easy::before {
|
||||||
background-position-x: -1.1vmax;
|
background-position-x: center;
|
||||||
background-position-y: -0.7vmax;
|
background-position-y: -0.6em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-normal {
|
.song-search-result-normal {
|
||||||
@ -170,8 +183,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-normal::before {
|
.song-search-result-normal::before {
|
||||||
background-position-x: -1.2vmax;
|
background-position-x: center;
|
||||||
background-position-y: -6.4vmax;
|
background-position-y: -5.1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-hard {
|
.song-search-result-hard {
|
||||||
@ -179,8 +192,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-hard::before {
|
.song-search-result-hard::before {
|
||||||
background-position-x: -1.1vmax;
|
background-position-x: center;
|
||||||
background-position-y: -11.4vmax;
|
background-position-y: -9.1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-oni {
|
.song-search-result-oni {
|
||||||
@ -188,8 +201,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-oni::before {
|
.song-search-result-oni::before {
|
||||||
background-position-x: -1.2vmax;
|
background-position-x: center;
|
||||||
background-position-y: -16.5vmax;
|
background-position-y: -13.1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-ura {
|
.song-search-result-ura {
|
||||||
@ -197,48 +210,48 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-ura::before {
|
.song-search-result-ura::before {
|
||||||
background-position-x: -1.2vmax;
|
background-position-x: center;
|
||||||
background-position-y: -21.6vmax;
|
background-position-y: -17.2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-crown {
|
.song-search-result-crown {
|
||||||
background-size: 1.9vmax;
|
background-size: 1.4em;
|
||||||
background-position-x: 0.82vmax;
|
background-position-x: center;
|
||||||
background-repeat: repeat-y;
|
background-repeat: repeat-y;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
height: 2vmax;
|
height: 2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-gold {
|
.song-search-result-gold {
|
||||||
background-position-y: 5.15vmax;
|
background-position-y: 4.1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-silver {
|
.song-search-result-silver {
|
||||||
background-position-y: 7.6vmax;
|
background-position-y: 6.1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.song-search-result-noclear {
|
.song-search-result-noclear {
|
||||||
background-position-y: 0.15vmax;
|
background-position-y: 0.15em;
|
||||||
}
|
}
|
||||||
|
|
||||||
#song-search-tip {
|
#song-search-tip {
|
||||||
font-size: 1vmax;
|
font-size: 1em;
|
||||||
margin-top: 1vmax;
|
margin-top: 1em;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
background-position: top;
|
background-position: top;
|
||||||
background-size: 10vmax;
|
background-size: 10em;
|
||||||
background-color: #00000087;
|
background-color: #00000087;
|
||||||
border-radius: 0.5vmax;
|
border-radius: 0.5em;
|
||||||
padding: 1vmax;
|
padding: 1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
#song-search-close {
|
#song-search-close {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: -0.77vmax;
|
right: -0.5em;
|
||||||
top: -1.26vmax;
|
top: -0.8em;
|
||||||
font-size: 2vmax;
|
font-size: 2em;
|
||||||
font-family: TnT;
|
font-family: TnT;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
@ -248,5 +261,5 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.song-search-tip-error {
|
.song-search-tip-error {
|
||||||
height: 8vmax;
|
height: 8em;
|
||||||
}
|
}
|
||||||
|
@ -38,7 +38,8 @@ function toggleFullscreen(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
function resizeRoot(){
|
function resizeRoot(){
|
||||||
if(lastHeight !== innerHeight){
|
if((noResizeRoot ? lastWidth !== innerWidth : true) && lastHeight !== innerHeight){
|
||||||
|
lastWidth = innerWidth
|
||||||
lastHeight = innerHeight
|
lastHeight = innerHeight
|
||||||
root.style.height = innerHeight + "px"
|
root.style.height = innerHeight + "px"
|
||||||
}
|
}
|
||||||
@ -70,6 +71,7 @@ var snd = {}
|
|||||||
var p2
|
var p2
|
||||||
var disableBlur = false
|
var disableBlur = false
|
||||||
var cancelTouch = true
|
var cancelTouch = true
|
||||||
|
var lastWidth
|
||||||
var lastHeight
|
var lastHeight
|
||||||
var debugObj = {
|
var debugObj = {
|
||||||
state: "closed",
|
state: "closed",
|
||||||
@ -92,6 +94,7 @@ var account = {}
|
|||||||
var gpicker
|
var gpicker
|
||||||
var db
|
var db
|
||||||
var plugins
|
var plugins
|
||||||
|
var noResizeRoot = false
|
||||||
|
|
||||||
pageEvents.add(root, ["touchstart", "touchmove", "touchend"], event => {
|
pageEvents.add(root, ["touchstart", "touchmove", "touchend"], event => {
|
||||||
if(event.cancelable && cancelTouch && event.target.tagName !== "SELECT"){
|
if(event.cancelable && cancelTouch && event.target.tagName !== "SELECT"){
|
||||||
|
@ -1105,6 +1105,16 @@ class SongSelect{
|
|||||||
var screen = this.state.screen
|
var screen = this.state.screen
|
||||||
var selectedWidth = this.songAsset.width
|
var selectedWidth = this.songAsset.width
|
||||||
|
|
||||||
|
if(this.search && this.searchContainer){
|
||||||
|
var vmin = Math.min(innerWidth, lastHeight) / 100
|
||||||
|
if(this.vmin !== vmin){
|
||||||
|
this.searchContainer.style.setProperty("--vmin", vmin + "px")
|
||||||
|
this.vmin = vmin
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
this.vmin = null
|
||||||
|
}
|
||||||
|
|
||||||
if(this.wheelScrolls !== 0 && !this.state.locked && ms >= this.wheelTimer + 20) {
|
if(this.wheelScrolls !== 0 && !this.state.locked && ms >= this.wheelTimer + 20) {
|
||||||
if(p2.session){
|
if(p2.session){
|
||||||
this.moveToSong(this.wheelScrolls)
|
this.moveToSong(this.wheelScrolls)
|
||||||
@ -2769,10 +2779,13 @@ class SongSelect{
|
|||||||
this.search.div = document.createElement("div")
|
this.search.div = document.createElement("div")
|
||||||
this.search.div.innerHTML = assets.pages["search"]
|
this.search.div.innerHTML = assets.pages["search"]
|
||||||
|
|
||||||
pageEvents.add(this.search.div.querySelector("#song-search-container"),
|
this.searchContainer = this.search.div.querySelector(":scope #song-search-container")
|
||||||
["mousedown", "touchstart"], this.searchClick.bind(this))
|
if(this.touchEnabled){
|
||||||
|
this.searchContainer.classList.add("touch-enabled")
|
||||||
|
}
|
||||||
|
pageEvents.add(this.searchContainer, ["mousedown", "touchstart"], this.searchClick.bind(this))
|
||||||
|
|
||||||
this.search.input = this.search.div.querySelector("#song-search-input")
|
this.search.input = this.search.div.querySelector(":scope #song-search-input")
|
||||||
this.search.input.setAttribute("placeholder", strings.search.searchInput)
|
this.search.input.setAttribute("placeholder", strings.search.searchInput)
|
||||||
pageEvents.add(this.search.input, ["input"], this.searchInput.bind(this))
|
pageEvents.add(this.search.input, ["input"], this.searchInput.bind(this))
|
||||||
|
|
||||||
@ -2780,6 +2793,7 @@ class SongSelect{
|
|||||||
loader.screen.appendChild(this.search.div)
|
loader.screen.appendChild(this.search.div)
|
||||||
this.setSearchTip()
|
this.setSearchTip()
|
||||||
cancelTouch = false
|
cancelTouch = false
|
||||||
|
noResizeRoot = true
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.search.input.focus()
|
this.search.input.focus()
|
||||||
@ -2792,13 +2806,14 @@ class SongSelect{
|
|||||||
this.playSound("se_cancel")
|
this.playSound("se_cancel")
|
||||||
}
|
}
|
||||||
|
|
||||||
pageEvents.remove(this.search.div.querySelector("#song-search-container"),
|
pageEvents.remove(this.search.div.querySelector(":scope #song-search-container"),
|
||||||
["mousedown", "touchstart"])
|
["mousedown", "touchstart"])
|
||||||
pageEvents.remove(this.search.input, ["input"])
|
pageEvents.remove(this.search.input, ["input"])
|
||||||
|
|
||||||
this.search.div.remove()
|
this.search.div.remove()
|
||||||
delete this.search
|
delete this.search
|
||||||
cancelTouch = true
|
cancelTouch = true
|
||||||
|
noResizeRoot = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2812,14 +2827,14 @@ class SongSelect{
|
|||||||
tip = strings.search.tip + " " + strings.search.tips[Math.floor(Math.random() * strings.search.tips.length)]
|
tip = strings.search.tip + " " + strings.search.tips[Math.floor(Math.random() * strings.search.tips.length)]
|
||||||
}
|
}
|
||||||
|
|
||||||
var resultsDiv = this.search.div.querySelector("#song-search-results")
|
var resultsDiv = this.search.div.querySelector(":scope #song-search-results")
|
||||||
resultsDiv.innerHTML = ""
|
resultsDiv.innerHTML = ""
|
||||||
this.search.results = []
|
this.search.results = []
|
||||||
|
|
||||||
this.search.tip = document.createElement("div")
|
this.search.tip = document.createElement("div")
|
||||||
this.search.tip.setAttribute("id", "song-search-tip")
|
this.search.tip.setAttribute("id", "song-search-tip")
|
||||||
this.search.tip.innerText = tip
|
this.search.tip.innerText = tip
|
||||||
this.search.div.querySelector("#song-search").appendChild(this.search.tip)
|
this.search.div.querySelector(":scope #song-search").appendChild(this.search.tip)
|
||||||
|
|
||||||
if(error){
|
if(error){
|
||||||
this.search.tip.classList.add("song-search-tip-error")
|
this.search.tip.classList.add("song-search-tip-error")
|
||||||
@ -3190,5 +3205,6 @@ class SongSelect{
|
|||||||
delete this.selectable
|
delete this.selectable
|
||||||
delete this.ctx
|
delete this.ctx
|
||||||
delete this.canvas
|
delete this.canvas
|
||||||
|
delete this.searchContainer
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user