Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Productivity
  3. Chatter Position v 19.0
  4. Sales Conditions FAQ

Chatter Position

by Kameos https://kameos.be
Odoo
v 19.0 Third Party 3
Download for v 19.0 Deploy on Odoo.sh
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies Discuss (mail)
Lines of code 415
Technical Name chatter_position
LicenseLGPL-3
Websitehttps://kameos.be
Versions 17.0 18.0 19.0
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies Discuss (mail)
Lines of code 415
Technical Name chatter_position
LicenseLGPL-3
Websitehttps://kameos.be
Versions 17.0 18.0 19.0
Odoo 19 module by Kameos

Chatter Position

Toggle the Odoo chatter between side and bottom layouts. Drag the splitter to fine-tune the form/chatter ratio.

Free  Â·  LGPL-3  Â·  Compatible Odoo 19 Community & Enterprise

What it is

Chatter Position adds a small toggle button to every chatter topbar that switches the chatter between two layouts: side (form left, chatter right) and bottom (full-width chatter under the form sheet). In side mode, a draggable splitter lets the user resize the form and chatter panes in real time.

By default Odoo chooses the layout for you based on the viewport width: side on very wide screens, bottom otherwise. That breakpoint is fixed and rarely matches what users actually want. This module hands the choice back to the user, on any screen size, with zero database changes.

Key features

One-click toggle

A small button is injected into every chatter topbar, right next to the search icon. Click it to flip the chatter between side and bottom layouts. The icon updates to reflect the next action.

Draggable splitter

In side mode, a vertical splitter sits between the form sheet and the chatter. Drag it to resize the panes. The ratio is stored per browser and reused across sessions.

Reset on double-click

Messed up the layout while dragging? Double-click the splitter to snap back to a clean 60/40 ratio with a smooth 180 ms transition.

Always usable when narrow

A hard minimum width on the chatter (240 px) keeps Send Message and Log Note on the same row. Secondary buttons wrap to a second row instead of getting hidden behind a horizontal scrollbar.

Smooth transitions

180 ms transition on toggle and on splitter reset. The drag itself stays instant, frame by frame, for a snappy native feel.

Zero database footprint

No model, no controller, no XML view, no menu, no migration. Layout choice and split ratio live in the browser localStorage only. Nothing is sent to the server.

Works at any viewport

The module overrides Odoo's o_xxl_form_view breakpoint logic so the user's choice wins on small laptops, ultra-wide monitors, and everything between.

Public service for extensions

A chatterPosition service is exposed in the registry so other modules can read or toggle the layout programmatically without touching the DOM directly.

Three things people use it for

  1. Side chatter on small laptops. Native Odoo collapses the chatter to the bottom below the XXL breakpoint, even when a 13" or 14" laptop has plenty of horizontal room. This module lets users keep the side layout regardless of screen size.
  2. Bottom chatter on ultra-wide monitors. On 27"+ screens the side chatter eats real estate that the form could use. Power users who prefer a wide form sheet flip the chatter to the bottom permanently.
  3. Per-user layout preferences. Two colleagues sharing the same database get to keep their own preferred layout without arguing about CSS overrides — each browser stores its own setting.

How to use it

  1. Install the module — no setup or configuration screen.
  2. Open any record with a chatter (a contact, an order, an invoice…).
  3. Look at the chatter topbar: a new toggle icon appears next to the search button.
  4. Click it once to flip the chatter to the bottom. Click it again to flip back to the side.
  5. In side mode, drag the vertical splitter to resize the form and chatter panes.
  6. Double-click the splitter to reset to 60/40.

The choice and the ratio are stored in localStorage under the keys chatter_position and chatter_split_ratio. Clearing site data resets the preferences to default (side, 60/40).

For developers

The module exposes a public service registered as chatterPosition. Any OWL component can read the current layout or toggle it programmatically:

/** @odoo-module **/
import { Component } from "@odoo/owl";
import { useService } from "@web/core/utils/hooks";

class MyComponent extends Component {
    setup() {
        this.chatterPosition = useService("chatterPosition");
    }
    isSided() {
        return this.chatterPosition.getPosition() === "sided";
    }
    flip() {
        this.chatterPosition.toggle();
    }
}

The module patches FormController and FormRenderer to override Odoo's native layout choice. No models, no controllers, no migrations — everything lives in static/src/js/chatter_position.js and static/src/css/chatter_position.css.

Technical notes

Compatibility Odoo 19 Community and Enterprise
Dependencies mail, web
License LGPL-3
Database footprint None — no model, no controller, no XML view, no menu, no migration
Persistence Browser localStorage keys chatter_position and chatter_split_ratio
Public service chatterPosition — getPosition(), toggle()
Frontend Patches on FormController and FormRenderer, plain CSS, OWL service registration

About the author

Chatter Position is built and maintained by Kameos, an Odoo integrator based in Belgium. We work with SMEs and non-profits on Odoo Enterprise integrations, custom module development, and Flutter mobile apps connected to Odoo.

Email  info@kameos.be Visit  kameos.be Contact form

Found a bug or missing a feature? Send us a message — we usually reply within one business day.

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Please choose a rating from 1 to 5 for this module.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with