diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css index 91793947836..a14d0002492 100644 --- a/addons/web/static/src/css/base.css +++ b/addons/web/static/src/css/base.css @@ -475,11 +475,10 @@ max-width: 180px; max-height: 180px; } -.openerp .oe_view_manager_current a.accessactive { - display:inline-block; - text-decoration:none; +.openerp .oe_form_buttons [accesskey] > p { + display:inline; } -.openerp .oe_view_manager_current .accessactive:first-letter{ +.openerp .oe_form_buttons .accessactive { text-decoration:underline; text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2); font-weight:bold; diff --git a/addons/web/static/src/css/base.sass b/addons/web/static/src/css/base.sass index a1bb16d6856..6b768c43f04 100644 --- a/addons/web/static/src/css/base.sass +++ b/addons/web/static/src/css/base.sass @@ -437,11 +437,10 @@ $sheet-padding: 16px .oe_image_medium > img max-width: 180px max-height: 180px - .oe_view_manager_current - a.accessactive - display: inline-block - text-decoration: none - .accessactive:first-letter + .oe_form_buttons + [accesskey] > p + display: inline + .accessactive text-decoration: underline text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2) font-weight: bold diff --git a/addons/web/static/src/js/view_form.js b/addons/web/static/src/js/view_form.js index 67dbc4b0acf..f9c71e0b316 100644 --- a/addons/web/static/src/js/view_form.js +++ b/addons/web/static/src/js/view_form.js @@ -221,16 +221,18 @@ instance.web.FormView = instance.web.View.extend(instance.web.form.FieldManagerM return $.when(); }, widgetAccesskey:function(){ - $(document).keydown(function(e){ - if(e.keyCode === $.ui.keyCode.ALT || e.keyCode === $.ui.keyCode.SHIFT && e.altKey) { - $("[accesskey]").addClass('accessactive'); - }else { - $("[accesskey]").removeClass('accessactive'); - } - e.stopPropagation(); - }).keyup(function(e){ - $("[accesskey]").removeClass('accessactive'); + var self = this; + self.$buttons.find("[accesskey]").html(function(i, html){ + return html.replace(/^[^a-zA-Z]*([a-zA-Z])/g, '

$1

'); }); + $(document).keydown(function(e){ + self.$buttons.find("[accesskey] >p").removeClass("accessactive"); + if (e.keyCode === $.ui.keyCode.ALT || e.keyCode === $.ui.keyCode.SHIFT && e.altKey) { + self.$buttons.find("[accesskey] >p").addClass("accessactive"); + } + }).keyup(function(){ + self.$buttons.find("[accesskey] > p").removeClass("accessactive"); + }) }, widgetFocused: function() { // Clear click flag if used to focus a widget