Skip to content

Conversations side by side ​

Switch on Show conversations side by side under Conversation to show several conversations next to each other: a lane per value of the Conversation / thread dimension, each headed by its name and how many messages it has.

It needs a Conversation / thread dimension. Without one, a banner says so — Conversations side by side need a Conversation / thread dimension. — and the conversation is shown as one.

Which conversations get a lane ​

The ones with the latest activity, most recent on the left: the latest Timestamp (numeric) first, and, for conversations without one, the latest place in the data.

  • Most conversations side by side, under Conversation — 4 by default, up to 10 — caps how many. A narrow object fits fewer: each lane is at least 220 pixels wide.
  • When some conversations have no lane, a line above the lanes says so — 4 of 12 conversations — and its tooltip says how to choose: select conversations, and the lanes show those.
  • Messages without a thread share a lane of their own, (no conversation), ranked like any other.

With conversations side by side, Maximum messages keeps the newest rows, whatever Message order says, so a limit that cuts the rows short leaves out older conversations rather than the latest. The conversations are then counted among the rows read, and the line above the lanes always says so: 4 of 12 conversations among the newest 5,000 of 9,000 rows, or 3 conversations among the newest 5,000 of 9,000 rows when every conversation read has a lane — though an older conversation that was not read at all may still be missing one.

Scrolling ​

Conversation → Scrolling decides how the lanes move.

Linked — rows line up in time, the default, gives all the lanes one scrollbar and lines them up in time. Messages are laid out in rows: a row holds at most one message per lane, a row never crosses a day, and messages side by side were sent within Group messages within (seconds) of the row's first message — 120 by default, under Appearance. After a longer pause, a message starts a row of its own, below. A quiet lane shows gaps while another talks. With Date separators on, each day's heading stays in view while its rows scroll.

Free — each conversation scrolls on its own gives each lane its own list and scrollbar, packed without gaps. Each keeps its place when a selection changes the others.

Reaching the conversations that do not fit ​

Lanes do not scroll sideways. When there are more conversations than fit, the bar steps through them a windowful at a time, down the same ranking: ◂ 1–4 of 12 ▸.

  • ◂ — Earlier conversations — moves towards the most recently active, at the start of the ranking; ▸ — Later conversations — towards the ones whose activity is older.
  • The window stays where you put it. A selection that leaves fewer conversations pulls it back to the last full window when it would otherwise run off the end, and if the conversations come back, so does the window.
  • The stepper appears only when there are more conversations than fit, and never in an export.

Selecting a conversation from its lane header ​

A click on a lane's header selects that conversation in the Conversation / thread field, through the object's own selection mode — exactly as a filter pane works:

  1. Click a header. It turns green, and the lanes stay as they are.
  2. Click another, and another. Each one picked is green; a second click on a green header takes it back.
  3. Confirm with the tick, or cancel with the cross, as for any Qlik Sense object.

The lanes deliberately do not change while you are choosing: if the board rearranged itself after the first header, there would be nothing left to pick for the second. The header's tooltip says what it does — Selects this conversation. Pick several, then confirm.

  • The (no conversation) lane is not clickable. It collects the messages without a thread value, so there is nothing behind it to select.
  • A thread dimension built on an expression works too. The object selects in the column, not by a field's name.
  • A header selects nothing while the sheet is being edited, in an image or PDF export, or while Qlik Sense holds the object inactive.

When Qlik Sense refuses the click ​

A header whose field is locked cannot be selected. The click then says so in the corner of the object — for a thread field called ThreadId:

Qlik Sense did not select in ThreadId; the field may be locked

— and the selection is cancelled, the confirm bar with it. Any header already picked goes back to how it was: when Qlik Sense refuses one value in a selection, it lets go of every value picked in that selection, so there would be nothing left to confirm. Where the thread dimension is an expression, the notice names the dimension instead of a field.

Density in narrow lanes ​

Automatic density follows the space each conversation has, and with lanes that space is one lane, not the whole object — so it usually means Ultra compact: no avatars, 11-pixel text, the tightest spacing.

A lane is at least 220 pixels wide and the object fits as many as it can, up to Most conversations side by side, so most lanes end up between 220 and 320 pixels wide — and at 320 pixels or less, automatic density is Ultra compact. An 810-pixel object showing three conversations gets three 270-pixel lanes, all ultra compact.

Lanes come out wider, and roomier, when the object is wide for its Most conversations side by side, or when there are fewer conversations than would fit. A 1,400-pixel object with four lanes gives 350-pixel lanes at Compact; the same object with two conversations gives 700-pixel lanes at Comfortable, when it is more than 260 pixels high.

This is deliberate: a lane is as narrow as a small tile, and is drawn like one. For avatars and more room, set Appearance → Density to Compact or Comfortable: a density set there is used as it is, in every lane. Text size, also under Appearance, makes the text larger on its own, but brings no avatars back — only the density does.

Everything else, across the lanes ​

  • The two-sided layout sides each conversation on its own — see Two-sided layout.
  • Search and stepping go through the matches in time order with linked scrolling, and lane by lane with free scrolling, where each lane has an overview ruler of its own.
  • The arrow keys: ↑ and ↓ move within a lane, ← and → to the next lane — to its message in the same row with linked scrolling, or to the one at the top of its view with free scrolling.
  • Details open as an overlay rather than a side pane, which would squeeze every lane — unless Show details as says Side pane.
  • Highlight counts in the legend count the lanes shown.
  • Copying copies the lanes shown, one after another — see Copying and exporting.
  • An image or PDF export shows the conversations the reader had on screen.

Released under the MIT licence.