textual-paint/paint.css
Isaiah Odhner eae2ffe44a Remove max size on window content
It's a bad idea, unless applied on a case-by-case basis.
It makes things wrap badly when the viewport is narrow, making things
much less readable, even though the aim is to make it more readable
by ensuring visibility. And it makes message boxes feel less OS-like.
It's better to have to drag a window back and forth to read it, than
to have it wrap at every character.
2023-04-19 16:06:49 -04:00

245 lines
4.6 KiB
CSS

Screen {
layers: window menu-popup;
}
#paint {
layout: grid;
grid-size: 1;
grid-columns: 1fr;
grid-rows: 1fr 0;
}
#main-horizontal-split {
layout: grid;
grid-size: 2;
grid-columns: 0 1fr;
grid-rows: 1fr;
margin: 0 0;
}
.show_tools_box #main-horizontal-split {
grid-columns: 15 1fr;
}
.show_colors_box #paint {
grid-rows: 1fr 6;
}
#editing-area {
background: rgb(128, 128, 128);
}
.-dark-mode #editing-area {
background: $surface-lighten-2;
}
#canvas {
width: auto;
height: auto;
margin: 1 2;
}
#tools_box {
layout: grid;
grid-size: 2;
grid-gutter: 0 1;
grid-columns: 6;
grid-rows: 3;
padding: 0 1;
height: 100%;
/* can't have a border without taking up a whole cell, and it's more important to show as much of the tools as possible */
/* border-bottom: tall $panel-darken-2; */
background: $panel-darken-1;
overflow: hidden;
}
#tools_box Button {
text-style: none !important;
}
#tools_box Button:focus {
/* disable focus highlight */
/* in the future it may be important to prevent focus instead */
text-style: none;
}
#tools_box Button.selected {
background: $panel-lighten-3;
border-bottom: tall $panel-lighten-2;
border-top: tall $panel-darken-2;
}
#colors_box {
layout: grid;
grid-size: 2;
grid-columns: 10 1fr;
border-top: tall $panel-lighten-2;
background: $panel-darken-1;
}
.color_well {
border-top: tall $panel-darken-2;
border-bottom: tall $panel-lighten-3;
}
#selected_colors {
max-height: 5;
overflow: hidden;
}
#selected_color {
width: 8;
height: 4;
margin-left: 1;
}
#available_colors {
layout: grid;
grid-size: 14;
grid-gutter: 0 1;
grid-columns: 4;
grid-rows: 2;
height: auto;
width: auto;
overflow: hidden;
}
.menu {
background: $panel;
/* border: round red; */
}
.menu_popup {
layout: vertical;
dock: top;
layer: menu-popup;
width: auto;
height: auto;
min-width: 30;
overflow-y: auto;
/* calc isn't supported, and this should be determined by the y position anyways, which is set in python */
/* max-height: calc(100vh - 3); */
max-height: 90vh;
/* width: auto doesn't account for the vertical scrollbar... */
/* which means it would make a horizontal scrollbar or cut off a character on the right, */
/* but I'm accounting for this with padding-right inside the menu item */
overflow-x: hidden;
}
/* MenuBar { */
.menu_bar {
layout: horizontal;
width: 100%;
height: auto;
dock: top;
/* border-bottom: hkey $panel-darken-2; */
overflow: hidden;
}
/* MenuItem { */
.menu_item {
width: auto;
height: auto;
}
/* Separator { */
.separator {
width: 100%;
height: 1;
}
.menu Button {
border: none;
height: 3;
}
.menu_bar Button {
width: auto;
min-width: 0;
}
.menu_popup Button {
min-width: 1fr;
text-align: left;
/* This compensates for the scrollbar, so text isn't cut off (though it also applies when there's no scrollbar) */
padding-right: 1;
}
.window {
dock: top;
layer: window;
background: $surface;
border: outer $panel-darken-2;
layout: vertical;
align: center middle;
width: auto;
height: auto;
}
.window_title_bar {
layout: horizontal;
width: 100%;
height: auto;
background: $accent;
color: auto;
text-style: bold;
}
.window_title_bar Button {
max-width: 6;
height: 3;
}
.window_title {
width: 1fr;
height: 100%;
content-align: left middle;
padding-left: 1;
}
.window_content {
layout: vertical;
overflow: auto;
width: auto;
height: auto;
background: $background;
}
.dialog .window_content {
background: $surface;
}
#save_as_dialog .window_content,
#open_dialog .window_content {
padding: 2 4;
width: 80;
height: 30;
}
#save_as_dialog .window_content Input,
#open_dialog .window_content Input {
width: 100%;
margin-bottom: 1;
}
#save_as_dialog .window_content DirectoryTree,
#open_dialog .window_content DirectoryTree {
height: 15;
margin-bottom: 1;
}
#save_as_dialog .window_content Button,
#open_dialog .window_content Button {
width: auto;
height: auto;
}
#message_box .window_content {
width: 50;
height: auto;
}
#message_box .window_content Button {
width: auto;
min-width: 10;
height: auto;
margin-right: 1;
margin-top: 1;
}
#message_box .warning_icon {
width: auto;
height: auto;
padding-left: 2;
}
#message_box .main_content {
padding: 1 2;
width: 1fr;
height: auto;
}
#message_box .window_content Horizontal {
height: auto;
}