From 7fc784371b57b23711e007df75d42d2c36054ef8 Mon Sep 17 00:00:00 2001 From: Dave Lasley Date: Fri, 14 Oct 2016 04:08:10 -0700 Subject: [PATCH] [MIG] web_responsive: Migrate to v10 * Bump version * Change all openerp to odoo * Fix qunit suite injection * Remove jQuery require * Change to new selectors: * `oe_leftbar` to `o_sub_menu` * `oe_logo` to `o_sub_menu_logo` * `oe_footer` to `o_sub_menu_footer` * `oe_secondary_menus_container` to `o_sub_menu_content` * Add style to hide oe_footer instead of remove to not break `support_branding` * Add note in ReadMe explaining override of `support_branding` * Set top margin of app drawer title to 0 to fit v10 proportions * Fix notification badge positioning * Add o_web_client class to body to fix overlaps * Scroll control panel with page * Change navbar z-index to not be overlapped by buttons * Raise z-index on header to raise over buttons * Handle layered notifications via z-index * Remove `#` from navigation links HREF to prevent history littering --- web_responsive/README.rst | 2 +- .../{__openerp__.py => __manifest__.py} | 2 +- .../static/src/js/web_responsive.js | 11 ++++++--- .../static/src/less/app_drawer.less | 9 +++++--- web_responsive/static/src/less/main.less | 23 +++++++++++++++++-- web_responsive/static/src/less/navbar.less | 18 +++++++++++---- web_responsive/static/src/less/variables.less | 2 +- .../static/tests/js/web_responsive.js | 2 +- web_responsive/tests/test_ui.py | 2 +- web_responsive/views/assets.xml | 2 +- web_responsive/views/web.xml | 20 +++++++--------- 11 files changed, 63 insertions(+), 30 deletions(-) rename web_responsive/{__openerp__.py => __manifest__.py} (95%) diff --git a/web_responsive/README.rst b/web_responsive/README.rst index 7981266f..f9cc7d3f 100755 --- a/web_responsive/README.rst +++ b/web_responsive/README.rst @@ -35,7 +35,7 @@ The following keyboard shortcuts are implemented: .. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas :alt: Try me on Runbot - :target: https://runbot.odoo-community.org/runbot/154/9.0 + :target: https://runbot.odoo-community.org/runbot/154/10.0 Known issues / Roadmap ====================== diff --git a/web_responsive/__openerp__.py b/web_responsive/__manifest__.py similarity index 95% rename from web_responsive/__openerp__.py rename to web_responsive/__manifest__.py index a21ba8c7..835078bb 100755 --- a/web_responsive/__openerp__.py +++ b/web_responsive/__manifest__.py @@ -6,7 +6,7 @@ "name": "Web Responsive", "summary": "It provides a mobile compliant interface for Odoo Community " "web", - "version": "9.0.1.0.0", + "version": "10.0.1.0.0", "category": "Website", "website": "https://laslabs.com/", "author": "LasLabs, Tecnativa, Odoo Community Association (OCA)", diff --git a/web_responsive/static/src/js/web_responsive.js b/web_responsive/static/src/js/web_responsive.js index 527b5501..b1fcd143 100755 --- a/web_responsive/static/src/js/web_responsive.js +++ b/web_responsive/static/src/js/web_responsive.js @@ -4,7 +4,6 @@ odoo.define('web_responsive', function(require) { 'use strict'; - var $ = require('$'); var Menu = require('web.Menu'); var Class = require('web.Class'); var SearchView = require('web.SearchView'); @@ -83,12 +82,18 @@ odoo.define('web_responsive', function(require) { '-': this.LEFT, }; this.initDrawer(); - var $clickZones = $('.openerp_webclient_container, ' + + var $clickZones = $('.odoo_webclient_container, ' + 'a.oe_menu_leaf, ' + 'a.oe_menu_toggler, ' + 'a.oe_logo, ' + 'i.oe_logo_edit' ); + $('.o_content').scroll(function() { + $('.o_control_panel').css( + 'margin-top', + -$(this).scrollTop() + 'px' + ); + }); $clickZones.click($.proxy(this.handleClickZones, this)); core.bus.on('resize', this, this.handleWindowResize); core.bus.on('keydown', this, this.handleNavKeys); @@ -115,7 +120,7 @@ odoo.define('web_responsive', function(require) { // It provides handlers to hide drawer when "unfocused" handleClickZones: function() { this.$el.drawer('close'); - $('.oe_secondary_menus_container') + $('.o_sub_menu_content') .parent() .collapse('hide'); }, diff --git a/web_responsive/static/src/less/app_drawer.less b/web_responsive/static/src/less/app_drawer.less index 127f25de..ec31048e 100755 --- a/web_responsive/static/src/less/app_drawer.less +++ b/web_responsive/static/src/less/app_drawer.less @@ -11,10 +11,15 @@ border-radius: @border-radius-base; .box-shadow(0 6px 12px rgba(0, 0, 0, .175)); background-clip: padding-box; + z-index: 2000; + + .o_tooltip { + z-index: 2051; + } .oe_logo { img { - margin-top: -@app-drawer-navbar-padding-vertical; + margin-top: -@app-drawer-navbar-padding-vertical * 2; height: @app-drawer-title-height; } .oe_logo_edit { @@ -65,14 +70,12 @@ position: absolute; height: @app-drawer-title-height; width: 100%; - z-index: 9999; } } .drawer-nav { width: @app-drawer-width; - z-index: 9999; } .drawer--left .drawer-nav { diff --git a/web_responsive/static/src/less/main.less b/web_responsive/static/src/less/main.less index 246e9d81..862e50a6 100755 --- a/web_responsive/static/src/less/main.less +++ b/web_responsive/static/src/less/main.less @@ -22,6 +22,25 @@ main { overflow: hidden; } -div.oe_footer { - display: none; +header { + z-index: 10; +} + +.o_cp_switch_buttons { + .active { + z-index: 10; + } +} + +.o_sub_menu { + .o_sub_menu_logo { + display: none; + } + .o_sub_menu_footer { + display: none; + } +} + +.o_tooltip.active { + z-index: 2051; } diff --git a/web_responsive/static/src/less/navbar.less b/web_responsive/static/src/less/navbar.less index bbf0d453..5313bde6 100755 --- a/web_responsive/static/src/less/navbar.less +++ b/web_responsive/static/src/less/navbar.less @@ -2,12 +2,22 @@ * License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). */ .main-nav { + margin-bottom: 0; min-height: @app-drawer-navbar-height; -} - -.main-nav ul.nav > li > a { - padding: @app-drawer-navbar-padding-vertical @app-drawer-padding-horizontal; + z-index: 1; + border: none; + + .badge { + position: absolute; + top: 3px; + right: @navbar-padding-horizontal / 2; + } + + ul.nav > li > a { + padding: @app-drawer-navbar-padding-vertical @app-drawer-padding-horizontal; + } + } .oe_topbar_avatar { diff --git a/web_responsive/static/src/less/variables.less b/web_responsive/static/src/less/variables.less index 9ab6bdac..8e16182a 100755 --- a/web_responsive/static/src/less/variables.less +++ b/web_responsive/static/src/less/variables.less @@ -5,7 +5,7 @@ @app-drawer-icon-size: 6em; @app-drawer-icon-margin: 1em; @app-drawer-width: 80%; -@app-drawer-title-height: @navbar-height; +@app-drawer-title-height: 54px; // Navbar @app-drawer-navbar-height: @navbar-height / 2; diff --git a/web_responsive/static/tests/js/web_responsive.js b/web_responsive/static/tests/js/web_responsive.js index c1f96196..686fce3f 100755 --- a/web_responsive/static/tests/js/web_responsive.js +++ b/web_responsive/static/tests/js/web_responsive.js @@ -23,7 +23,7 @@ odoo.define_section('web_responsive', ['web_responsive'], function(test) { self.$clickZone = $(''); - self.$secondaryMenu = $('
'); + self.$secondaryMenu = $('
'); self.$dropdown = $('