Commit Graph
5180 Commits
Author SHA1 Message Date
Martin Trigaux 9f3ab4599c [FIX] FieldStatus: restore trigger get_selection on value change. Was removed rev 3738.
Without this a change of record in a form view would not recompute the list of states as well as a change of state due to a button

bzr revid: mat@openerp.com-20140121151255-jke0zbobb0ilpqid
2014-01-21 16:12:55 +01:00
Denis Ledoux 5649e0bbf2 [MERGE] Forward-port of latest 7.0 bugfixes, up to rev. 9770 revid:chs@openerp.com-20140116154645-sy4zhdgqc48xaqbx
bzr revid: dle@openerp.com-20131224112612-5gjit5uu1aaaqstx
bzr revid: dle@openerp.com-20140103094532-mbczi9ssr3gc90o1
bzr revid: dle@openerp.com-20140108105833-gblxqdw3if1gt35k
bzr revid: dle@openerp.com-20140115121441-bskbyxxbc09ubavh
bzr revid: dle@openerp.com-20140115165506-yuux9km39gbv7k4n
bzr revid: dle@openerp.com-20140116161415-0y9m0kgavcytzj9z
2014-01-16 17:14:15 +01:00
Cecile Tonglet f00e6711f5 [FIX] Fix the missing border-bottom of the notebook in dialogs
bzr revid: cto@openerp.com-20140115142608-rjemiq5lq8ju8zc0
2014-01-15 15:26:08 +01:00
Denis Ledoux 6109102e91 [FIX] web: view_form.js, allow press enter to break line in fieldtextwidget
bzr revid: dle@openerp.com-20140115120844-1z0pbh9pc63tllce
2014-01-15 13:08:44 +01:00
Martin Trigaux 2170efe270 [MERGE] [FIX] reference field: correct editable tree view for refrence field (opw 601553)
bzr revid: mat@openerp.com-20140115110038-30hgekee12evx5fm
2014-01-15 12:00:38 +01:00
Martin Trigaux 3f4c637674 [IMP] view_form: do not display hugly error message when name_get returns no value but more helpful message (eg: bad default value returns wrong id)
bzr revid: mat@openerp.com-20140114145720-r3lg0qjezqj4p3i1
2014-01-14 15:57:20 +01:00
Xavier ALT 7960f9fc59 [FIX] web: list view: fix wrong css for fields.reference in editable tree view
bzr revid: xal@openerp.com-20140114115947-gkh09tb2vxsjyksk
2014-01-14 12:59:47 +01:00
Xavier ALT 9a84e25342 [FIX] web: list view: keep original fields.reference value instact, store it's display in fake field_name+'__display' column, so that editing value in editable tree mode works
bzr revid: xal@openerp.com-20140114100439-hvdu9cxwyb3vvsum
2014-01-14 11:04:39 +01:00
Martin Trigaux cc553cc507 [FIX] format: trying to format an undefined value as the same effect as a value to false or infinity: return value_if_empty parameter
bzr revid: mat@openerp.com-20140113172347-00anf6lh2jxin84w
2014-01-13 18:23:47 +01:00
Olivier Dony 1bb2fccb9d [FIX] web: avoid crash when the Home client action is called without action param
E.g. this could happen when the HistoryBack client action
was unable to restore the previous breadcrumbs item, and
used the Home action as fallback. Could be reproduce by
performing a successful import from an action without
menu and context, such as what you get after refreshing
your browser.

bzr revid: odo@openerp.com-20140107161154-430y7hlf9mvtfyfe
2014-01-07 17:11:54 +01:00
Denis Ledoux 5ba8c98fee [REVERT] rev 4098, revid:dle@openerp.com-20131224112201-0zlxa6fevvj3501h. Partialy break the design (buttons and status bar not displayed sometimes)
bzr revid: dle@openerp.com-20140103094415-vi99tbbeitzr7r2b
2014-01-03 10:44:15 +01:00
Denis Ledoux 7bb4f6da82 [FIX]web: status bar alignment, sometimes wrong on google chrome
bzr revid: dle@openerp.com-20131224112201-0zlxa6fevvj3501h
2013-12-24 12:22:01 +01:00
Xavier Morel 1b76c66930 [MERGE] fixes for non-direct IME
bzr revid: xmo@openerp.com-20131218152626-kexq1wudvjwnh962
2013-12-18 16:26:26 +01:00
Xavier ALT 9491755b8b [FIX] web: only show in 'Advanced Search', fields that are actually searcheable and avoid duplicate 'ID' field
bzr revid: xal@openerp.com-20131218113547-myl7eihvw5vbzkaa
2013-12-18 12:35:47 +01:00
Denis Ledoux cb0074ab15 [FIX] web: context propagation was broken on buttons of action and object type.
The context on the button must be propagated to the resulting action

bzr revid: dle@openerp.com-20131218112416-2vtaq442qo8opq4u
2013-12-18 12:24:16 +01:00
Martin Trigaux cfd24d9822 [FIX] view_list_editable: toggle visibility (using force_visibility attribute) for readonly changes, using effective_invisibility instead of invisibility attribute (opw 601970)
bzr revid: mat@openerp.com-20131217104111-u9bnqvz7rd5rzwnc
2013-12-17 11:41:11 +01:00
Christophe Simonis 9241d5f699 [FIX] when executing action received from a button call, set active_id and active_ids if there is one, remove existing if not; always set active_model
bzr revid: chs@openerp.com-20131211163609-i3s2mlncf5n91uda
2013-12-11 17:36:09 +01:00
Christophe Simonis 920ba45935 [FIX] filter the context keys only on the result action of the button
bzr revid: chs@openerp.com-20131211161810-hetgizet5mv3xkys
2013-12-11 17:18:10 +01:00
Martin Trigaux 585c72abd7 [MERGE] [FIX] Grouped ListView: avoid removing info in row title (such as total) when removing page numbers (if grouped view contains more than 80 elements) (opw 594708)
bzr revid: mat@openerp.com-20131211113330-c6mnxwba7yvxaqmc
2013-12-11 12:33:30 +01:00
Martin Trigaux ad7951214c [MERGE] [FIX] One2ManyListView: reload line data without saving it when m2o record has changed in edition mode (eg: changing product name in sale order line) (opw #600224)
bzr revid: mat@openerp.com-20131211105009-iylczcepd3a0e61l
2013-12-11 11:50:09 +01:00
xmo 762774df37 [FIX] prevent field going to be misplaced when going from readonly to writable in editable list view
bzr revid: mat@openerp.com-20131210155703-2mzqa2mch46nxpcj
2013-12-10 16:57:03 +01:00
Xavier Morel 9322b677aa [FIX] weird behavior when drag&dropping a row during edition in editable listview
When dropping, would simultanously stop the edition and try a write
(so 2 writes on the same record) and generally screw up the state of
all the things, ending up with an empty row and a weird (and
incorrect) warning.

This can be fixed by preventing resequencing during the creation or
edition of a record (row) inline.

For simplicity, implemented by looking up .ui-sortable descendants —
there are no utility methods for handling that and, aside from the
class, there's no good way to know if sortability was enabled on a
list body or not (as far as I can see, jquery-ui's sortable has no API
to query that) — and using jquery-ui's sortable API for enabling and
disabling sortable on the fly.

lp bug: https://launchpad.net/bugs/1257753 fixed

bzr revid: xmo@openerp.com-20131210124755-ugr3ehf744qoh1o5
2013-12-10 13:47:55 +01:00
Martin Trigaux f32b87e14d [FIX] css: avoid tabs in row below to move when selected (opw 601379)
bzr revid: mat@openerp.com-20131210112444-pk9yh8bke1z7eerr
2013-12-10 12:24:44 +01:00
Xavier Morel 029c866b8c [FIX] issue when tabbing too much at end of editable list row
Tabbing is intercepted by keydown_TAB, which — if the current cell is
the last active field of the row — will then call _next:476. _next
then calls save_edition:300 which "takes a lock" (more precisely
serializes access to its body) and within its body checks if an
edition is active (:303) and returns immediately if not (:304).

The problem here is when a second tab event arrives during the
potentially extremely long save_edition body (since for toplevel lists
it needs to perform a complete RPC call): the overall state of the
list has not changed so the second event *also* goes into _next, then
into save_edition. There it's serialized with the ongoing call and
thus inactive until said ongoing call's termination, and reaches the
body after the current edition has been wound down. As a result, the
body of _next (:408) gets the resolution of ``$.when()``, which is
``null`` and the first condition blows up.

There are 3 possible ways to fix this:

* adding a check in keydown_TAB's handler to see whether a _next call
  is ongoing. This requires adding a state flag to the object and does
  not protect (or cooperate with) _next calls from outside this
  specific handler, unless they are modified in turn.

* alter save_edition to *fail* in case there's no ongoing edition:
  this part was originally in ensure_saved which does not care whether
  a save was necessary or not and does not propagate save information,
  so ``$.when()`` made sense. In save_edition, there are really 3
  different outcomes: the save succeeded, the save failed (or
  potentially part of save's postprocessing failed, for the current
  implementation) and the save was unnecessary. But deferred only
  provide 1 bit of state (success or failure), so the last state has
  to be merged into either success or failure.
 
  Both make sense, to an extent. Changing from one to the other (as
  necessary here) could break existing code and have more extensive
  effects than expected.

* the simplest and least far-raging change is to just alter the
  save_edition().then handler to ignore cases where save_edition()
  results in no saveinfo, this can be assumed to be a
  bailed-out/unnecessary save call.

For simplicity, the 3rd solution was picked here although with more
extensive tests &al I'd have preferred trying out 2nd.

lp bug: https://launchpad.net/bugs/1253899 fixed

bzr revid: xmo@openerp.com-20131210093055-207fevqc1npy7fwr
2013-12-10 10:30:55 +01:00
Michel Meyer 68aac8e855 [FIX] events handling ordering courtesy of Michel Meyer
lead to errors during the validation of rows in list o2ms.

See https://bugs.launchpad.net/openerp-web/+bug/1182101/comments/20
for an extensive description of the events and issue.

bzr revid: xmo@openerp.com-20131209153519-n05bdx15t75dh7gf
2013-12-09 16:35:19 +01:00
Xavier Morel b4c121db71 [FIX] bad interaction of editable list with IME
IME are ways to input language which can't trivially map to a keyboard
(e.g. CJK language) with a standard-ish keyboard. For japanese IME
this is done by entering text phonetically: text is entered in romaji
and automatically converted to hiragana (or katakana) when it matches
the transcription a japanese syllable (~phoneme?) e.g. to (と). The
text is then split and reprocessed with sequences of hiragana being
converted to kanji (or not), and the possibility to pick the right
kanji when multiple kanji match e.g. for "Tokyo" toukyou -> とうきょう
-> 東京.

But to do the edition, keyboard keys are used. For the japanese IMEs
(tested on Windows, OSX and Linux) [Space] will do the initial
conversion from kana to kanji (and allow selecting an other conversion
or a different kana split) and [Return] will validate the current
conversion (removing the underline marking "unvalidated" kana or kanji
groups).

And that's where the problem hit: IME + browser combinations may or
may not suppress part of all of the event. Firefox will trigger a
keydown of the key which "starts" IME input (e.g. "t") and will
trigger a keyup for the validation key (return), except on Linux where
the initial keydown is suppressed. Inbetween these, it will fire no
keydown, keyup or keypress event but will fire input events (at least
on an input element) every time the displayed text changes.

Meanwhile webkit browsers will, for each press on the keyboard during
IME,

* trigger a keydown with the keyCode 229
* trigger a keyup event with the keycode of the key which was actually
  hit
* trigger input events every time the displayed text changes

This include meta-operation uses of [Space] and [Return].

MSIE has the same behavior (including triggering the input event), but
the keydown event is augmented with ``key`` and ``char`` attributes
providing the character matching the key hit to trigger the change.

Although the triggering of the input even is useless for the purpose
of the editable list (especially here, the purpose of validating a
list row with [Return] one fact stands out: keypress is never
triggered during IME operations, hitting the [Return] key outside of
IME will trigger keydow, keypress, keyup but doing so during IME will
only trigger the first and last.

Thus by changing the binding from keyup (return) to keypress (return)
for a line validation, spurious validation during IME text entry
should be avoided. This seems to work correctly on MSIE (Windows),
Firefox (Windows, OSX, Linux), Chrome (Windows, OSX, Linux) and Safari
(OSX), after testing in IE9, IE10, Chrome 31, Firefox 25 and Safari 7,
and a quick test on a task's o2m did not reveal any regression.

note: not all differences between various browser/os combinations were
inspected in details, there may well be further differences which were
not noticed or not relevant to this precise issue.

bzr revid: xmo@openerp.com-20131206124431-q4a9l1gn9wjtmlvz
2013-12-06 13:44:31 +01:00
Christophe Simonis 7e8a5f7697 [FIX] web: openerpframework.js: do not use _.str
openerpframework.js can be used as standalone library (im_livechat uses
it this way) and do not depend on underscore.string.js

bzr revid: chs@openerp.com-20131203132937-ss7hx1gligzai5ch
2013-12-03 14:29:37 +01:00
Mohammed Shekha (OpenERP) b3391cd7fe [FIX]Web: Fixed the issue of immediate update of many2one field when many2one object name has been changed from follow button popup, reloaded the record from database forcefull to update dataaset, do not call form-blur when follow button is clicked, also do not evict record when record is still not created.
bzr revid: msh@openerp.com-20131203123856-gce4li1igo9k1mak
2013-12-03 18:08:56 +05:30
Antony Lesuisse da6fee2ac1 [FIX] session expired
bzr revid: al@openerp.com-20131202154206-6efsbeeg0mq7s67z
2013-12-02 16:42:06 +01:00
Christophe Simonis 162dd9ad17 [MERGE] forward port of branch 7.0 up to revid 4075 chs@openerp.com-20131122170316-lbuxddprrgz1are3
bzr revid: chs@openerp.com-20131122131553-i22dj95bvofb7aeu
bzr revid: chs@openerp.com-20131122172422-tsd8wzqkbqknrw1w
2013-11-22 18:24:22 +01:00
Christophe Simonis 1be71fdae6 [REVERT] revert previous commit which:
1. is wrong
2. break runbot

bzr revid: chs@openerp.com-20131122170316-lbuxddprrgz1are3
2013-11-22 18:03:16 +01:00
Christophe Simonis e555872646 [FIX] web: view list: ensure that the mutex of synchronized method reload_content is always released.
bzr revid: chs@openerp.com-20131122131037-sqxs1fdh4al32eh2
2013-11-22 14:10:37 +01:00
Christophe Simonis 8721307dae [IMP] web: avoid double reload() when clicking on a button on a editable form view.
bzr revid: chs@openerp.com-20131120185337-w8857fmwosa36r4d
2013-11-20 19:53:37 +01:00
Antony Lesuisse 584d21a26f [FIX] field statusbar css color between stages
bzr revid: al@openerp.com-20131118182416-picnqdmcwbqalk2y
2013-11-18 19:24:16 +01:00
Antony Lesuisse 7c9be80f95 [FIX] jquery browser detection fix
bzr revid: al@openerp.com-20131118180642-xa39ja4o8zt8zd5o
2013-11-18 19:06:42 +01:00
Christophe Simonis 36b3ea41d8 [MERGE] forward port of branch saas-1 up to revid 3751 chs@openerp.com-20131115104909-3u3mu40g9xnler88
bzr revid: chs@openerp.com-20131115112311-mq197ugcdc38gjnw
2013-11-15 12:23:11 +01:00
Christophe Simonis 993bff902e [MERGE] forward port of branch 7.0 up to revid 4067 chs@openerp.com-20131114142639-ng7wzfjwvvel2nhv
bzr revid: dle@openerp.com-20131112134311-h1vsux0ge17bsqkc
bzr revid: chs@openerp.com-20131114134731-n324awyon0spq624
bzr revid: chs@openerp.com-20130823145204-xwpnlwg0gg2259f6
bzr revid: chs@openerp.com-20130906170157-e7m4pjskyi47q82o
bzr revid: dle@openerp.com-20130909170408-wxgoduzggap6o4ng
bzr revid: dle@openerp.com-20130919141212-ridtrvvfwvu6calr
bzr revid: dle@openerp.com-20131018120136-fvoq337kgx74njsy
bzr revid: dle@openerp.com-20131023103308-18pj2gqq3imrcir7
bzr revid: chs@openerp.com-20131030180528-hqsztaujjjqev8ky
bzr revid: dle@openerp.com-20131106100128-mx8mnguvp321wick
bzr revid: chs@openerp.com-20131115104909-3u3mu40g9xnler88
2013-11-15 11:49:09 +01:00
Christophe Simonis 1e4b2695d5 [MERGE][FIX] web: fix race condition in BufferedDataset.
Backport of saas-2 commit 3867 nicolas.vanhoren@openerp.com-20131107112017-7omd01ocvnbzx9m6

lp bug: https://launchpad.net/bugs/1248531 fixed

bzr revid: chs@openerp.com-20131114142639-ng7wzfjwvvel2nhv
2013-11-14 15:26:39 +01:00
Christophe Simonis e5ca5a170c [FIX] web: list views: bubble up failed deferreds.
[FIX] web: list view group: always call post_render method

lp bug: https://launchpad.net/bugs/1248531 fixed

bzr revid: chs@openerp.com-20131114110847-nn382fc60s7u7wp1
2013-11-14 12:08:47 +01:00
Christophe Simonis b61997e716 [FIX] web: correct url matching in tests
bzr revid: chs@openerp.com-20131114094624-588lvc9vunwa99d8
2013-11-14 10:46:24 +01:00
Christophe Simonis e9c633cb7e [IMP] web: call call_kw with full route to help debugging
bzr revid: chs@openerp.com-20131113184000-3k3dnwl5ftllq2rv
2013-11-13 19:40:00 +01:00
Martin Trigaux 8c3cdce539 [MERGE] view form: reduce the number of result in 'search more' view opening to 160 records (performances improvement, not filtering every possible record) (opw 593963)
bzr revid: mat@openerp.com-20131113082806-me6uy7cjj6holn56
2013-11-13 09:28:06 +01:00
Christophe Simonis 6cfb4a0370 [FIX] web: do not enforce width of dropdown links
bzr revid: chs@openerp.com-20131112143746-svdfuqvzvvis6vpy
2013-11-12 15:37:46 +01:00
Christophe Simonis 61a8a22f60 [FIX] web: match base.sass against changes made in base.css in revid 4014 mat@openerp.com-20130821080933-fiq3zvccgzop02on
bzr revid: chs@openerp.com-20131112143635-ek6yhfifb6ycynku
2013-11-12 15:36:35 +01:00
Mohammed Shekha (OpenERP) ed7ee33cf7 [FIX]Re-fixed the issue of pager on group by view, last element of the row removes total value.
bzr revid: msh@openerp.com-20131106134929-zn3x03sksy4nruns
2013-11-06 19:19:29 +05:30
Christophe Simonis 3213ad4ddd [FIX] web: instance.web.DataSetSearch.get_domain() returns the domain.
lp bug: https://launchpad.net/bugs/1195631 fixed

bzr revid: chs@openerp.com-20131105121843-rqplhk83fczxww0t
2013-11-05 13:18:43 +01:00
Christophe Simonis 8214e291a9 [FIX] web: correct date and datetime parsing.
When creating a new Date object at a specific date, this date is treated as a UTC datetime
then normalized to the browser timezone. This can lead to a change of Year/Month/Day depending
of the chosen date. Using a date of a leap year date for date parsing and forcing UTC date for
datetime parsing correct the month-switch errors in all timezones

bzr revid: chs@openerp.com-20131031133920-yl5z4oz939smwvz8
2013-10-31 08:39:20 -05:00
Christophe Simonis 2d1765e9f0 [MERGE] forward port of branch 7.0 up to revid 4062 chs@openerp.com-20131112143746-svdfuqvzvvis6vpy
bzr revid: chs@openerp.com-20131112155210-nfuenyb7zyus9ues
2013-11-12 16:52:10 +01:00
Christophe Simonis be7084b988 [FIX] web: do not declare variables inside if() scope
bzr revid: chs@openerp.com-20131108160747-1jrpihb66y6vtov5
2013-11-08 17:07:47 +01:00
Christophe Simonis 5311db325c [FIX] web: filter context before executing actions triggered by buttons in views
bzr revid: chs@openerp.com-20131108160627-osiigir6tsr2k783
2013-11-08 17:06:27 +01:00