aboutsummaryrefslogtreecommitdiff
path: root/atom/packages/aesthetic-ui/styles/progress.less
diff options
context:
space:
mode:
Diffstat (limited to 'atom/packages/aesthetic-ui/styles/progress.less')
-rw-r--r--atom/packages/aesthetic-ui/styles/progress.less72
1 files changed, 72 insertions, 0 deletions
diff --git a/atom/packages/aesthetic-ui/styles/progress.less b/atom/packages/aesthetic-ui/styles/progress.less
new file mode 100644
index 0000000..5d78670
--- /dev/null
+++ b/atom/packages/aesthetic-ui/styles/progress.less
@@ -0,0 +1,72 @@
+@import "ui-variables";
+@import "ui-mixins";
+
+.loading-spinner(@size) {
+ width: @size;
+ height: @size;
+ display: block;
+
+ background-image: url(images/octocat-spinner-128.gif);
+ background-repeat: no-repeat;
+ background-size: cover;
+
+ &.inline-block {
+ display: inline-block;
+ }
+}
+
+.loading-spinner-large {
+ .loading-spinner(64px);
+}
+
+.loading-spinner-medium {
+ .loading-spinner(50px);
+}
+
+.loading-spinner-small {
+ .loading-spinner(32px);
+}
+
+.loading-spinner-tiny {
+ .loading-spinner(20px);
+}
+
+// Much learning from:
+// http://css-tricks.com/html5-progress-element/
+
+@progress-height: 16px;
+@progress-shine-gradient: -webkit-linear-gradient(top, rgba(255, 255, 255, .15), rgba(0, 0, 0, .15));
+
+progress {
+ height: @progress-height;
+ -webkit-appearance: none;
+ border-radius: @component-border-radius;
+ background-color: #ccc;
+ background-image:
+ -webkit-linear-gradient(-30deg,
+ transparent 33%, rgba(0, 0, 0, .1) 33%,
+ rgba(0,0, 0, .1) 66%, transparent 66%),
+ @progress-shine-gradient;
+ border-radius: 2px;
+ background-size: 25px @progress-height, 100% 100%, 100% 100%;
+ -webkit-animation: animate-stripes 5s linear 6; // stop animation after 6 runs (30s) to limit CPU usage
+}
+
+progress::-webkit-progress-bar {
+ background-color: transparent;
+}
+
+progress::-webkit-progress-value {
+ border-radius: @component-border-radius;
+ background-image: @progress-shine-gradient;
+ background-color: @background-color-info;
+}
+
+progress[value] {
+ background-image: @progress-shine-gradient;
+ -webkit-animation: none;
+}
+
+@-webkit-keyframes animate-stripes {
+ 100% { background-position: 100px 0px; }
+}