| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163 |
- :host {
- display: flex;
- width: 100vw;
- height: 100vh;
- flex-direction: column;
- overflow: hidden;
- user-select: none;
- -webkit-user-drag: none;
- -webkit-font-smoothing: antialiased;
- will-change: transform;
- cursor: default;
- animation: 0.5s ease-out fadeIn;
- transition: 0.25s background;
- }
- $tabs-height: 38px;
- $tab-border-radius: 4px;
- $side-tab-width: 200px;
- .wrap {
- display: flex;
- width: 100vw;
- height: 100vh;
- flex-direction: row;
- }
- .content {
- width: 100vw;
- flex: 1 1 0;
- display: flex;
- flex-direction: column-reverse;
- &.tabs-on-top {
- flex-direction: column;
- }
- &.tabs-on-side {
- flex-direction: row-reverse;
- &.tabs-on-top {
- flex-direction: row;
- }
- }
- }
- .content.tabs-on-side > .tab-bar {
- height: 100%;
- width: $side-tab-width;
- overflow-y: auto;
- overflow-x: hidden;
- flex-direction: column;
- background: rgba(0, 0, 0, 0.25);
- .tabs {
- width: $side-tab-width;
- flex: none;
- flex-direction: column;
- tab-header {
- flex: 0 0 $tabs-height;
- }
- }
- .drag-space {
- flex: auto;
- }
- &>.inset {
- opacity: 0;
- }
- }
- .tab-bar {
- flex: none;
- height: $tabs-height;
- display: flex;
- width: 100%;
- .btn-tab-bar {
- line-height: $tabs-height + 2px;
- height: $tabs-height;
- cursor: pointer;
- display: flex;
- padding: 0 15px;
- flex: 0 0 auto;
- border-bottom: 2px solid transparent;
- transition: 0.25s all;
- font-size: 12px;
- text-transform: uppercase;
- font-weight: bold;
- color: #aaa;
- border: none;
- border-radius: 0;
- align-items: center;
- &.dropdown-toggle::after {
- display: none;
- }
- }
- &>.tabs {
- flex: 0 1 auto;
- display: flex;
- min-width: 0;
- }
- &>.drag-space {
- min-width: 1px;
- flex: 1 0 1%;
- margin-top: 2px; // for window resizing
- -webkit-app-region: drag;
- &.persistent {
- min-width: 72px; // 2 x 36 px height, ie 2 squares
- }
- }
- & > .inset {
- width: 85px;
- height: $tabs-height;
- flex: none;
- -webkit-app-region: drag;
- }
- window-controls {
- padding-left: 10px;
- }
- }
- .tabs-content {
- flex: auto;
- display: flex;
- }
- hotkey-hint {
- position: absolute;
- bottom: 0;
- right: 0;
- max-width: 300px;
- }
- ::ng-deep .btn-tab-bar svg,
- ::ng-deep .btn-tab-bar + .dropdown-menu svg {
- width: 16px;
- height: 16px;
- fill: white;
- fill-opacity: 0.75;
- }
- .icon-wrapper {
- display: flex;
- width: 16px;
- height: 17px;
- }
- ::ng-deep .btn-update svg {
- fill: cyan;
- }
|