This is an automated email from the ASF dual-hosted git repository.
carlosrovira pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git
The following commit(s) were added to refs/heads/develop by this push:
new d316e18 styles to make DropDownList looks good
d316e18 is described below
commit d316e187d1a758ea2ad99148fcc4bc4d06fa230e
Author: Carlos Rovira <[email protected]>
AuthorDate: Tue Aug 28 00:59:32 2018 +0200
styles to make DropDownList looks good
---
.../src/main/royale/models/MainNavigationModel.as | 2 +-
.../projects/Jewel/src/main/resources/defaults.css | 22 ++++-
.../royale/org/apache/royale/jewel/DropDownList.as | 14 +--
.../Jewel/src/main/sass/components/_combobox.sass | 3 +-
.../src/main/sass/components/_dropdownlist.sass | 25 ++++-
.../Jewel/src/main/sass/components/_textinput.sass | 2 +-
.../JewelTheme/src/main/resources/defaults.css | 45 ++-------
.../sass/components-primary/_dropdownlist.sass | 106 ++++++++++++---------
8 files changed, 119 insertions(+), 100 deletions(-)
diff --git
a/examples/royale/JewelExample/src/main/royale/models/MainNavigationModel.as
b/examples/royale/JewelExample/src/main/royale/models/MainNavigationModel.as
index 39097a3..6365e15 100644
--- a/examples/royale/JewelExample/src/main/royale/models/MainNavigationModel.as
+++ b/examples/royale/JewelExample/src/main/royale/models/MainNavigationModel.as
@@ -29,7 +29,7 @@ package models
new NavigationLinkVO("Button", "button_panel",
MaterialIconType.CROP_7_5),
new NavigationLinkVO("NumericStepper", "numericstepper_panel",
MaterialIconType.UNFOLD_MORE),
new NavigationLinkVO("Date Components", "datecomponents_panel",
MaterialIconType.DATE_RANGE),
- new NavigationLinkVO("DropDownList", "dropdownlist_panel",
MaterialIconType.CREDIT_CARD),
+ new NavigationLinkVO("DropDownList/ComboBox",
"dropdownlist_panel", MaterialIconType.CREDIT_CARD),
new NavigationLinkVO("CheckBox", "checkbox_panel",
MaterialIconType.CHECK_BOX),
new NavigationLinkVO("Icon", "miscelanea_panel",
MaterialIconType.FACE),
new NavigationLinkVO("Label", "label_panel",
MaterialIconType.LABEL),
diff --git a/frameworks/projects/Jewel/src/main/resources/defaults.css
b/frameworks/projects/Jewel/src/main/resources/defaults.css
index 393a2b3..d88aed4 100644
--- a/frameworks/projects/Jewel/src/main/resources/defaults.css
+++ b/frameworks/projects/Jewel/src/main/resources/defaults.css
@@ -256,6 +256,9 @@ j|ControlBar {
.jewel.combobox .jewel.textinput {
width: 190px;
}
+.jewel.combobox .jewel.button {
+ width: 2.8em;
+}
.jewel.combobox .jewel.button::before {
margin: 0;
padding: 0;
@@ -516,6 +519,20 @@ j|DateField {
touch-action: pan-y;
}
+.jewel.dropdownlist {
+ -webkit-appearance: none;
+ -moz-appearance: none;
+ -o-appearance: none;
+ -ms-appearance: none;
+ appearance: none;
+ margin: 0;
+ padding: 0.68em 1.12em;
+ cursor: pointer;
+ display: inline-flex;
+ line-height: normal !important;
+ outline: none;
+}
+
j|DropDownList {
IBeadView:
ClassReference("org.apache.royale.jewel.beads.views.DropDownListView");
IBeadModel:
ClassReference("org.apache.royale.jewel.beads.models.ArrayListSelectionModel");
@@ -530,11 +547,6 @@ j|DropDownList {
IBeadController:
ClassReference("org.apache.royale.jewel.beads.controllers.DropDownListController");
IPopUp:
ClassReference("org.apache.royale.jewel.supportClasses.dropdownlist.DropDownListList");
}
-
- j|DropDownListList {
- IBeadModel:
ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
- IItemRendererClassFactory:
ClassReference("org.apache.royale.core.ItemRendererClassFactory");
- }
}
.fonticon.size-18 {
font-size: 18px;
diff --git
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DropDownList.as
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DropDownList.as
index ff7e499..aa9d10e 100644
---
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DropDownList.as
+++
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DropDownList.as
@@ -90,7 +90,7 @@ package org.apache.royale.jewel
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
- * @productversion Royale 0.9
+ * @productversion Royale 0.9.3
*/
public function get prompt():String
{
@@ -290,7 +290,7 @@ package org.apache.royale.jewel
addElementToWrapper(this, 'select');
(element as HTMLSelectElement).size = 1;
- //goog.events.listen(element, 'change', changeHandler);
+ goog.events.listen(element, 'change', changeHandler);
positioner = element;
return element;
@@ -299,10 +299,10 @@ package org.apache.royale.jewel
/**
* @royaleignorecoercion HTMLSelectElement
*/
- // COMPILE::JS
- // protected function changeHandler(event:Event):void
- // {
- // model.selectedIndex = (element as
HTMLSelectElement).selectedIndex;
- // }
+ COMPILE::JS
+ protected function changeHandler(event:Event):void
+ {
+ model.selectedIndex = (element as HTMLSelectElement).selectedIndex;
+ }
}
}
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_combobox.sass
b/frameworks/projects/Jewel/src/main/sass/components/_combobox.sass
index 77cafcd..9fcca79 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_combobox.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_combobox.sass
@@ -20,6 +20,7 @@
// Jewel ComboBox
// ComboBox variables
+$combobox-button-width: 2.8em
$combobox-button-size: 22px
$combobox-input-width: 190px
$combobox-button-xoffset: calc(50% - #{$combobox-button-size/2})
@@ -32,7 +33,7 @@ $combobox-button-yoffset: calc(50% -
#{$combobox-button-size/2})
width: $combobox-input-width
.jewel.button
-
+ width: $combobox-button-width
&::before
margin: 0
padding: 0
diff --git
a/frameworks/projects/Jewel/src/main/sass/components/_dropdownlist.sass
b/frameworks/projects/Jewel/src/main/sass/components/_dropdownlist.sass
index af06064..b757cd9 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_dropdownlist.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_dropdownlist.sass
@@ -20,6 +20,25 @@
// Jewel DropDownList
// DropDownList variables
+$dropdownlist-margin: 0 !default
+$dropdownlist-padding-vertical: .68em !default
+$dropdownlist-padding-horizontal: 1.12em !default
+$dropdownlist-button-size: 22px
+$dropdownlist-button-xoffset: calc(50% - #{$combobox-button-size/2})
+$dropdownlist-button-yoffset: calc(50% - #{$combobox-button-size/2})
+
+.jewel.dropdownlist
+ +appear(none)
+
+ margin: $dropdownlist-margin
+ padding: $dropdownlist-padding-vertical $dropdownlist-padding-horizontal
+
+ cursor: pointer
+ display: inline-flex
+
+ line-height: normal !important
+ outline: none
+
j|DropDownList
IBeadView:
ClassReference("org.apache.royale.jewel.beads.views.DropDownListView")
IBeadModel:
ClassReference("org.apache.royale.jewel.beads.models.ArrayListSelectionModel")
@@ -40,10 +59,10 @@ j|DropDownList
// font-size: 11px
// font-family: Arial
- j|DropDownListList
- IBeadModel:
ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel")
+ // j|DropDownListList
+ // IBeadModel:
ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel")
//--- IDataProviderItemRendererMapper:
ClassReference("org.apache.royale.html.beads.TextItemRendererFactoryForArrayData")
- IItemRendererClassFactory:
ClassReference("org.apache.royale.core.ItemRendererClassFactory")
+ // IItemRendererClassFactory:
ClassReference("org.apache.royale.core.ItemRendererClassFactory")
//--- IItemRenderer:
ClassReference("org.apache.royale.core.supportClasses.StringItemRenderer")
//--- iBackgroundBead:
ClassReference("org.apache.royale.html.beads.SolidBackgroundBead")
//--- iBorderBead:
ClassReference('org.apache.royale.html.beads.SingleLineBorderBead')
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_textinput.sass
b/frameworks/projects/Jewel/src/main/sass/components/_textinput.sass
index e7e35a4..188f3cd 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_textinput.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_textinput.sass
@@ -32,7 +32,7 @@ $textinput-padding-horizontal: 1.12em !default
input
+appear(none)
margin: $textinput-margin
- padding: $textinput-padding-vertical
$textinput-padding-horizontal
+ padding: $textinput-padding-vertical
$textinput-padding-horizontal
max-width: 100%
diff --git a/frameworks/themes/JewelTheme/src/main/resources/defaults.css
b/frameworks/themes/JewelTheme/src/main/resources/defaults.css
index 2009f66..a7521f6 100644
--- a/frameworks/themes/JewelTheme/src/main/resources/defaults.css
+++ b/frameworks/themes/JewelTheme/src/main/resources/defaults.css
@@ -370,45 +370,18 @@ j|Card {
}
.jewel.dropdownlist {
- cursor: pointer;
- display: inline-block;
- margin: 0;
- padding: 10px 16px;
- min-width: 74px;
- min-height: 34px;
- background: linear-gradient(#e6e6e6, #cccccc);
+ width: 200px;
+ height: 38px;
+ background-color: linear-gradient(white, #f3f3f3);
+ background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 12 8'
version='1.1' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='none'
stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg
transform='translate(0.000000, -1.000000)' fill='%233CADF1'
fill-rule='nonzero'%3E%3Cg transform='translate(-2.000000,
0.000000)'%3E%3Cpolygon transform='translate(8.000000, 4.705000) scale(1, -1)
translate(-8.000000, -4.705000) ' points='3.41 8.41 8 3.83 12.59 8.41 14 7 8 1
2 7'%3E%3C/polygon%3 [...]
+ background-size: 8%;
+ background-position: 170px center;
+ background-repeat: no-repeat;
border: 1px solid #b3b3b3;
- box-shadow: inset 0 1px 0 white;
- border-radius: 3px;
- font-family: "Lato", sans-serif;
- font-size: 1em;
- font-weight: bold;
- color: #808080;
- text-transform: uppercase;
- text-decoration: none;
-}
-.jewel.dropdownlist:hover, .jewel.dropdownlist:hover:focus {
- background: linear-gradient(#d9d9d9, silver);
- border: 1px solid #a6a6a6;
-}
-.jewel.dropdownlist:active, .jewel.dropdownlist:active:focus {
- background: linear-gradient(silver, #a6a6a6);
- border: 1px solid #8d8d8d;
- box-shadow: inset 0px 1px 3px 0px rgba(50, 50, 50, 0.5);
+ border-radius: 0.25rem;
}
.jewel.dropdownlist:focus {
- outline: none;
- border: 1px solid #b3b3b3;
- box-shadow: inset 0px 0px 0px 1px rgba(255, 255, 255, 0.5), inset 0 1px 0
rgba(255, 255, 255, 0.6);
-}
-.jewel.dropdownlist[disabled] {
- cursor: unset;
- background: #f3f3f3;
- border: 1px solid #d9d9d9;
- box-shadow: none;
- color: silver;
- font-weight: 400;
- text-shadow: unset;
+ border: 1px solid #0f88d1;
}
.fonticon.dark {
diff --git
a/frameworks/themes/JewelTheme/src/main/sass/components-primary/_dropdownlist.sass
b/frameworks/themes/JewelTheme/src/main/sass/components-primary/_dropdownlist.sass
index 82a80a7..fc8ac9c 100644
---
a/frameworks/themes/JewelTheme/src/main/sass/components-primary/_dropdownlist.sass
+++
b/frameworks/themes/JewelTheme/src/main/sass/components-primary/_dropdownlist.sass
@@ -20,60 +20,74 @@
// Jewel DropDownList
// DropDownList variables
-$textbutton-margin: 0 !default
-$textbutton-padding: 10px 16px !default
-$textbutton-min-height: 34px !default
-$textbutton-min-width: 74px !default
+$dropdownlist-border-radius: $border-radius
-$textbutton-border-radius: 3px
+// =dropdownlist-theme($dropdownlist-color, $text-color)
+
+// // +jewel-bg-border("normal", $dropdownlist-color,
$dropdownlist-border-radius)
-=textbutton-theme($textbutton-color, $text-color)
- cursor: pointer
- display: inline-block
+// // @if $transitions-enable
+// // transition:
+// // duration: $transition-duration
+// // timing-function: $transition-timing
- margin: $textbutton-margin //1rem
- padding: $textbutton-padding //.938em 1.875em
+// font:
+// family: $font-stack
+// size: $font-size
+// // weight: bold
+// color: $text-color
+// text:
+// // transform: uppercase
+// weight: $font-weight-normal
+// decoration: none
+// @if not $flat and $text-color == $font-theme-color
+// text:
+// shadow: 0 -1px 0 rgba(darken($dropdownlist-color, 30%), .7) //0
.063em
- min-width: $textbutton-min-width
- min-height: $textbutton-min-height
+// // &:hover, &:hover:focus
+// // +jewel-bg-border("hover", $dropdownlist-color)
- +jewel-bg-border("normal", $textbutton-color, $textbutton-border-radius)
+// // &:active, &:active:focus
+// // +jewel-bg-border("active", $dropdownlist-color)
- @if $transitions-enable
- transition:
- duration: $transition-duration
- timing-function: $transition-timing
+// &:focus
+// outline: none
+// // +jewel-bg-border("focus", $dropdownlist-color)
+
+// &[disabled]
+// cursor: unset
+// // +jewel-bg-border("disabled", $dropdownlist-color)
+// color: $disabled-font-color
+// // font:
+// // weight: $font-weight-normal
+// // text:
+// // shadow: unset
- font:
- family: $font-stack
- size: $font-size
- weight: bold
- color: $text-color
- text:
- transform: uppercase
- decoration: none
- @if not $flat and $text-color == $font-theme-color
- text:
- shadow: 0 -1px 0 rgba(darken($textbutton-color, 30%), .7) //0
.063em
+.jewel.dropdownlist
+ // +dropdownlist-theme($default-color, $default-font-color)
+ width: 200px
+ height: 38px
+ @if $flat
+ background: $default-color
+ border: 0px solid
+ @else
+ background-color: linear-gradient(lighten($default-color, 15%),
lighten($default-color, 10%))
+ background-image: encodeSVG("<svg viewBox='0 0 12 8' version='1.1'
xmlns='http://www.w3.org/2000/svg'><g stroke='none' stroke-width='1'
fill='none' fill-rule='evenodd'><g transform='translate(0.000000, -1.000000)'
fill='#{$primary-color}' fill-rule='nonzero'><g transform='translate(-2.000000,
0.000000)'><polygon transform='translate(8.000000, 4.705000) scale(1, -1)
translate(-8.000000, -4.705000) ' points='3.41 8.41 8 3.83 12.59 8.41 14 7 8 1
2 7'></polygon></g></g></g></svg>")
+ background-size: 8%
+ background-position: 170px center
+ background-repeat: no-repeat
+ border: 1px solid darken($default-color, 15%)
+ border-radius: $dropdownlist-border-radius
- &:hover, &:hover:focus
- +jewel-bg-border("hover", $textbutton-color)
+ // &::before
+
+ // &::after
+ // background-size: 66%
+ // background: encodeSVG("<svg viewBox='0 0 12 8' version='1.1'
xmlns='http://www.w3.org/2000/svg'><g stroke='none' stroke-width='1'
fill='none' fill-rule='evenodd'><g transform='translate(0.000000, -1.000000)'
fill='#{$primary-color}' fill-rule='nonzero'><g transform='translate(-2.000000,
0.000000)'><polygon transform='translate(8.000000, 4.705000) scale(1, -1)
translate(-8.000000, -4.705000) ' points='3.41 8.41 8 3.83 12.59 8.41 14 7 8 1
2 7'></polygon></g></g></g></svg>") no-r [...]
- &:active, &:active:focus
- +jewel-bg-border("active", $textbutton-color)
&:focus
- outline: none
- +jewel-bg-border("focus", $textbutton-color)
-
- &[disabled]
- cursor: unset
- +jewel-bg-border("disabled", $textbutton-color)
- color: $disabled-font-color
- font:
- weight: $font-weight-normal
- text:
- shadow: unset
-
-.jewel.dropdownlist
- +textbutton-theme($default-color, $default-font-color)
\ No newline at end of file
+ @if $flat
+ background: lighten($primary-color, 25%)
+ @else
+ border: 1px solid darken($primary-color, 15%)
\ No newline at end of file