Implement a properties sidebar. In order to prevent the UI from freezing, we use futures to load and cancel loading file information. We also make use of `gdk_pixbuf` and `svg_metadata` in order to get the file's metadata before the file fully loads, meaning there's little to no delay between changing files and seeing the metadata for large images. The properties widget uses expressions and properties to avoid glue code for setting each label, allowing us to have a clean separation between UI and data.
49 lines
782 B
CSS
49 lines
782 B
CSS
button.circular {
|
|
padding: 9px;
|
|
min-width: 24px;
|
|
min-height: 24px;
|
|
}
|
|
|
|
.image-view {
|
|
background-color: @theme_base_color;
|
|
}
|
|
|
|
flap.fullscreen-widget dimming, shadow, border, outline {
|
|
background: none;
|
|
}
|
|
|
|
.checkerboard {
|
|
background-color: #7f7f7f;
|
|
background-image: linear-gradient(
|
|
45deg,
|
|
#cccccc 25%,
|
|
transparent 25%
|
|
),
|
|
linear-gradient(
|
|
-45deg,
|
|
#cccccc 25%,
|
|
transparent 25%
|
|
),
|
|
linear-gradient(
|
|
45deg,
|
|
transparent 75%,
|
|
#cccccc 75%
|
|
),
|
|
linear-gradient(
|
|
-45deg,
|
|
transparent 75%,
|
|
#cccccc 75%
|
|
);
|
|
background-size: 20px 20px;
|
|
background-position: 0 0, 0 10px, 10px -10px, -10px 0px;
|
|
}
|
|
|
|
row.property label.title {
|
|
opacity: 0.55;
|
|
font-size: smaller;
|
|
}
|
|
|
|
row.property label.subtitle {
|
|
opacity: 1.0;
|
|
font-size: 11pt;
|
|
}
|