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 7c4962a  NumericStepper responsive layout for phones and tablets
7c4962a is described below

commit 7c4962acf25797ce2481c37564445497b13f0c3c
Author: Carlos Rovira <[email protected]>
AuthorDate: Sun Aug 26 11:58:10 2018 +0200

    NumericStepper responsive layout for phones and tablets
---
 .../src/main/royale/NumericStepperPlayGround.mxml  |  4 ++--
 .../projects/Jewel/src/main/resources/defaults.css | 25 +++++++++++++++++++++
 .../royale/jewel/beads/views/NumericStepperView.as | 20 +++--------------
 .../apache/royale/jewel/beads/views/SpinnerView.as | 21 ++++++-----------
 .../src/main/sass/components/_numericstepper.sass  | 25 ++++++++++++++++++++-
 .../JewelTheme/src/main/resources/defaults.css     | 23 +++++++++++++++----
 .../sass/components-primary/_numericstepper.sass   | 26 +++++++++++++++++-----
 7 files changed, 100 insertions(+), 44 deletions(-)

diff --git 
a/examples/royale/JewelExample/src/main/royale/NumericStepperPlayGround.mxml 
b/examples/royale/JewelExample/src/main/royale/NumericStepperPlayGround.mxml
index c3e18e3..c4ab3ed 100644
--- a/examples/royale/JewelExample/src/main/royale/NumericStepperPlayGround.mxml
+++ b/examples/royale/JewelExample/src/main/royale/NumericStepperPlayGround.mxml
@@ -29,7 +29,7 @@ limitations under the License.
                ]]>
        </fx:Script>
 
-       <j:Card width="600">
+       <j:Card>
                <html:H3 text="Jewel NumericStepper"/>
 
                <j:HGroup gap="3" itemsVerticalAlign="itemsCentered">
@@ -44,7 +44,7 @@ limitations under the License.
 
                <j:HGroup gap="3" itemsVerticalAlign="itemsCentered">
                        <j:NumericStepper minimum="10" maximum="100"/>
-                       <j:Label text="NumericStepper minimum='10' and 
maximum='100'"/>
+                       <j:Label text="NumericStepper minimum='10' and 
maximum='100'" multiline="true" width="300"/>
                </j:HGroup>
 
                <j:HGroup gap="3" itemsVerticalAlign="itemsCentered">
diff --git a/frameworks/projects/Jewel/src/main/resources/defaults.css 
b/frameworks/projects/Jewel/src/main/resources/defaults.css
index 10128eb..8038392 100644
--- a/frameworks/projects/Jewel/src/main/resources/defaults.css
+++ b/frameworks/projects/Jewel/src/main/resources/defaults.css
@@ -2736,6 +2736,17 @@ j|Navigation {
   display: inline-flex;
 }
 
+@media (max-width: 992px) {
+  .jewel.numericstepper {
+    width: 190px;
+    height: 39px;
+  }
+  .jewel.numericstepper .jewel.textinput {
+    z-index: 1;
+    position: absolute;
+    left: 58px;
+  }
+}
 j|NumericStepper {
   IBeadModel: 
ClassReference("org.apache.royale.jewel.beads.models.RangeModel");
   IBeadView: 
ClassReference("org.apache.royale.jewel.beads.views.NumericStepperView");
@@ -2766,6 +2777,20 @@ j|NumericStepper {
   top: calc(50% - 5px);
 }
 
+@media (max-width: 992px) {
+  .jewel.spinner .jewel.button {
+    width: 39px;
+    height: 38px;
+  }
+  .jewel.spinner .jewel.button.up {
+    position: absolute;
+    left: 20px;
+  }
+  .jewel.spinner .jewel.button.down {
+    position: absolute;
+    left: 169px;
+  }
+}
 j|Spinner {
   IBeadModel: 
ClassReference("org.apache.royale.jewel.beads.models.RangeModel");
   IBeadView: ClassReference("org.apache.royale.jewel.beads.views.SpinnerView");
diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/NumericStepperView.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/NumericStepperView.as
index 24960ce..4d1d2e8 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/NumericStepperView.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/NumericStepperView.as
@@ -82,28 +82,19 @@ package org.apache.royale.jewel.beads.views
             
                        // add an input field
                        input = new TextInput();
-            // input.className = "NumericStepperInput";
-            // input.typeNames = "NumericStepperInput";
-                       (value as IParent).addElement(input);
-                       // COMPILE::JS
-                       // {
-               //     input.positioner.style.display = 'inline-block';
-           //     input.positioner.style.width = '100px';
-                       // }
+            (value as IParent).addElement(input);
+                       
                        // add a spinner
                        spinner = new Spinner();
                        spinner.addBead( (value as UIBase).model as IBead);
                        (value as IParent).addElement(spinner);
+                       
                        // delay this until the resize event in JS
                        COMPILE::SWF
                        {
                                spinner.height = input.height;
                                spinner.width = input.height/2;
                        }
-                       // COMPILE::JS
-                       // {
-               //     spinner.positioner.style.display = 'inline-block';
-                       // }
                        
                        // listen for changes to the text input field which 
will reset the
                        // value. ideally, we should either set the input to 
accept only
@@ -160,11 +151,6 @@ package org.apache.royale.jewel.beads.views
                        {
                                strandWidth = (_strand as UIBase).width;
                        }
-                       // COMPILE::JS
-                       // {
-                       //      spinner.height = inputHeight;
-                       //      spinner.width = inputHeight/2;
-                       // }
                        
                        // input.x = 0;
                        // input.y = 0;
diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SpinnerView.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SpinnerView.as
index 5bd0669..ef3167d 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SpinnerView.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SpinnerView.as
@@ -97,10 +97,10 @@ COMPILE::JS {
                                // Button(_decrement).addBead(new 
DownArrowButtonView());
                                // Button(_decrement).addBead(new 
ButtonAutoRepeatController());
 
-                               // Button(_increment).x = 0;
-                               // Button(_increment).y = 0;
-                               // Button(_decrement).x = 0;
-                               // Button(_decrement).y = 
Button(_increment).height;
+                               Button(_increment).x = 0;
+                               Button(_increment).y = 0;
+                               Button(_decrement).x = 0;
+                               Button(_decrement).y = 
Button(_increment).height;
 
                                UIBase(_strand).addChild(_decrement);
                                UIBase(_strand).addChild(_increment);
@@ -112,24 +112,17 @@ COMPILE::JS {
                        
             COMPILE::JS {
                                var host:UIBase = value as UIBase;
-                               // depending on the surrounding layout, the 
element can be offset without this.
-                               //host.element.style.position = "absolute";
-
+                               
                                _increment = new Button();
                 _increment.addClass("up");
                                _increment.text = '\u25B2';
                                host.addElement(_increment);
-                               // _increment.positioner.style.display = 
'block';
-
+                               
                                _decrement = new Button();
                 _decrement.addClass("down");
                                _decrement.text = '\u25BC';
-                               // _decrement.positioner.style.display = 
'block';
+                               
                                host.addElement(_decrement);
-
-// add this in CSS!
-                               // controller = new SpinnerMouseController();
-                               // host.addBead(controller);
                        }
                                
                        COMPILE::SWF
diff --git 
a/frameworks/projects/Jewel/src/main/sass/components/_numericstepper.sass 
b/frameworks/projects/Jewel/src/main/sass/components/_numericstepper.sass
index 19b95d8..bbac3cf 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_numericstepper.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_numericstepper.sass
@@ -28,7 +28,16 @@ $numericstepper-button-yoffset: calc(50% - 
#{$numericstepper-button-height/2})
 .jewel.numericstepper    
     .jewel.textinput
         display: inline-flex
-    
+
+@media (max-width: $desktop)
+    .jewel.numericstepper
+        width: 190px
+        height: 39px 
+        .jewel.textinput
+            z-index: 1
+            position: absolute
+            left: 58px
+
 j|NumericStepper
     IBeadModel: 
ClassReference("org.apache.royale.jewel.beads.models.RangeModel")
     IBeadView: 
ClassReference("org.apache.royale.jewel.beads.views.NumericStepperView")
@@ -73,6 +82,20 @@ j|NumericStepper
 
                 left: $numericstepper-button-xoffset
                 top: $numericstepper-button-yoffset
+
+@media (max-width: $desktop)
+    .jewel.spinner
+        .jewel.button
+            width: 39px
+            height: 38px
+        
+            &.up
+                position: absolute
+                left: 20px
+            &.down
+                position: absolute
+                left: 169px 
+
     
 j|Spinner
     IBeadModel: 
ClassReference("org.apache.royale.jewel.beads.models.RangeModel")
diff --git a/frameworks/themes/JewelTheme/src/main/resources/defaults.css 
b/frameworks/themes/JewelTheme/src/main/resources/defaults.css
index 2769886..efc6fe2 100644
--- a/frameworks/themes/JewelTheme/src/main/resources/defaults.css
+++ b/frameworks/themes/JewelTheme/src/main/resources/defaults.css
@@ -458,16 +458,20 @@ j|Card {
   border-radius: 0.25rem 0px 0px 0.25rem;
 }
 
+@media (max-width: 992px) {
+  .jewel.numericstepper .jewel.textinput input {
+    border-radius: 0;
+  }
+}
 .jewel.spinner {
   width: 34px;
 }
 .jewel.spinner .jewel.button {
+  padding: 0px;
+  height: 19px;
   color: transparent;
-  border-bottom-left-radius: 0px;
-  border-top-left-radius: 0px;
+  border-radius: 0 0.25rem 0.25rem 0;
   border-left: 0px;
-  height: 19px;
-  padding: 0px;
 }
 .jewel.spinner .jewel.button.up {
   border-bottom-right-radius: 0px;
@@ -485,6 +489,17 @@ j|Card {
   background: 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='%23808080' 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%3E%3C/g [...]
 }
 
+@media (max-width: 992px) {
+  .jewel.spinner .jewel.button.up {
+    border: 1px solid #b3b3b3;
+    border-radius: 0.25rem 0 0 0.25rem;
+  }
+  .jewel.spinner .jewel.button.down {
+    border: 1px solid #b3b3b3;
+    border-radius: 0 0.25rem 0.25rem 0;
+    border-top-style: solid;
+  }
+}
 .jewel.radiobutton input + span::before {
   background: linear-gradient(white, #f3f3f3);
   border: 1px solid #b3b3b3;
diff --git 
a/frameworks/themes/JewelTheme/src/main/sass/components-primary/_numericstepper.sass
 
b/frameworks/themes/JewelTheme/src/main/sass/components-primary/_numericstepper.sass
index 829d01b..e003904 100644
--- 
a/frameworks/themes/JewelTheme/src/main/sass/components-primary/_numericstepper.sass
+++ 
b/frameworks/themes/JewelTheme/src/main/sass/components-primary/_numericstepper.sass
@@ -29,6 +29,11 @@ $numericstepper-border-radius: $border-radius
             width: $numericstepper-input-width
             border-radius: $numericstepper-border-radius 0px 0px 
$numericstepper-border-radius
 
+@media (max-width: $desktop)
+    .jewel.numericstepper
+        .jewel.textinput
+            input
+                border-radius: 0
 
 
 // Jewel Spinner
@@ -38,12 +43,12 @@ $numericstepper-border-radius: $border-radius
     width: 34px
     
     .jewel.button
+        padding: 0px
+        height: 19px
+
         color: transparent
-        border-bottom-left-radius: 0px
-        border-top-left-radius: 0px
+        border-radius: 0 $numericstepper-border-radius 
$numericstepper-border-radius 0
         border-left: 0px
-        height: 19px
-        padding: 0px
 
         &.up
             border-bottom-right-radius: 0px
@@ -54,10 +59,19 @@ $numericstepper-border-radius: $border-radius
                 
         &.down
             border-top-right-radius: 0px
-            // border-top: 0px
             border-top-style: groove
             
             &::after
                 background-size: 46%
                 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='#{$default-font-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></s [...]
-        
\ No newline at end of file
+        
+@media (max-width: $desktop)
+    .jewel.spinner
+        .jewel.button
+            &.up
+                border: 1px solid darken($default-color, 15%)
+                border-radius: $numericstepper-border-radius 0 0 
$numericstepper-border-radius
+            &.down
+                border: 1px solid darken($default-color, 15%)
+                border-radius: 0 $numericstepper-border-radius 
$numericstepper-border-radius 0
+                border-top-style: solid 

Reply via email to