From c9593862499e28c986aad194682ee6beabb463ed Mon Sep 17 00:00:00 2001 From: "Bastien Fafchamps (bafa)" Date: Wed, 30 Nov 2022 11:50:32 +0000 Subject: [PATCH] [REM] web: Remove preview of avatar in sidebar filter in calendar view Spec: Completely remove the avatar preview from the calendar sidebar. Purpose: The zoom on the employee's picture is not very smooth and can make an ugly scroll appear while it is being displayed. It brings little value and adds a lot of edge cases regarding sizing, positioning, etc. closes odoo/odoo#106887 Task: https://www.odoo.com/mail/view?model=project.task&res_id=2519822&access_token=44b0ba1f-a0c4-43b6-910f-eab462e7a320 Signed-off-by: Luca Vitali --- .../filter_panel/calendar_filter_panel.js | 33 ------------------ .../filter_panel/calendar_filter_panel.xml | 17 ---------- .../calendar/calendar_filter_panel_tests.js | 34 +------------------ 3 files changed, 1 insertion(+), 83 deletions(-) diff --git a/addons/web/static/src/views/calendar/filter_panel/calendar_filter_panel.js b/addons/web/static/src/views/calendar/filter_panel/calendar_filter_panel.js index ab7cc7fd958..2d990f5c05a 100644 --- a/addons/web/static/src/views/calendar/filter_panel/calendar_filter_panel.js +++ b/addons/web/static/src/views/calendar/filter_panel/calendar_filter_panel.js @@ -10,9 +10,6 @@ import { SelectCreateDialog } from "@web/views/view_dialogs/select_create_dialog import { Component, useState } from "@odoo/owl"; -class CalendarFilterTooltip extends Component {} -CalendarFilterTooltip.template = "web.CalendarFilterPanel.tooltip"; - let nextId = 1; export class CalendarFilterPanel extends Component { @@ -24,7 +21,6 @@ export class CalendarFilterPanel extends Component { this.addDialog = useOwnedDialogs(); this.orm = useService("orm"); this.popover = usePopover(); - this.removePopover = null; } getAutoCompleteProps(section) { @@ -155,13 +151,6 @@ export class CalendarFilterPanel extends Component { return this.state.collapsed[section.fieldName] || false; } - closeTooltip() { - if (this.removePopover) { - this.removePopover(); - this.removePopover = null; - } - } - onFilterInputChange(section, filter, ev) { this.props.model.updateFilters(section.fieldName, { [filter.value]: ev.target.checked, @@ -178,28 +167,6 @@ export class CalendarFilterPanel extends Component { this.props.model.updateFilters(section.fieldName, filters); } - onFilterMouseEnter(section, filter, ev) { - this.closeTooltip(); - if (!section.hasAvatar || !filter.hasAvatar) { - return; - } - - this.removePopover = this.popover.add( - ev.currentTarget, - CalendarFilterTooltip, - { section, filter }, - { - closeOnClickAway: false, - popoverClass: "o-calendar-filter--tooltip", - position: "top", - } - ); - } - - onFilterMouseLeave() { - this.closeTooltip(); - } - onFilterRemoveBtnClick(section, filter) { this.props.model.unlinkFilter(section.fieldName, filter.recordId); } diff --git a/addons/web/static/src/views/calendar/filter_panel/calendar_filter_panel.xml b/addons/web/static/src/views/calendar/filter_panel/calendar_filter_panel.xml index b73f3c3c3dc..74131b06bf1 100644 --- a/addons/web/static/src/views/calendar/filter_panel/calendar_filter_panel.xml +++ b/addons/web/static/src/views/calendar/filter_panel/calendar_filter_panel.xml @@ -73,8 +73,6 @@ class="o_calendar_filter_item w-100 position-relative mb-2" t-att-class="filter.colorIndex !== null ? 'o_cw_filter_color_' + filter.colorIndex : ''" t-att-data-value="filter.value" - t-on-mouseenter="(ev) => this.onFilterMouseEnter(section, filter, ev)" - t-on-mouseleave="() => this.onFilterMouseLeave(section, filter)" > - -
-
-
- -
-
-
- diff --git a/addons/web/static/tests/views/calendar/calendar_filter_panel_tests.js b/addons/web/static/tests/views/calendar/calendar_filter_panel_tests.js index a2c86de8c4a..d34363a45cb 100644 --- a/addons/web/static/tests/views/calendar/calendar_filter_panel_tests.js +++ b/addons/web/static/tests/views/calendar/calendar_filter_panel_tests.js @@ -1,7 +1,7 @@ /** @odoo-module **/ import { CalendarFilterPanel } from "@web/views/calendar/filter_panel/calendar_filter_panel"; -import { click, getFixture, triggerEvent } from "../../helpers/utils"; +import { click, getFixture } from "../../helpers/utils"; import { makeEnv, makeFakeModel, mountComponent } from "./helpers"; let target; @@ -178,36 +178,4 @@ QUnit.module("CalendarView - FilterPanel", ({ beforeEach }) => { "partner_ids all false", ]); }); - - QUnit.test("hover filter opens tooltip", async (assert) => { - await start({ - services: { - popover: { - start: () => ({ - add: (target, _, props) => { - assert.step(props.filter.label); - assert.step("" + props.filter.hasAvatar); - assert.step("" + props.filter.value); - return () => { - assert.step("popOver Closed"); - }; - }, - }), - }, - }, - }); - - const section = target.querySelectorAll(".o_calendar_filter")[0]; - const filters = section.querySelectorAll(".o_calendar_filter_item"); - - await triggerEvent(filters[0], null, "mouseenter"); - assert.verifySteps(["Mitchell Admin", "true", "3"]); - await triggerEvent(filters[0], null, "mouseleave"); - assert.verifySteps(["popOver Closed"]); - - await triggerEvent(filters[3], null, "mouseenter"); - assert.verifySteps([]); - await triggerEvent(filters[3], null, "mouseleave"); - assert.verifySteps([]); - }); });