Merge lp:~openerp-dev/openerp-web/7.0-opw-576557-port-vme into lp:openerp-web/7.0

Proposed by Vidhin Mehta (OpenERP)
Status: Merged
Merged at revision: 3784
Proposed branch: lp:~openerp-dev/openerp-web/7.0-opw-576557-port-vme
Merge into: lp:openerp-web/7.0
Diff against target: 17 lines (+7/-0)
1 file modified
addons/web/static/src/js/view_form.js (+7/-0)
To merge this branch: bzr merge lp:~openerp-dev/openerp-web/7.0-opw-576557-port-vme
Reviewer Review Type Date Requested Status
Vidhin Mehta (OpenERP) (community) Needs Resubmitting
Fabien Meghazi (OpenERP) (community) Needs Fixing
Review via email: mp+144230@code.launchpad.net

Description of the change

Many2one autocomplete stays on view when open from any dioloag box and scorll.

Solution:
Close Many2one autocomplete on scroll.

To Reproduce :- https://docs.google.com/file/d/0By4GWTWr6HDNSEVTdE51RUg4NEU/edit

To post a comment you must log in.
Revision history for this message
Fabien Meghazi (OpenERP) (fme) wrote :

For performance sake, please use _.debounce() when dealing with events such as scroll, resize, ...

review: Needs Fixing
3710. By Vidhin Mehta (OpenERP)

[IMP]use debounce to close on scroll.

3711. By Vidhin Mehta (OpenERP)

[MERGE]7.0

3712. By Vidhin Mehta (OpenERP)

[FIX]

Revision history for this message
Vidhin Mehta (OpenERP) (vme-openerp) :
review: Needs Resubmitting

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'addons/web/static/src/js/view_form.js'
2--- addons/web/static/src/js/view_form.js 2013-02-19 14:32:15 +0000
3+++ addons/web/static/src/js/view_form.js 2013-02-21 09:51:21 +0000
4@@ -3063,6 +3063,13 @@
5 }
6 }
7 });
8+ // Autocomplete close on dialog content scroll
9+ var close_autocomplete = _.debounce(function(){
10+ if(self.$input.autocomplete("widget").is(":visible")){
11+ self.$input.autocomplete("close");
12+ }
13+ }, 100);
14+ this.$input.closest(".ui-dialog .ui-dialog-content").on('scroll', this, close_autocomplete);
15 self.ed_def = $.Deferred();
16 self.uned_def = $.Deferred();
17 var ed_delay = 200;