ids theme: default to slide transition

Slides in IDS-themed decks now slide in instead of rotating in with
reveal.js' convex effect. Only applies when no explicit transition is
requested; the formal default stays "convex" for the other themes.

Change-Id: I8932517bdf97792a39fd053b6d647a4c422dc38f
diff --git a/NEWS.md b/NEWS.md
index 76f8bd5..9734d2b 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -2,6 +2,8 @@
 
 ## OTHER CHANGES
 
+- `ids` theme: slide transitions now default to `slide` (slides slide in horizontally instead of the reveal.js default `convex` rotation). Set `transition` explicitly to use another effect.
+
 - `ids` theme: second- and higher-level list items are now rendered progressively smaller (each nesting level at 80% of its parent), emphasising list hierarchy as in the IDS reference decks.
 
 - `ids` theme: list markers are now drawn as CSS boxes via `li::before` (dot/square/ring per level; ordered lists use the `list-item` counter honoring `start`/`value`), so the bullet column is deterministically flush with the slide title's left edge in every browser and at every window size, instead of relying on engine-dependent native `::marker` anchoring.
diff --git a/R/revealjs_presentation.R b/R/revealjs_presentation.R
index 7d8c082..8d1c9d8 100644
--- a/R/revealjs_presentation.R
+++ b/R/revealjs_presentation.R
@@ -198,6 +198,12 @@
   }
 
   # transition
+  if (missing(transition) && identical(theme, "ids")) {
+    # IDS theme: slide the slides in instead of rotating them (reveal.js'
+    # own default, convex), unless the user explicitly asked for something
+    # else. The formal default has to stay "convex" for the other themes.
+    transition <- "slide"
+  }
   transition <- match.arg(transition, revealjs_transitions())
   if (identical(transition, "default")) {
     # revealjs default is convex