summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/framework
AgeCommit message (Collapse)Author
2015-09-24[FIX] web: clone values in read_ids (avoid external changes)Christophe Matthieu
Some widgets like list editable use and change values dictionary. When the write is called, the values in the cache is equal to the changes send => field no dirty => no change triggered.
2015-09-14[IMP] web: improve Widget.proxy's error reportingXavier Morel
Provide a more informative error message than "undefined is not a function" when a method passed by name to the events object is missing on the widget.
2015-09-01[FIX] im_livechat : fix session binding. Required to bind session on server ↵Jérome Maes
url from livechat to male it work outside odoo server. In website_livechat, the web.session js namespace is redifined, and i'm still not sure this is a good idea
2015-09-01[ADD] web: backport of function getPosition()Aaron Bohy
to compute the offset of a DOM element
2015-09-01[IMP] web: dialog: wait for button's onclick handler to closeAaron Bohy
When a button in the modal's footer has an onclick handler and closes the modal, the action of closing the modal should wait for the potential deferred returned by the handler. For instance, if an handler performs an asynchronous call and, when resolved, triggers a notification, the notification doesn't reach the webclient if the modal is already closed because the widgets hierarchy is broken.
2015-08-28[FIX] web: BufferedDataSet must update the cache when reset_ids is calledChristophe Matthieu
2015-08-28[IMP] web: add attribute searchview_hidden to views.Martin Geubelle
This attribute can be used when the view needs a searchview but wants it to be hidden.
2015-08-27[REF] web: data.js: refactoring of BufferedDataSet (less code and speed up)Christophe Matthieu
2015-08-26[ADD] website_form: generic form controllerDavid Monjoie
Contains a new ajax post function that comes from mdo's original code and that I was not able to get rid of.
2015-08-21[IMP] web: use css to display attachment mimetypeChristophe Matthieu
Widgets and website display images or display the type with icon like pdf, doc...
2015-08-21[IMP] web: increase tooltip delay timerGéry Debongnie
from 500 to 1000, as requested by fp
2015-08-19[FIX] web: many2one try to read a creating record but the cache doesn't yet ↵Christophe Matthieu
contain the record
2015-08-17[FIX] web: need to initialize values into the cacheChristophe Matthieu
2015-08-16[FIX] ajax.js: stringify error for debugging helpChristophe Simonis
2015-08-14[FIX] web: make the web client process the new output format of `onchange`Raphael Collet
The dataset implementation has been improved to handle the result of a `read` on ids that are already modified in the dataset: the lists `to_create` and `to_write` are updated properly.
2015-08-07[REF] web(_*): views: view_switcher iconAaron Bohy
Add a key icon in the view's prototype corresponding to the font-awesome icon to display in the view switcher.
2015-07-30[REF] web: move barcode_events to module barcodesArthur Maniet
If the module barcodes is installed, a BarcodeEvents singleton is automatically instanciated. It listens to keypresses and, when a sequence of keys represents a barcode, it broadcasts a 'barcode_scanned' event on core.bus containing the barcode string.
2015-07-29[FIX] web,mail: widgets: replace $el.toggle() by do_toggle()Aaron Bohy
Since rev. 16eb36ff, do_show() and do_hide() on widgets toggle the classname o_hidden on which the rule 'display: none' is defined, instead of calling jQuery's show() and hide(). The method do_toggle(), sharing the same logic, has been introduced in rev. 74c5f772. From now on, every widgets should call do_toggle() instead of $el.toggle() as it will have undesiderable effects (they should call do_show() and do_hide() instead of $el.show() and $el.hide() as well, this as been done in 16eb36ff). This rev. replaces all calls to $el.toggle() by do_toggle(). It also adds an optional argument to do_toggle() to force hidding or showing the widget.
2015-07-29[IMP] web: alert/confirm dialogs default titlesqsm-odoo
Add "Alert" and "Confirmation" as default titles for alert and confirm dialogs
2015-07-27[IMP] Add Dialog.alert featureqsm-odoo
This allows to open a simple message dialog with potential action when the unique "ok" button is clicked
2015-07-23[ADD] web: framework: do_toggle on widgetSimon Lejeune
2015-07-23[IMP] web: New notification systemqsm-odoo
Backport of the Notification system
2015-07-22[MERGE] forward port of branch saas-6 up to 63e92cbChristophe Simonis
2015-07-17[IMP] web: use a classname to show/hide widgetsAaron Bohy
The problem of $el.show()/hide() is that calling show() on a jQuery element on which there is no display rule in the stylesheet automatically sets 'display: block'. However, when a jQuery element is not yet in the DOM, the rules defined on it are not yet applied, meaning that calling show() will set its display to block (in inline style), even if there is different a css rule (e.g. 'dislay: flex'). As the inline style takes the priority over the stylesheet, the correct display won't be applied, even when the widget will be appended in the DOM, resulting in a possibly broken layout.
2015-07-15[IMP] web: trigger an event when webclient is readyAaron Bohy
The main purpose of this commit is to be consistent with the enterprise edition, in which the event 'DOM_updated' is triggered when new content is inserted in the DOM. This way, addons that need to know when a view has been attached in the DOM (e.g. web_tip) can listen to this event and will work fine with both editions of the web addon. With the actual structure of the webclient (action_manager, view_manager), there is no easy way to decide whether or not a view is attached in the DOM, because every rendering is performed in a detached element. For instance, when a view_manager instantiates a new view, it appends it in its $el once the view is ready, but it can't know if its $el is attached in the DOM (it is only the case if the view_manager is the current action of the action manager). This rev. introduces utility functions to centralize the appending/prepending of content, so that an event can be triggered (at a unique place) when the content is really in the DOM. These functions are used by the the action_manager and the view_manager. Another change is that the action_manager keeps the view_manager informed when they are attached in/detached from the DOM, through the variable is_in_DOM.
2015-07-10[IMP] web_editor: adapt css, js and xml to use web_editorChristophe Matthieu
2015-07-10[IMP] web_editor: split website into web_editor (to use editor in backend ↵Christophe Matthieu
for html field) and website
2015-07-10[IMP] web: split model.js into model.js and data_model.js. Web js modules ↵Christophe Matthieu
must call web.DataModel.
2015-07-01[IMP] web,web_kanban: Dialog.confirm apiAaron Bohy
takes now an object of options for the Dialog, containing two possible callbacks (for confirm and cancel).
2015-06-30[REVERT] web,point_of_sale: cordova integrationAaron Bohy
introduced by forwardport: a3041949364141eaa66b22ab0d72227b675df324 initial commit in 8.0: 19eda68547917cfabe923ea41edb8ac7beb141b6
2015-06-25[MERGE] forward port of branch saas-6 up to 81b5c60Christophe Simonis
2015-06-18[IMP] web: pager: editable feature + documentationAaron Bohy
Pager's state can now be edited (mainly to change the limit, but the range of values as well).
2015-06-17[FIX] web: one2many listChristophe Matthieu
Error when click on other record after an update on a one2many record in list editable which have an 'add an item' by checkbox selection
2015-06-17[IMP] web, web_*, mail, board : New modals and dialogsqsm-odoo
2015-06-15[FIX] web: various tweaks to make web_kanban view workGéry Debongnie
2015-06-12[IMP] web: split misc.js into misc.js and session_instance.jsChristophe Matthieu
2015-05-29[FIX] barcode_events: set parent to WebClient during creationJoren Van Onder
2015-05-29[IMP] barcode_events: dedicated variables to customize barcode detectionJoren Van Onder
2015-05-29[IMP] barcode_events: deal with special keys in FirefoxJoren Van Onder
Let arrow keys, tab and escape pass through. We still want users to be able to use eg. arrow keys to be used when selecting a radio item. This will always work in Chrom{e,ium} because they do not dispatch keypress events for these types of keys, only keydown/keyup events. Firefox does dispatch keypress events. This makes sure that we do not touch those types of events in Firefox. devices have to fire keypresses every 50ms minimum Previously this was 100ms. This works just as well, but was mainly in there for testing purposes.
2015-05-29[IMP] barcode_events: implement better keyrepeat blockingJoren Van Onder
Before this, users were only able to press a key when all other keys were released to prevent a key from repeating. This works but when typing you usually press the next key before releasing the current one. This allows users to do exactly that while still blocking keys from repeating.
2015-05-29[IMP] barcode_events: implement a new way of dealing with barcode eventsJoren Van Onder
Implement a new way of dealing with barcode events. This was necessary because the old way of dealing with input coming from barcode devices did not stop keyevents. This lead to all kinds of issues (eg. barcode reader output being inserted as tender in a paymentline). This new class inserts itself so that it handles all keyevents before everything else. This means that it has authority on what keypress events pass and which ones do not. It differentiates between 'real' keyboard input and input coming from devices by buffering events. When a certain amount of events come in fast enough, it is handled as a barcode and a 'barcode_scanned' event is emitted on core.bus. When buffered events are decided to not be a barcode, they are recreated and redispatched.
2015-05-28[MERGE] forward port of branch saas-6 up to bf1e999Christophe Simonis
2015-05-15[IMP] web: introduces event bubbling in widgetsGéry Debongnie
This commit adds event bubbling in the event dispatcher mixin (which inherits from parentedmixins). To do this, it introduces a new small class 'OdooEvent', which register the target and if the event is stopped. Also, widgets have a new 'custom_events' dictionary to easily register callbacks like the event dictionary.
2015-05-15[IMP] web: performance improvement with busGéry Debongnie
The bus class listen for many mouse/keyboard events and trigger them on itself. This was intended for the main bus, but not for custom buses. This commit should improve the performance when using many buses.
2015-05-13[IMP] web: New generic progressbar widget + FieldProgressBar adaptationqsm-odoo
2015-05-12[ADD] web : progress bar widget + method for human readable big numbersMartin Geubelle
2015-05-12[FIX] web,account: add support to have possibility to click on a link of ↵Cedric Snauwaert
type action in help message and fix account dashboard help message
2015-04-30[ADD] web utils: xor functionArthur Maniet
2015-04-22[IMP] 'Trying to reconnect' banner : removed blur effectYannick Tivisse
2015-04-18[FIX] web: session.js: use compatibility layer to avoid DependencyChristophe Simonis
error. Better solution welcome.