From 498010caccf74d5c4bae3872f6dbff35cbe6b626 Mon Sep 17 00:00:00 2001 From: Dan Popescu Date: Sat, 5 Jun 2021 11:19:31 +0300 Subject: [PATCH] feat(position engine): improve positioning #8175, #8191, #8343, #8554, #10583, #12414 --- ui/dev/src/index.template.html | 2 +- .../pages/components/menu-2-nested-divs.vue | 137 +++++ .../components/menu-label-activation.vue | 512 ++++++++++++++++++ ui/dev/src/pages/components/menu.vue | 191 +++++-- ui/dev/src/pages/form/date-part1-basic.vue | 4 +- ui/dev/src/pages/global/dialog.vue | 16 + .../src/pages/web-tests/menu-positioning.vue | 75 +++ ui/src/components/field/QField.js | 1 - ui/src/components/menu/QMenu.js | 105 ++-- ui/src/components/menu/QMenu.json | 14 + ui/src/components/menu/QMenu.sass | 17 +- ui/src/components/menu/QMenu.styl | 17 +- ui/src/components/select/QSelect.js | 8 +- ui/src/components/select/QSelect.sass | 4 +- ui/src/components/select/QSelect.styl | 4 +- ui/src/components/tooltip/QTooltip.js | 67 ++- ui/src/components/tooltip/QTooltip.json | 18 +- ui/src/components/tooltip/QTooltip.sass | 26 +- ui/src/components/tooltip/QTooltip.styl | 26 +- ui/src/css/core/helpers.sass | 8 + ui/src/css/core/helpers.styl | 8 + ui/src/css/core/positioning.sass | 7 - ui/src/css/core/positioning.styl | 7 - ui/src/directives/TouchPan.js | 23 +- ui/src/mixins/anchor.js | 67 ++- ui/src/mixins/model-toggle.js | 39 +- ui/src/utils/event.js | 14 + ui/src/utils/private/position-engine.js | 487 ++++++++++------- ui/src/utils/scroll.js | 2 +- ui/types/utils/event.d.ts | 1 + 30 files changed, 1519 insertions(+), 388 deletions(-) create mode 100644 ui/dev/src/pages/components/menu-2-nested-divs.vue create mode 100644 ui/dev/src/pages/components/menu-label-activation.vue create mode 100644 ui/dev/src/pages/web-tests/menu-positioning.vue diff --git a/ui/dev/src/index.template.html b/ui/dev/src/index.template.html index 2cc87503b041..f67f327f5b6a 100644 --- a/ui/dev/src/index.template.html +++ b/ui/dev/src/index.template.html @@ -5,7 +5,7 @@ - + diff --git a/ui/dev/src/pages/components/menu-2-nested-divs.vue b/ui/dev/src/pages/components/menu-2-nested-divs.vue new file mode 100644 index 000000000000..16a84c63ee16 --- /dev/null +++ b/ui/dev/src/pages/components/menu-2-nested-divs.vue @@ -0,0 +1,137 @@ + + + diff --git a/ui/dev/src/pages/components/menu-label-activation.vue b/ui/dev/src/pages/components/menu-label-activation.vue new file mode 100644 index 000000000000..9460b2e4688e --- /dev/null +++ b/ui/dev/src/pages/components/menu-label-activation.vue @@ -0,0 +1,512 @@ + + + diff --git a/ui/dev/src/pages/components/menu.vue b/ui/dev/src/pages/components/menu.vue index 98dfbb365184..38244f080714 100644 --- a/ui/dev/src/pages/components/menu.vue +++ b/ui/dev/src/pages/components/menu.vue @@ -1,8 +1,22 @@