mirror of
https://github.com/captbaritone/webamp.git
synced 2026-07-26 11:34:14 +00:00
265 lines
5.2 KiB
CSS
265 lines
5.2 KiB
CSS
|
||
html, body {
|
||
width: 100%;
|
||
height: 100%;
|
||
margin: 0;
|
||
padding: 0;
|
||
border: 0;
|
||
overflow: hidden;
|
||
}
|
||
.start-menu {
|
||
position: absolute !important; /* XXX overriding relative; could instead of using :after use border-image */
|
||
left: 2px;
|
||
bottom: 25px;
|
||
width: calc(186px + 21px); /* 186px isn't the proper width measured out, just what I had it before, (for the content, on chrome on windows 10; text wrapping is not cross-platform-consistent) */
|
||
padding-left: 21px; /* 21px = .start-menu-titlebar */
|
||
height: 340px;
|
||
max-height: calc(100vh - 26px); /* based on taskbar height TODO: do this differently, probably in JS, since the taskbar will be resizable (or could be) */
|
||
box-sizing: border-box;
|
||
display: flex;
|
||
flex-direction: row;
|
||
}
|
||
.start-menu-titlebar {
|
||
flex: 0 0 auto;
|
||
width: 21px;
|
||
}
|
||
.start-menu-content {
|
||
overflow: auto;
|
||
padding: 15px;
|
||
}
|
||
.start-menu ul {
|
||
list-style: none;
|
||
margin: 1em 0;
|
||
padding: 0;
|
||
}
|
||
.desktop {
|
||
height: 100%;
|
||
display: flex;
|
||
}
|
||
.folder-view {
|
||
position: relative;
|
||
flex: 1;
|
||
}
|
||
.taskbar {
|
||
position: absolute;
|
||
z-index: 2;
|
||
bottom: 0;
|
||
left: 0;
|
||
right: 0;
|
||
height: 27px; /* not including outline part of border */
|
||
display: flex;
|
||
flex: 1;
|
||
}
|
||
/* .taskbar-button is generally .task or .start-button for now */
|
||
.taskbar button,
|
||
.taskbar-divider,
|
||
.tray {
|
||
margin: 2px;
|
||
}
|
||
.taskbar-divider {
|
||
margin-right: 0px;
|
||
margin-left: 0px;
|
||
/* TODO: maybe make that 2px rule padding on the taskbar instead and avoid reseting this */
|
||
}
|
||
.taskbar button {
|
||
line-height: 14px;
|
||
padding: 2px;
|
||
overflow: hidden; /* TODO: If tons and tons of tasks don't show icons? (smaller than width of an icon?) */
|
||
display: flex;
|
||
flex-direction: row;
|
||
align-items: center;
|
||
/* (justify-content: flex-start;) */
|
||
}
|
||
.taskbar button .title {
|
||
overflow: hidden;
|
||
text-overflow: ellipsis;
|
||
white-space: nowrap;
|
||
}
|
||
.taskbar .start-button {
|
||
flex-shrink: 0;
|
||
padding: 2px 4px;
|
||
}
|
||
.tray {
|
||
display: flex;
|
||
flex-direction: row;
|
||
/* align-items: center; */
|
||
/* align-content: center; */
|
||
/* justify-content: center; */
|
||
line-height: 22px;
|
||
box-sizing: border-box;
|
||
vertical-align: middle;
|
||
}
|
||
.tray-icons {
|
||
display: flex;
|
||
align-items: center;
|
||
margin-left: 2px; /* XXX basically 1px, but 2px because of the way the border is done */
|
||
}
|
||
.tray-icon {
|
||
margin-left: 1px;
|
||
}
|
||
.taskbar-time {
|
||
width: 60px;
|
||
text-align: center;
|
||
}
|
||
/* TODO: offset task button contents down a px when depressed... actually most buttons */
|
||
.tasks {
|
||
display: flex;
|
||
flex: 1;
|
||
height: 100%;
|
||
}
|
||
.task {
|
||
max-width: 200px;
|
||
width: 50%;
|
||
text-align: left;
|
||
}
|
||
.task img {
|
||
padding-right: 4px;
|
||
flex: 0 0 auto;
|
||
}
|
||
.desktop,
|
||
.folder-view,
|
||
.taskbar,
|
||
.start-button,
|
||
.tasks,
|
||
.task,
|
||
.window,
|
||
.window-titlebar,
|
||
.window-title {
|
||
cursor: default;
|
||
user-select: none;
|
||
-o-user-select: none;
|
||
-ms-user-select: none;
|
||
-moz-user-select: none;
|
||
-webkit-user-select: none;
|
||
}
|
||
.window-titlebar .icon {
|
||
vertical-align: bottom;
|
||
}
|
||
.window-content {
|
||
margin: 0;
|
||
padding: 0;
|
||
}
|
||
.desktop-icon {
|
||
display: inline-block;
|
||
vertical-align: bottom; /* with inline-block, always */
|
||
margin: 5px;
|
||
text-align: center;
|
||
}
|
||
.desktop-icon .icon-wrapper {
|
||
display: inline-block;
|
||
vertical-align: bottom; /* with inline-block, always */
|
||
position: relative;
|
||
}
|
||
.desktop-icon .title {
|
||
line-height: 13px;
|
||
font-size: 9px;
|
||
overflow: hidden;
|
||
text-overflow: ellipsis; /* TODO: make this work with multiline text! This is apparently a limitation of this CSS property and ther are various crazy CSS hacks and JS libs to solve this. */
|
||
word-wrap: break-word; /* All browsers since IE 5.5+ */
|
||
overflow-wrap: break-word; /* Renamed property in CSS3 draft spec */
|
||
}
|
||
.desktop-icon:not(.focused) .title {
|
||
/* max-height: 2em would only work with line-height: 1 */
|
||
max-height: calc(13px * 2);
|
||
}
|
||
.desktop-icon.focused {
|
||
z-index: 1;
|
||
}
|
||
/* Fix dragging things (like windows) over iframes */
|
||
.drag iframe {
|
||
pointer-events: none;
|
||
}
|
||
|
||
.marquee {
|
||
pointer-events: none;
|
||
}
|
||
|
||
.menus {
|
||
display: flex;
|
||
flex: 0 0 auto;
|
||
}
|
||
.menu-container {
|
||
position: relative;
|
||
}
|
||
.menu-popup {
|
||
position: absolute;
|
||
top: 100%;
|
||
left: 0;
|
||
z-index: 400000; /* so sub-menu-popups can be visible over the window */
|
||
box-sizing: border-box;
|
||
}
|
||
.menu-popup-table {
|
||
border-collapse: collapse;
|
||
}
|
||
.menu-item {
|
||
white-space: nowrap;
|
||
}
|
||
.menu-hr {
|
||
display: block !important;
|
||
height: 0;
|
||
width: auto;
|
||
}
|
||
.menu-hotkey {
|
||
display: inline !important;
|
||
}
|
||
.menu-item-checkbox-area,
|
||
.menu-item-submenu-area {
|
||
min-width: 16px;
|
||
}
|
||
.menu-item-checkbox-area,
|
||
.menu-item-submenu-area {
|
||
text-align: center;
|
||
}
|
||
|
||
.window-titlebar {
|
||
display: flex;
|
||
flex-direction: row;
|
||
align-items: center;
|
||
}
|
||
.window-title-area {
|
||
position: relative;
|
||
flex: 1;
|
||
height: 16px; /* 100% doesn't work */
|
||
}
|
||
.window-title {
|
||
position: absolute;
|
||
left: 0;
|
||
top: 0;
|
||
right: 0;
|
||
bottom: 0;
|
||
display: inline-block !important;
|
||
margin: 0;
|
||
padding: 0;
|
||
overflow: hidden;
|
||
text-overflow: ellipsis;
|
||
white-space: nowrap;
|
||
}
|
||
.window-close-button {
|
||
display: block !important;
|
||
float: right;
|
||
width: 13px;
|
||
height: 11px;
|
||
}
|
||
.window-close-button:before {
|
||
content: '×';
|
||
position: relative;
|
||
}
|
||
|
||
.window-content .button-group {
|
||
width: 85px;
|
||
}
|
||
.window-content .button-group > button {
|
||
width: 95%;
|
||
padding: 3px 5px;
|
||
}
|
||
|
||
::before, ::after {
|
||
pointer-events: none;
|
||
}
|
||
|
||
.cursor-bully * {
|
||
cursor: inherit !important;
|
||
}
|
||
.loading-program * {
|
||
cursor: progress;
|
||
}
|