For a project, we have a table of data displayed in a web browser. There are two conflicting sets of operations the user could want to perform.

1. Selecting text or cells to copy to the clipboard

The browser handles this already with:

  • Double Click - highlight word
  • Triple Click - highlight all text in cell
  • CTRL+Click - Select Cell or add cell to selection
  • CTRL+Drag - Select range of cells
  • CTRL+SHIFT+Drag - Select range of cells with either entire column, or entire row, depending on initial drag direction

2. Selecting rows to perform operations on them

  • Click - Select a single row, forget any other selections
  • CTRL+Click - Add row to selection
  • CTRL+SHIFT+Click - Add range to selection

These are both useful function sets, but they rely on using the same modifier keys and clicking on the same elements.

We have considered using the concept of "modes" - The user can put it in text select mode or row select mode. But it feels too much like auto-cad and not the friendly user interface we're going for.

Are there any other options for performing different functions based on intent?

2 Answers 2


I personally don't even bother competing with the browser's keystrokes for selecting elements.

You probably wouldn't want to do this, but I would put select checkboxes on each row, just like how email applications work. This way, selecting and adding to selecting is done by one click.

The only downside is adding range to selection in one move is impossible. Users will have to click each desired row's checkbox every time.

If you decide to settle for checkboxes, you must provide the capability to select/deselect all.

Again, this isn't a total solution, but it certainly evades messing with browser selection keystrokes.


I think you and the previous post gave you the answer. Don't hijack native funtionality. These are conventions the user is most likely familiar with. If you use them for other reasons it will probably cause confusion.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.