title: Can't deselect a row that is selected by proxy using the DT package in R Shiny
body: <p>In my shiny app, a user can select a row in a data table which will display information about the row.  If the row is deselected, the information about the row will disappear.</p>
  
  <p>On occasion, a row will be selected by proxy, which will trigger the same information about the row to be displayed.  However, if the user clicks the row to deselect it, the row is still selected, even though it appears to be deselected.  The information about the row does not disappear, and if you were to change something about the table (switch page and go back, change page length, etc.), the row is highlighted again, indicating it is still selected.  Only after clicking it three times (phantom deselect, select, deselect) would the row truly be deselected.</p>
  
  <p>This seems like it is an issue with the DT package, but I'm not sure.  I'm using version 0.4 of DT and version 1.1.0 of shiny.  Here is a reproducible example:</p>
  
  <pre><code>library(shiny)
  library(DT)
  
  ui &lt;- fluidPage(
    fluidRow(DTOutput("table")),
    fluidRow(actionButton("select", "Select First Row by Proxy")),
    fluidRow(textOutput("selected_row"))
  )
  
  server &lt;- function(input, output, session) {
  
    output$table &lt;- renderDT({datatable(mtcars, selection = "single")})
  
    observeEvent(input$select, {
      selectRows(proxy = dataTableProxy("table"), selected = 1)
    })
  
    observeEvent(input$table_rows_selected, {
      output$selected_row &lt;- renderText(paste0("Row selected: ", input$table_rows_selected))
    })
  
  }
  
  shinyApp(ui = ui, server = server)
  </code></pre>