VulpesOS/assets/webapps/system.gaiamobile.org/style/system/keyboard.css
OverSu b38dea0597 Publish Vulpes Preview 15 sources for desktop, Android and Tundra
Share Gaia assets and adapters, keep private profiles and development documents local, and update both public READMEs.
2026-09-30 23:13:03 +02:00

171 lines
3.1 KiB
CSS

#keyboards {
/* See the new mozpasspointerevents attribute added in bug 796452 */
pointer-events: none;
position: absolute;
bottom: 0;
width: 100%;
height: 100%;
}
.inputWindow {
position: absolute;
opacity: 0;
transform: translateY(100%);
bottom: 0;
height: 100%;
width: 100%;
}
.inputWindow iframe {
display: none;
position: absolute;
bottom: 0;
width: 100%;
height: 100%;
}
.inputWindow.active {
opacity: 1;
transform: translateY(0);
}
.inputWindow.top-most iframe {
display: block;
}
@media not all and (-moz-physical-home-button) {
#screen:not(.software-button-disabled) #keyboards {
bottom: var(--software-home-button-height);
}
}
#screen.software-button-enabled #keyboards {
bottom: var(--software-home-button-height);
}
@media (orientation: landscape) {
#screen.software-button-enabled #keyboards {
/* BiDi note: the software home button should not be mirrored in RTL. */
right: var(--software-home-button-height);
bottom: 0;
left: 0;
width: auto;
}
}
.inputWindow.slide-from-bottom {
animation: kbShow var(--transition-duration) both ease;
}
.inputWindow.slide-to-bottom {
/* ease-in for disappearing */
animation: kbHide var(--transition-duration) both ease-in;
}
@keyframes kbShow {
0% {
opacity: 0;
transform: translateY(100%);
}
80% {
/* the original style indicates opacity should transition from 0 to 1
within 0.2s for "ease", which after calculation is about 80% progress
of var(--transition-duration) "ease". */
opacity: 1;
}
100% {
opacity: 1;
transform: translateY(0);
}
}
@keyframes kbHide {
0% {
opacity: 1;
transform: translateY(0);
}
100% {
opacity: 0;
transform: translateY(100%);
}
}
/* notification */
#keyboard-show-ime-list > .fake-notification {
box-sizing: border-box;
/* wait for activate */
display: none;
}
#keyboard-show-ime-list > .fake-notification.activated {
display: block;
}
#keyboard-show-ime-list > .fake-notification > .title-container {
margin: 1.4rem 0 0;
margin-inline-start: 3.7rem;
}
#keyboard-show-ime-list > .fake-notification > .detail {
margin-inline-start: 3.7rem;
}
.lockScreenInputWindow.slide-from-bottom {
animation: slideFromBottom var(--transition-duration) both ease;
}
.lockScreenInputWindow.slide-to-bottom {
animation: slideToBottom var(--transition-duration) both ease-in;
}
@keyframes slideFromBottom {
0% {
opacity: 0;
transform: translateY(100%);
}
50% {
opacity: 1;
}
100% {
opacity: 1;
transform: translateY(0);
}
}
@keyframes slideToBottom {
0% {
opacity: 1;
transform: translateY(0);
}
50% {
opacity: 0;
}
100% {
opacity: 0;
transform: translateY(100%);
}
}
.lockScreenInputWindow {
transform: translateY(100%);
}
.lockScreenInputWindow #lockscreen-inputpad-frame {
position: absolute;
bottom: 0;
width: 100%;
height: 100%;
border: 0;
}
.lockScreenInputWindow #lockscreen-inputpad-frame.hide {
transform: translateY(100%);
}
/* Gecko 52 desktop: the JS clip limits hit testing to the keyboard area. */
.inputWindow.active.top-most iframe { pointer-events: auto; }