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.
This commit is contained in:
OverSu 2026-09-30 23:13:03 +02:00
commit b38dea0597
25901 changed files with 9982925 additions and 369 deletions

View file

@ -0,0 +1,93 @@
#group-call-details-list > section .additionalContactInfo {
height: 1.5rem;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
padding: 0 10.0rem 2rem;
padding-inline-start: 0;
font-size: 1.6rem;
line-height: 2rem;
}
#group-call-details-list .duration {
display: none;
}
#group-call-details-list .number bdi {
font-size: 1.7rem;
line-height: 2.4rem;
white-space: nowrap;
display: block;
overflow: hidden;
text-overflow: ellipsis;
font-weight: bold;
}
html[dir="ltr"] #group-call-details-list .number bdi {
text-align: left;
padding-right: 10.0rem;
}
html[dir="rtl"] #group-call-details-list .number bdi {
text-align: right;
padding-left: 10.0rem;
}
#group-call-details-list > section:not(.additionalInfo) .number {
line-height: 4.5rem;
}
#group-call-details {
z-index: 750;
}
.hangup-button {
visibility: hidden;
}
#group-call-details .hangup-button {
position: absolute;
background: image-set(url("images/handled_call/actionicon_activecall_hangup.png") 1x, url("images/handled_call/actionicon_activecall_hangup@1.5x.png") 1.5x, url("images/handled_call/actionicon_activecall_hangup@2x.png") 2x, url("images/handled_call/actionicon_activecall_hangup@2.25x.png") 2.25x) no-repeat scroll transparent;
background-size: 4rem auto;
top: 0;
right: 0;
bottom: 0;
left: 0;
visibility: visible;
}
html[dir="ltr"] #group-call-details .hangup-button {
background-position: right 1.8rem center;
}
html[dir="rtl"] #group-call-details .hangup-button {
background-position: left 1.8rem center;
}
#group-call-details section.ended > .hangup-button {
background-image: none;
}
#group-call-details section.ended > .duration {
display: block;
position: absolute;
top: 1rem;
offset-inline-end: 1.5rem;
}
#group-call-details section.ended > .duration > span {
font-weight: normal;
}
#group-call-details section.ended > .duration > .total-duration {
font-weight: 300;
line-height: 1.7rem;
}
html[dir="ltr"] #group-call-details section.ended > .duration > .total-duration {
text-align: right;
}
html[dir="rtl"] #group-call-details section.ended > .duration > .total-duration {
text-align: left;
}
#group-call-details-list .sim {
display: none;
color: #ffffff;
font-weight: normal;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 808 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 697 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 695 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 392 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 513 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 457 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 345 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 549 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 355 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 322 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 479 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 419 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 399 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 507 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 481 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 425 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 370 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 313 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 381 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 343 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 354 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 468 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 437 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 588 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 845 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 732 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 734 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1,015 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 935 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 735 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 999 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 917 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 752 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 967 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 204 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 244 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 210 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 213 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 459 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 692 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 606 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 462 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 679 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 604 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 322 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 479 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 419 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 290 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 402 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 335 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 515 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 745 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 667 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 398 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 557 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 513 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 321 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 382 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 343 B

View file

@ -0,0 +1,209 @@
/**
* NOTICE: This file should be kept in sync with
* system/lockscreen/style/lockscreen.css
**/
#lockscreen-header {
z-index: 9999;
position: absolute;
top: 0;
left: 0;
width: 100%;
box-sizing: border-box;
padding: 1.5rem 2.4rem 0;
color: #fff;
opacity: 1;
}
#lockscreen-conn-states {
width: 100%;
display: inline-block;
font-weight: 300;
font-size: 1.4rem;
padding-bottom: 1.4rem;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
#lockscreen-conn-states span:empty {
display: none;
}
#lockscreen-conn-states span:first-child {
display: inline-block;
margin-inline-end: 0.8rem;
}
#lockscreen-conn-states span:last-child {
display: block;
}
/* For some reason display: inline-block disregards hidden attribute */
#lockscreen-conn-states span[hidden],
#lockscreen-conn-states[hidden] {
display: none;
}
#lockscreen-clock-time {
line-height: 0.9;
margin: -1.4rem 0 0;
margin-inline-start: -0.4rem;
font-weight: 200;
font-size: 8.5rem;
}
#lockscreen-date {
font-weight: 300;
font-size: 1.4rem;
}
#lockscreen-clock-time, #lockscreen-date {
color: #fff;
}
#lockscreen-masked-background {
position: absolute;
top: 0;
overflow: hidden;
/* Must match the CSS background rule of #screen in system.css */
width: 100%;
height: 100%;
background-repeat: no-repeat;
-moz-user-select: none;
opacity: 1;
z-index: 1;
}
#lockscreen-masked-background {
background-size: 100% 100%;
transition: background-image var(--transition-duration) ease,
background-color var(--transition-duration) ease;
}
#lockscreen-masked-background.blank {
background-image: linear-gradient(to bottom, rgba(0,0,0,0.3), rgba(0,0,0,0));
background-size: 100% 22.6rem;
}
#lockscreen-area {
position: absolute;
height: 10rem;
left: 0;
right: 0;
bottom: 0;
z-index: 4;
}
.lockscreen-icon-area {
height: 10rem;
position: absolute;
border-style: none;
transition: opacity var(--transition-duration) ease;
}
.lockscreen-icon {
margin-top: 2rem;
width: 6rem;
height: 6rem;
pointer-events: none;
}
#lockscreen-area-slide {
text-align: center;
width: calc(100%);
}
.touched .lockscreen-icon {
transition: none;
}
.lockscreen-icon-right {
right: calc(50% - 14rem);
}
.lockscreen-icon-left {
left: calc(50% - 14rem);
}
@media (min-width:768px) {
.lockscreen-icon-right {
right: calc(50% - 20.5rem);
}
.lockscreen-icon-left {
left: calc(50% - 20.5rem);
}
#lockscreen-header {
padding-left: 6rem;
font-weight: 300;
}
#lockscreen-date {
padding-top: 0.5rem;
font-size: 2.4rem;
}
}
button::-moz-focus-inner {
border: 0;
}
:-moz-any(.touched, #screen:not(.locked), #screen.attention, #lockscreen:not([data-panel="main"]))
:-moz-any(#lockscreen-left-arrow, #lockscreen-right-arrow) {
display: none;
animation: none;
}
#lockscreen-area-pickup > div {
background-image: image-set(url("./images/lock_screen/Ico_lsc_pickupwhite_40x40.png") 1x, url("images/lock_screen/Ico_lsc_pickupwhite_40x40@1.5x.png") 1.5x, url("images/lock_screen/Ico_lsc_pickupwhite_40x40@2x.png") 2x, url("images/lock_screen/Ico_lsc_pickupwhite_40x40@2.25x.png") 2.25x);
background-position: 0.5rem center;
background-repeat: no-repeat;
background-size: 4rem;
}
.lockscreen-icon-left, .lockscreen-icon-right {
z-index: 16;
pointer-events: auto;
}
/* Compensation for the effects after enabling the pointer-event attribute. */
.lockscreen-icon-left:active, .lockscreen-icon-right:active {
background: none;
}
#lockscreen-area-hangup > div {
background-image: image-set(url("./images/lock_screen/Ico_lsc_hangupwhite_40x40.png") 1x, url("images/lock_screen/Ico_lsc_hangupwhite_40x40@1.5x.png") 1.5x, url("images/lock_screen/Ico_lsc_hangupwhite_40x40@2x.png") 2x, url("images/lock_screen/Ico_lsc_hangupwhite_40x40@2.25x.png") 2.25x);
background-position: 1.4rem center;
background-repeat: no-repeat;
background-size: 4rem;
}
#lockscreen-icon-container {
position: absolute;
bottom: 0;
width: 100%;
height: 10rem;
pointer-events: none;
z-index: 5;
background-color: rgba(255, 255, 255, .85);
}
.touched #lockscreen-icon-container {
transition: none;
}
.touched .lockscreen-icon-area {
transition: none;
}
#lockscreen-canvas-wrapper {
position: absolute;
bottom: 0.75rem;
z-index: 8;
width: 100%;
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,145 @@
/* Handling the status bar mode */
@media (max-height: 4.5em) {
html {
font-size: 10px;
}
body {
margin: 0;
}
.total-duration {
display: none;
padding-inline-start: 0.5rem;
}
.handled-call,
#group-call {
background-color: #00adad;
background-repeat: repeat-x;
background-size: auto 4rem;
color: white;
font-size: 1.7rem;
padding-inline-start: 1rem;
padding-inline-end: 2rem;
height: 40px;
}
.handled-call.ended {
background-color: rgba(107, 0, 0, 0.9);
background-image: none;
}
.handled-call.ended .duration > span {
flex: 1;
font-weight: 500;
overflow: hidden;
white-space: nowrap;
}
.handled-call.ended .total-duration {
display: inline;
}
.handled-call.held,
#group-call.held {
background-color: #333;
background-image: none;
}
#main-container,
#incoming-container,
#views,
#lockscreen-header,
#group-call-details,
.additionalContactInfo {
display: none;
}
#calls .handled-call,
#calls #group-call:not([hidden]) {
display: flex;
align-items: center;
}
.numberWrapper {
flex: 1;
display: flex;
align-items: center;
}
.duration {
display: flex;
align-items: flex-end;
}
.number {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
font-style: italic;
}
html[dir="ltr"] .number { padding-right: 0.5rem; }
html[dir="rtl"] .number { padding-left: 0.5rem; }
.direction-status-bar:before {
content: "";
display: block;
width: 3rem;
height: 3rem;
background-repeat: no-repeat;
background-size: 3rem;
margin-inline-end: 0.5rem;
flex-shrink: 0;
}
.incoming .direction-status-bar:before {
background-image: image-set(url("images/status_bar/actionicon_activecall_incomingcall_active.png") 1x, url("images/status_bar/actionicon_activecall_incomingcall_active@1.5x.png") 1.5x, url("images/status_bar/actionicon_activecall_incomingcall_active@2x.png") 2x, url("images/status_bar/actionicon_activecall_incomingcall_active@2.25x.png") 2.25x);
}
.outgoing .direction-status-bar:before {
background-image: image-set(url("images/status_bar/actionicon_activecall_outgoingcall_active.png") 1x, url("images/status_bar/actionicon_activecall_outgoingcall_active@1.5x.png") 1.5x, url("images/status_bar/actionicon_activecall_outgoingcall_active@2x.png") 2x, url("images/status_bar/actionicon_activecall_outgoingcall_active@2.25x.png") 2.25x);
}
.held .direction-status-bar:before {
background-image: image-set(url("images/status_bar/actionicon_activecall_paused_active.png") 1x, url("images/status_bar/actionicon_activecall_paused_active@1.5x.png") 1.5x, url("images/status_bar/actionicon_activecall_paused_active@2x.png") 2x, url("images/status_bar/actionicon_activecall_paused_active@2.25x.png") 2.25x);
}
.ended .direction-status-bar:before {
background-image: image-set(url("images/shared/actionicon_activecall_hangup_small.png") 1x, url("images/shared/actionicon_activecall_hangup_small@1.5x.png") 1.5x, url("images/shared/actionicon_activecall_hangup_small@2x.png") 2x, url("images/shared/actionicon_activecall_hangup_small@2.25x.png") 2.25x);
}
.isTimer {
display: flex;
align-items: center;
font-feature-settings: "tnum";
}
.muted .isTimer:before {
content: "";
display: block;
width: 3rem;
height: 3rem;
background-repeat: no-repeat;
background-size: contain;
margin-right: 0.5rem;
background-image: image-set(url("images/status_bar/actionicon_activecall_mute_small_active.png") 1x, url("images/status_bar/actionicon_activecall_mute_small_active@1.5x.png") 1.5x, url("images/status_bar/actionicon_activecall_mute_small_active@2x.png") 2x, url("images/status_bar/actionicon_activecall_mute_small_active@2.25x.png") 2.25x);
}
/* Don't display held calls unless there is only one call */
body:not(.single-line) #calls .handled-call.held {
display: none;
}
#calls > section .switch-calls {
display: none;
}
#bluetooth-menu {
display: none;
}
.sim {
display: none;
}
}