Commit Graph
1599 Commits
Author SHA1 Message Date
stefanorigano (SRI) 9830ee75e0 [IMP] web_editor: restore bootstrap's default monospace font-family
Part of https://github.com/odoo/odoo/pull/55645
task-2157252

closes odoo/odoo#55645

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-08-07 22:14:22 +00:00
stefanorigano (SRI) 4c6775ee6c [IMP] web_editor: review dropdown design
Part of https://github.com/odoo/odoo/pull/55645
task-2157252
2020-08-07 22:14:22 +00:00
stefanorigano (SRI) b7098ddf2c [IMP] web_editor, website: review color combination preview
Part of https://github.com/odoo/odoo/pull/55645
task-2157252
2020-08-07 22:13:18 +00:00
stefanorigano (SRI) b8717c5b72 [FIX] web_editor: use border-radius on we-button-group edge buttons only
Part of https://github.com/odoo/odoo/pull/55645
task-2157252
2020-08-07 22:13:18 +00:00
stefanorigano (SRI) 36a8e2a791 [REF] web_editor, *: allow reusing links and buttons design
*: website

Part of https://github.com/odoo/odoo/pull/55645
task-2157252
2020-08-07 22:13:18 +00:00
stefanorigano (SRI) 0838a211fa [FIX] web_editor: fix typos on variable definitions
Part of https://github.com/odoo/odoo/pull/55645
task-2157252
2020-08-07 22:13:17 +00:00
stefanorigano (SRI) eb98420c11 [REM] web_editor: remove <img/> tag support in snippets library
Since v13, snippet's thumbs are rendered as background images using the
't-snippet' instruction.
This code was kept for back-compatibility.

Part of https://github.com/odoo/odoo/pull/55645
task-2157252
2020-08-07 22:13:17 +00:00
stefanorigano (SRI) bc7d021946 [IMP] web_editor: review range widget dimensions
Part of https://github.com/odoo/odoo/pull/55645
task-2157252
2020-08-07 22:13:17 +00:00
stefanorigano (SRI) 25acf9b176 [IMP] web_editor: change editor panel default font-weight
Part of https://github.com/odoo/odoo/pull/55645
task-2157252
2020-08-07 22:13:17 +00:00
stefanorigano (SRI) a0c324ee7b [IMP] web_editor: reposition snippets' thumbs
Part of https://github.com/odoo/odoo/pull/55645
task-2157252
2020-08-07 22:13:17 +00:00
stefanorigano (SRI) 8d5003db99 [IMP] web_editor: make some color adjustments for editor panel
Part of https://github.com/odoo/odoo/pull/55645
task-2157252
2020-08-07 22:13:17 +00:00
Samuel Degueldre b84e0af742 [IMP] web_editor, website: add background shapes snippet option
This commit adds a new snippet option allowing the user to choose one of
a series of SVG shapes as their background, or to be overlaid over the
background image of a snippet and to customize the colors of those
shapes.

Part of https://github.com/odoo/odoo/pull/53017
task-2210790

closes odoo/odoo#53017

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-08-07 15:34:45 +00:00
Samuel Degueldre c3dacfea05 [IMP] web_editor, website, *: create background-type toggler option
*: website_blog

Previously, background colors, images, and videos could all be applied
on the same section, such that the image can be used as a fallback for
the video, and the color as a fallback for the image. However, if you
wanted to change the background color behind the background image, the
background image would be removed. The background image and background
video also shared the same widget to pick the image or video.

This commit adds a background-type toggler, where the user can toggle
the background color, image and video individually. It also makes the
video picker into its own UserValueWidget, such that the user can pick
both an image and video without overriding the other.

Part of https://github.com/odoo/odoo/pull/53017
task-2210790
2020-08-07 15:34:45 +00:00
qsm-odoo 5c05592032 [IMP] web_editor: remove check icon for default active buttons
Before this commit, the enabled state of we-button element was a
"pressed-like" background + a check icon. This check icon was then
explicitely removed for we-button extension such as checkboxes and
button groups' buttons. Now, the enabled state does not contains that
check icon by default and it is explicitely added for selects' buttons.

Part of https://github.com/odoo/odoo/pull/53017
task-2210790
2020-08-07 15:15:52 +00:00
Samuel Degueldre 995b20fd6a [REF] web_editor: move normalizeColor function to we-utils for reuse
Part of https://github.com/odoo/odoo/pull/53017
task-2210790
2020-08-07 15:15:52 +00:00
qsm-odoo 201e10b338 [FIX] web_editor: remove useless snippet preview notification
Before this commit, the 'snippet_option_update' event was triggered
whether or not it was a preview update. In the preview update case,
nothing was done, ever. This commit removes the preview notification.
If it ever becomes useful, it can be restored at that moment.

This commit actually solves a bug introduced by [1]: that snippet update
notification is now triggered after a setTimeout delay to allow events
to bubble before the UI update it will trigger (in non preview mode).
The side effect this had was that, between each preview, the execution
chain was deferred of a setTimeout delay between each step (even though
previews do not update the UI). This was enough to allow for a paint
refresh.
So before this commit, if option C was selected, then the user hovered
option A then option B, the option C was visually re-enabled between A
and B. This won't be the case anymore after this commit.

Long story short: restore no-flickering when previewing options.

[1]: https://github.com/odoo/odoo/commit/2616c8950fd615561e720660bcc39e018f4061e4

Part of https://github.com/odoo/odoo/pull/55588

closes odoo/odoo#55588

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-08-07 08:52:19 +00:00
qsm-odoo 315ba1cfeb [IMP] web_editor, *: simplify UserValueWidget updates
*: website

Before this commit, editor widgets were updated by 3 successive calls
to methods 'setValue', 'updateUI' and '_updateUI'. The last two were
in charge of updating the UI depending of the value that was set, only
in specific condition (like "if the widget is not focused", "or not
previewed", ...).

This is now in fact useless: 'setValue' can be in charge of the UI
update. Indeed, when a value is set on a widget there is no reason to
not update its UI anymore. This was useful when the UI was updated on
preview, which is not the case anymore. This could also be useful for
widget with multiple options attached to them... but in those rare cases
updating the UI multiple times (one time per option method) should not
be a problem.

Part of https://github.com/odoo/odoo/pull/55588
2020-08-07 08:51:23 +00:00
qsm-odoo 6a258db1e9 [IMP] website, *: review the 'options' tab of editor panel
*: web_editor

This will more probably change again in the future but this is a first
step towards a hierarchized 'options' tab for the editor panel.

Part of https://github.com/odoo/odoo/pull/55529
2020-08-06 09:42:48 +00:00
qsm-odoo 90033c95ea [FIX] website: prevent page flickering when modal is opened
Commit [1] introduced a flickering when any modal was opened on the
frontend. Indeed, it introduced the possibility to go into "fullscreen"
mode, which makes the Odoo UI navbar and sidebar disappear. This is
animated: the padding of the `<body/>` element is using a CSS
transition... but when a Bootstrap modal opens, the padding-right is
changed to compensate the scrollbar removal. This change now being
animated, it creates a flickering.

A generic solution was made: only animate what is animated for the
duration of the fullscreen mode switch.

[1]: https://github.com/odoo/odoo/commit/0b0690a3934cedcab0d5e34373e8d40c2ab25660

closes odoo/odoo#55210

X-original-commit: ccadb20c82a651e9ef87e818b898f3e9a081cacd
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-07-30 14:50:04 +00:00
DramixDwandqsm-odoo bdcc1ea9e7 [IMP] website_blog: add tag from frontend (editor left panel)
Previously, you could only add a tag on a blog post from the backend.
Here we're adding a way to add them from the left-panel so that it's
easier for the user to add them.

The long term goal will not be to reimplement complex view of the
backend. This is actually already past the limit: we will need a way
to instantiate views from the backend in the frontend in the future.

Part of https://github.com/odoo/odoo/pull/52759
task-2267693

closes odoo/odoo#52759

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Co-authored-by: qsm-odoo <qsm@odoo.com>
2020-07-31 10:32:22 +00:00
stefanorigano (SRI)andqsm-odoo a1c9044ff7 [IMP] web_editor: render inline svg icons, apply css style
Render inline SVG inside buttons in order to allow CSS styling.

Define SVG icons design for normal/hover status applying the same colors
as default text buttons.

In order to support multi-colors SVGs, this commits will affect inner
shapes in different ways:
- '.o_graphic' shapes: will gets the UI btns colors (default/hover)
- '.o_subdle' shapes: will gets a slightly reduced default text color

Shapes without '.o_graphic/.o_subdle' classes will be rendered normally,
as defined in the svg code.

Part of https://github.com/odoo/odoo/pull/54913
task-2157252

Co-authored-by: qsm-odoo <qsm@odoo.com>
2020-07-30 11:12:03 +00:00
stefanorigano (SRI)andqsm-odoo c0a11148e0 [IMP] web_editor: review snippets thumbs design
Part of https://github.com/odoo/odoo/pull/55089
task-2157252

Co-authored-by: qsm-odoo <qsm@odoo.com>
2020-07-30 10:12:58 +00:00
qsm-odoo 430b5b669f [IMP] website, *: move all google map options to left panel
*: web_editor

-> Introduce the we-gpspicker widget and improve the way the gmap lib
    is loaded (for Odoo / multiple snippets / ...).

Part of https://github.com/odoo/odoo/pull/49101
task-2091396
2020-07-28 07:45:40 +00:00
Nicolas Lempereur fff793f7d7 [FIX] web_editor: carriage return in source mode
Enter keypress browser event were removed in 3c372d1da8.

It was reintroduced in text fields with d2f024d254 and this PR do the
same and reintroduce it for source mode of FieldHtml (`html` widget).

opw-2302605
closes #55066

closes odoo/odoo#55081

X-original-commit: b10ca1f6094b7c8e6e222aa0ea3d1f891e79379a
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2020-07-28 18:16:22 +00:00
6aa6c321a6 [IMP] web: remove min date limitation of year 1900
Before this commit, user could not selecta a date before year 1900.
This was an historical limitation due to python < 3.2 that didn't
support dates before 1900.

After this commit, user can select any date, user can select any
date from 01/01/0001.

taskID: 2166761
Fixes #41788
Closes #43055

closes odoo/odoo#51406

Signed-off-by: Géry Debongnie (ged) <ged@openerp.com>
Co-authored-by: Mohammed Shekha <msh@odoo.com>
Co-authored-by: Aaron Bohy <aab@odoo.com>
2020-07-28 14:02:10 +00:00
Benjamin Vray 4848c3aed7 [FIX] web_editor: fix overlay when scrolling
Since the new effects on the header, the overlays do not overlap
correctly after the page has been scrolled. Now we hide the overlays
during the scrolling and show/recompute it after the scrolling.

Part of https://github.com/odoo/odoo/pull/51446
task-2229127

X-original-commit: 209a94d8c4fcdc2e74860c9392fc14a35aec52ed
2020-07-28 12:20:16 +00:00
qsm-odoo d8e05bd64d [FIX] web_editor: restore custom snippet delete button
Clicking on the delete button of custom snippets was not working anymore
since [1]. Indeed, that button is placed inside the snippet thumbnail
which is the drag handle for the drag and drop feature. Since we now
start the drag as soon as the mouse is mousedown-ed, then the click on
the delete button cannot be intercepted.

This commit solves the problem by placing the delete button out of the
thumbnail element.

[1]: https://github.com/odoo/odoo/commit/ab72fe6c4681f62dc670f1cf1ac6fa47abd301f6

closes odoo/odoo#54770

X-original-commit: dac122935ac5c20526e529b09bf019f15a290d59
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-07-22 11:29:04 +00:00
qsm-odoo 85531edd1b [FIX] web_editor, *: restore editor UI for selected CSS variables
*: website

Commit [1] broke the UI for some options related to CSS variables when
using Chrome. The commit made sure the string-value CSS variables are
printed with quotes, so that the JS representation of the CSS values can
distinguish them (strings = strings with surrounding quotes, others like
colors, numbers, etc = strings without surrounding quotes). With chrome,
the printed surrounding single quotes are read as double quotes for
strange reasons though... so the value "a" was not considered equal to
the value 'a'.

This commit makes sure surrounding quotes are normalized. This is done
through a new utility function to read CSS variables. This also makes
sure the values are trimmed, and colors normalized.

[1]: https://github.com/odoo/odoo/commit/3a34e39caa8544059dfb1888edc29c62c3efde31

closes odoo/odoo#54757

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-07-22 10:31:28 +00:00
qsm-odoo 2a19a83762 [FIX] web_editor: fix small memory leak of destroyed snippet editors
In some complex cases, some snippet editors were destroyed but were
still referenced in memory.

E.g.

1) Reorder a snippet gallery image
2) The code is implemented in such a way that reordering create a new
   wrapping column for each image and moves the images in them.
3) This result in having the snippet editor linked to the old columns
   to be explicitely destroyed and removed from memory, but not the ones
   linked to the images as they are still in the DOM (just moved).
4) ... but the snippet editors linked to the images are children of
   the snippet editors linked to the columns. They are thus implicitely
   destroyed... but not removed from memory.

closes odoo/odoo#54643

X-original-commit: e4bf37c7fc892cdba57f0acac8e10f5698184e67
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-07-17 09:56:25 +00:00
qsm-odoo 004663f49e [FIX] web_editor: fix editor-lock after gallery image reordering again
The bug was already solved with [1] but was reintroduced later for
another reason. [1] solved the problem by checking that the current
option is not destroyed before asking for an UI update thanks to a
trigger_up (the option was destroyed because of image reordering). The
bug is now reintroduced for the same basic reason: a new trigger_up was
added between the potential option destroy and the destroy check, so
if the option is destroyed, that trigger_up fails to be triggered and
the editor is locked.

This commit solves the problem once and for all, hopefully, with a
more robust solution: only destroy options when none is being
processed. That way we ensure that all trigger_up occuring during an
option activation / update can be properly done.

[1]: https://github.com/odoo/odoo/commit/9eeea4c4107dc15984c475582d5ee58a17cd2568

X-original-commit: 7770430f78ee9e122a732fa042226d362467158e
2020-07-17 09:55:41 +00:00
qsm-odoo a30cc3402d [FIX] web_editor: restore background videos (new imagepicker UI)
Commit [1] broke the background videos feature. This is because the
'we-imagepicker' widget is now a sub-widget of a new 'we-button-group'
widget, acting as a selection choice (same as we-button in a we-select).
When selecting a selection choice, the appropriate option method is
called, with the selection value and params... but the params were
actually the ones of the 'we-button-group' element and not the ones
of the chosen widget 'we-imagepicker'.

This has never been important for we-select widgets but it could have
been. The problem is only solved here in master, generically for all
selection widgets (currently only 'we-select' and 'we-button-group').
The params received are the ones of the active sub-widget combined with
the ones of the selection widget.

[1]: https://github.com/odoo/odoo/commit/bb0cd4d5c82a9c2311f8c45ced0e9fdc0397d292

closes odoo/odoo#54629

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-07-17 08:45:06 +00:00
qsm-odoo b4ce6fbc01 [IMP] website, *: add prettier preview of border styles
*: web_editor

Part of https://github.com/odoo/odoo/pull/53930
task-2157252
2020-07-14 14:43:16 +00:00
qsm-odoo bb0cd4d5c8 [IMP] web_editor, *: review background color/image options UI
*: website, mass_mailing, website_blog, doc

Part of https://github.com/odoo/odoo/pull/53930
task-2157252
2020-07-14 14:43:16 +00:00
qsm-odoo d23a9c1954 [IMP] web_editor, *: introduce new "button group" editor widget
*: website, website_form

Basically work just as a we-select but with a different design.

Part of https://github.com/odoo/odoo/pull/53930
task-2157252
2020-07-14 14:43:16 +00:00
qsm-odooandBenjamin Vray b96c0eaf38 [IMP] web_editor: allow to use images in the left panel
Part of https://github.com/odoo/odoo/pull/53930
task-2157252

Co-authored-by: Benjamin Vray <bvr@odoo.com>
2020-07-14 14:43:16 +00:00
qsm-odoo f16113a06e [IMP] web_editor, *: review the editor design CSS
*: web, mass_mailing, website, website_form, website_sale

New CSS design of the editor (step 1/x).

This work is unfortunately far from perfect but is a first step towards
what we want. In particular, much CSS linked to elements that are meant
to be removed/moved in the upcoming weeks was done in a huge rush but
will thus hopefully be removed/reviewed before the 14.0 release.

As the design is now far more complex including gradients and other
"complex" elements, it was also very difficult to keep a design based on
css-variable so this system was removed, which means that the editor now
appears the same everywhere (backend, frontend, ...). The original goal
of this system was to have an adapted style for backend, frontend and
website visitors. Unfortunately, the current result was a very good
frontend editor design, a not-so-good backend editor design (for mass
mailing at least) and a totally unadapted design for the website
visitors. Making this perfect will be achievable by loading different
assets for those 3 areas and hopefully those assets will only differ by
the values of editor scss variables.

Part of https://github.com/odoo/odoo/pull/53930
task-2157252
2020-07-14 14:43:16 +00:00
qsm-odoo 6c31104fa9 [IMP] web_editor, *: remove snippet panel block icons
*: website, mass_mailing

Part of https://github.com/odoo/odoo/pull/53930
task-2157252
2020-07-14 14:43:16 +00:00
qsm-odoo 2616c8950f [FIX] web_editor: make sure user events bubble before updating UI
Example where this was a problem: when clicking on a field type for
website form, the whole option is rerendered and we never go through the
"close" method of the clicked we-select element (which will be important
in the future).

Part of https://github.com/odoo/odoo/pull/53930
task-2157252
2020-07-14 14:43:15 +00:00
qsm-odoo 8d57f21d7d [IMP] web_editor: hide we-row with no visible widgets
Part of https://github.com/odoo/odoo/pull/53930
task-2157252
2020-07-14 14:43:15 +00:00
qsm-odoo 4b826abcfb [IMP] web_editor, portal: review img/fa display rules mixup
Part of https://github.com/odoo/odoo/pull/53930
task-2157252
2020-07-14 14:43:15 +00:00
qsm-odoo b9ad60d5eb [FIX] web_editor, web: fix traceback with drag & drop when no header
Commit [1] introduced the bug by relying on the fact an element with
id=top is in the edited DOM. As the website header can be disabled, this
induced a crash as soon as the header was indeed disabled. Also, the
editor is not meant to edit the website only so we cannot rely at all
on the presence of a #top element.

[1]: https://github.com/odoo/odoo/commit/6df67a28c2f113572acd4a3db19ab6b1bd37e7da

closes odoo/odoo#54409

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-07-13 15:24:07 +00:00
Aaron Bohy af85bb5e13 [IMP] web,*: do not deploy services in tests
*mail,point_of_sale,web_editor,website

In the tests, required services are deployed for each test
independently. There is no need to have, in additon, all services
deployed globally. Worse, it could conflict and lead to unexpected
results.

This commit ensures services are no longer deployed globally in
tests. It turns the module 'web.env' into a declarative module with
no side-effect, by moving the service deployment to main.js, which
isn't added to the tests page.

Task 2287397

closes odoo/odoo#53817

Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2020-07-13 12:55:07 +00:00
qsm-odoo 513c410eb7 [FIX] web_editor: fix some 'unused variable' linter errors
Commit [1] introduced at least 2 linter errors, which this commit is
fixing.

[1]: https://github.com/odoo/odoo/commit/6df67a28c2f113572acd4a3db19ab6b1bd37e7da

Part of https://github.com/odoo/odoo/pull/54311
2020-07-10 09:51:41 +00:00
qsm-odoo 7be1429656 [REF] website, *: review how available fonts are defined in scss
*: web, web_editor

Instead of three lists + one map to define font information and user
choices saved as the index of the related fonts in those lists, the
fonts are now stored in an unique map <font-name> -> <data> and the
user choices are saved as the font name. This allow to have a visually
better definition of the fonts and allows to reorder fonts in the UI
without losing user customization (and actually simplify some code).

Unfortunately any user font customization < 14.0 will be lost, but this
is a small price to pay (users can still rechoose the same font in the
editor UI where they will go anyway to discover all the new shiny
features we are introducing there).

Part of https://github.com/odoo/odoo/pull/54065
task-2291398

closes odoo/odoo#54065

Related: odoo/design-themes#269
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-07-09 18:09:59 +00:00
qsm-odoo 3a34e39caa [REF] web_editor, *: review how html properties are printed (scss)
*: website

Make sure strings are printed quoted and null values are not printed.

Part of https://github.com/odoo/odoo/pull/54065
task-2291398
2020-07-09 18:09:59 +00:00
qsm-odoo 7489c1eef2 [FIX] web_editor: adapt test to new transparent.png location
A mockRPC was catching the route to transparent.png file which has been
relocated with [1]. This commit solves that unadapted mockRPC and makes
it easier to grep.

[1]: https://github.com/odoo/odoo/commit/94b59b1972e1a18e18dfcd6c2ded495391380b9a

Part of https://github.com/odoo/odoo/pull/54274
2020-07-09 16:20:14 +00:00
Laurent Stukkens (LTU) 6df67a28c2 [REF] web_editor,web: reuse the autoscroll on drag feature
Prior to this commit, the autoscroll on drag feature was accessible and only
used in the web_editor application.

After this commit, the autoscroll on drag feature will be available in the
web application and has been refactored in order to allow its usage
in other application (as for the sign application).

task-2280965

closes odoo/odoo#54072

Related: odoo/enterprise#11656
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-07-08 12:13:33 +00:00
jvm-odoo 0744c29d89 [FIX] web_editor: fix restored selection when closing link dialog
Issue

	- Runbot 13.0
	- Website > Contact Form
	- Double click on send button

	Link dialog opened, ok

	- Discard
	- Double click on send button
	- Click link button

	Traceback

Cause

	The next double click doesn't work
	because in rte.js RTEWidget._onMousedown
	we remove the target's contenteditable
	attribute and it's never added back.

	This is because we break if the element
	is not editable.

	The traceback is a side effect,
	since we can't select the button
	anymore, our selection is incorrect
	and getLinkInfo use range.create()
	try to use it.

Solution

	Break only if the target is not
	a '<a>' & non-editable element

OPW-2268595

closes odoo/odoo#54221

X-original-commit: 460bc102d0f7503207fb7bd11216c335795dd33b
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
Signed-off-by: Jason Van Malder (jvm) <jvm@odoo.com>
2020-07-08 11:38:48 +00:00
qsm-odoo ecefd51b63 [IMP] web_editor, *: add visibility check for editor sub-widgets
*: website

Update the visibility (from dependencies and _computeWidgetVisibility
function) for all widgets, including the ones which are children of main
widgets (e.g. new ability to hide some choices from a select depending
on other options).

closes odoo/odoo#54162

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-07-07 15:56:55 +00:00
qsm-odoo 89af38d917 [FIX] web_editor: prevent o-apply-colors to force important rules
The mixin was inconsistent: depending on the color, the created rules
were `!important` or not. This causes bugs with new master features.

closes odoo/odoo#54151

X-original-commit: 83d8c8b66bd9e58b08fe0aa66d2be7bab691ce3e
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-07-06 15:04:05 +00:00