Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
V
vte
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 100
    • Issues 100
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Operations
    • Operations
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
  • GNOME
  • vte
  • Issues
  • #36

Closed
Open
Opened Sep 02, 2018 by Martin Hostettler@textshell

Odd choice for "legacy mode" mouse position/event reporting range.

In Terminal::feed_mouse_event vte uses 231 as the maximum unencoded value to report in legacy mode.

        } else if (cx <= 231 && cy <= 231) {
                /* legacy mode */
                len = g_snprintf(buf, sizeof(buf), _VTE_CAP_CSI "M%c%c%c", 32 + cb, 32 + (guchar)cx, 32 + (guchar)cy);

32 + 231 overflows the char to (effectively) 7. The boundary seems odd and is different than other emulators do this.

xterm stops reporting details with 223 but uses '\0' as indication that an overflow occurred.

rxvt-unicode freely wraps without limit.

konsole uses a condition similar to vte but with 223 as highest reported unencoded value which will be encoded as 255 and thus avoids wrapping around.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: GNOME/vte#36