[gtk+] Adwaita: animate check and radios
- From: Lapo Calamandrei <lapo src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] Adwaita: animate check and radios
- Date: Thu, 11 Feb 2016 17:28:07 +0000 (UTC)
commit 460aa64c58b6b12d49b132b7c4df0eadf0070e34
Author: Lapo Calamandrei <calamandrei gmail com>
Date: Thu Feb 11 18:27:25 2016 +0100
Adwaita: animate check and radios
gtk/theme/Adwaita/_common.scss | 31 ++++++++++++++++++++++++++++
gtk/theme/Adwaita/gtk-contained-dark.css | 33 +++++++++++++++++++++++++++++-
gtk/theme/Adwaita/gtk-contained.css | 33 +++++++++++++++++++++++++++++-
3 files changed, 95 insertions(+), 2 deletions(-)
---
diff --git a/gtk/theme/Adwaita/_common.scss b/gtk/theme/Adwaita/_common.scss
index 9892e3f..4a2dc23 100644
--- a/gtk/theme/Adwaita/_common.scss
+++ b/gtk/theme/Adwaita/_common.scss
@@ -2300,6 +2300,7 @@ radio {
-gtk-icon-shadow: none;
color: inherit;
border-color: currentColor;
+ animation: none;
}
}
}
@@ -2320,6 +2321,36 @@ radio {
-gtk-recolor(url("assets/dash-symbolic.symbolic.png"))); }
}
+// let's animate things
+ keyframes check_check {
+ from { -gtk-icon-transform: translate(6px, -3px) rotate(-45deg) scaleY(0.2) rotate(45deg) scaleX(0); }
+ to { -gtk-icon-transform: unset; }
+}
+
+ keyframes check_radio {
+ from { -gtk-icon-transform: scale(0); }
+ to { -gtk-icon-transform: unset; }
+}
+
+ keyframes check_indeterminate {
+ from { -gtk-icon-transform: scale(0, 1); }
+ to { -gtk-icon-transform: unset; }
+}
+
+check:not(:indeterminate):checked { animation: check_check 400ms; }
+
+radio:not(:indeterminate):checked { animation: check_radio 400ms; }
+
+check:indeterminate:checked:active, radio:indeterminate:checked { animation: check_indeterminate 400ms; }
+
+// no animations in menus
+menu menuitem {
+ check:not(:indeterminate):checked,
+ radio:not(:indeterminate):checked,
+ check:indeterminate:checked:active,
+ radio:indeterminate:checked { animation: none; }
+}
+
/************
* GtkScale *
diff --git a/gtk/theme/Adwaita/gtk-contained-dark.css b/gtk/theme/Adwaita/gtk-contained-dark.css
index cfc20df..687a82c 100644
--- a/gtk/theme/Adwaita/gtk-contained-dark.css
+++ b/gtk/theme/Adwaita/gtk-contained-dark.css
@@ -2870,7 +2870,8 @@ radio {
box-shadow: none;
-gtk-icon-shadow: none;
color: inherit;
- border-color: currentColor; }
+ border-color: currentColor;
+ animation: none; }
check {
border-radius: 3px; }
@@ -2886,6 +2887,36 @@ radio {
radio:indeterminate {
-gtk-icon-source: image(-gtk-recolor(url("assets/dash-symbolic.svg")),
-gtk-recolor(url("assets/dash-symbolic.symbolic.png"))); }
+ keyframes check_check {
+ from {
+ -gtk-icon-transform: translate(6px, -3px) rotate(-45deg) scaleY(0.2) rotate(45deg) scaleX(0); }
+ to {
+ -gtk-icon-transform: unset; } }
+ keyframes check_radio {
+ from {
+ -gtk-icon-transform: scale(0); }
+ to {
+ -gtk-icon-transform: unset; } }
+ keyframes check_indeterminate {
+ from {
+ -gtk-icon-transform: scale(0, 1); }
+ to {
+ -gtk-icon-transform: unset; } }
+check:not(:indeterminate):checked {
+ animation: check_check 400ms; }
+
+radio:not(:indeterminate):checked {
+ animation: check_radio 400ms; }
+
+check:indeterminate:checked:active, radio:indeterminate:checked {
+ animation: check_indeterminate 400ms; }
+
+menu menuitem check:not(:indeterminate):checked,
+menu menuitem radio:not(:indeterminate):checked,
+menu menuitem check:indeterminate:checked:active,
+menu menuitem radio:indeterminate:checked {
+ animation: none; }
+
/************
* GtkScale *
************/
diff --git a/gtk/theme/Adwaita/gtk-contained.css b/gtk/theme/Adwaita/gtk-contained.css
index dfd27bf..a190795 100644
--- a/gtk/theme/Adwaita/gtk-contained.css
+++ b/gtk/theme/Adwaita/gtk-contained.css
@@ -3003,7 +3003,8 @@ radio {
box-shadow: none;
-gtk-icon-shadow: none;
color: inherit;
- border-color: currentColor; }
+ border-color: currentColor;
+ animation: none; }
check {
border-radius: 3px; }
@@ -3019,6 +3020,36 @@ radio {
radio:indeterminate {
-gtk-icon-source: image(-gtk-recolor(url("assets/dash-symbolic.svg")),
-gtk-recolor(url("assets/dash-symbolic.symbolic.png"))); }
+ keyframes check_check {
+ from {
+ -gtk-icon-transform: translate(6px, -3px) rotate(-45deg) scaleY(0.2) rotate(45deg) scaleX(0); }
+ to {
+ -gtk-icon-transform: unset; } }
+ keyframes check_radio {
+ from {
+ -gtk-icon-transform: scale(0); }
+ to {
+ -gtk-icon-transform: unset; } }
+ keyframes check_indeterminate {
+ from {
+ -gtk-icon-transform: scale(0, 1); }
+ to {
+ -gtk-icon-transform: unset; } }
+check:not(:indeterminate):checked {
+ animation: check_check 400ms; }
+
+radio:not(:indeterminate):checked {
+ animation: check_radio 400ms; }
+
+check:indeterminate:checked:active, radio:indeterminate:checked {
+ animation: check_indeterminate 400ms; }
+
+menu menuitem check:not(:indeterminate):checked,
+menu menuitem radio:not(:indeterminate):checked,
+menu menuitem check:indeterminate:checked:active,
+menu menuitem radio:indeterminate:checked {
+ animation: none; }
+
/************
* GtkScale *
************/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]