title: Angular single selection list with Shift/Alt/keyboard support
body: <p>I'm developing a web application and within this application I'm trying to display a list of mails with identical functionality and look as the list of mails in outlook.</p>
  
  <p>I need the items to be selectable by a mouse click. Each mouse click will change the selected mail:</p>
  
  <p><strong>Functionality example 1:</strong></p>
  
  <p><img src="https://i.stack.imgur.com/ScIjw.png" alt="Functionality example 1"></p>
  
  <p>After a mouse click I need to be able to select more mails, using the keyboard (shift / alt / ctrl) and the mouse.</p>
  
  <p><strong>Functionality example 2:</strong></p>
  
  <p><img src="https://i.stack.imgur.com/Bi86d.png" alt="Functionality example 2"></p>
  
  <p>In example 2, I chose 'Test 5' mail. Then I selected two more mails using shift+down arrow. The email whose content is presented should still be 'Test 5'. Also during the screenshot the mouse hovered over 'Test 2' email and therefore its style is different.</p>
  
  <p>How would you develop such a list with angular material? Any suggestions would be deeply appreciated as I'm new to angular and angular material </p>