diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/input/Editor.kt b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/input/Editor.kt
index b02c6fb18cd2266bb42c7bb1e9c60b6bf544d91a..4ecee7ba83c7a8f8a2d1b8ae4a96787255636cb4 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/input/Editor.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/input/Editor.kt
@@ -198,26 +198,47 @@ class Editor(
       formatHandler.toggleBold(chatline.selection)
       updateButtons(chatline.selection)
     }
+    TooltipCompat.setTooltipText(boldButton, boldButton.contentDescription)
+
     italicButton.setOnClickListener {
       formatHandler.toggleItalic(chatline.selection)
       updateButtons(chatline.selection)
     }
+    TooltipCompat.setTooltipText(italicButton, italicButton.contentDescription)
+
     underlineButton.setOnClickListener {
       formatHandler.toggleUnderline(chatline.selection)
       updateButtons(chatline.selection)
     }
+    TooltipCompat.setTooltipText(underlineButton, underlineButton.contentDescription)
+
     strikethroughButton.setOnClickListener {
       formatHandler.toggleStrikethrough(chatline.selection)
       updateButtons(chatline.selection)
     }
+    TooltipCompat.setTooltipText(strikethroughButton, strikethroughButton.contentDescription)
+
     monospaceButton.setOnClickListener {
       formatHandler.toggleMonospace(chatline.selection)
       updateButtons(chatline.selection)
     }
+    TooltipCompat.setTooltipText(monospaceButton, monospaceButton.contentDescription)
+
+    foregroundButton.setOnClickListener {
+
+    }
+    TooltipCompat.setTooltipText(foregroundButton, foregroundButton.contentDescription)
+
+    backgroundButton.setOnClickListener {
+
+    }
+    TooltipCompat.setTooltipText(backgroundButton, backgroundButton.contentDescription)
+
     clearButton.setOnClickListener {
       formatHandler.clearFormatting(chatline.selection)
       updateButtons(chatline.selection)
     }
+    TooltipCompat.setTooltipText(clearButton, clearButton.contentDescription)
 
     chatline.setOnKeyListener { _, keyCode, event ->
       if (event.isCtrlPressed && !event.isAltPressed) when (keyCode) {
diff --git a/app/src/main/res/drawable-v21/bg_menuitem_rounded_dark.xml b/app/src/main/res/drawable-v21/bg_menuitem_rounded_dark.xml
new file mode 100644
index 0000000000000000000000000000000000000000..64a9f0c0196b46a2e53a214d6ea355c1034be0ea
--- /dev/null
+++ b/app/src/main/res/drawable-v21/bg_menuitem_rounded_dark.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+  <item android:state_selected="true">
+    <shape android:shape="rectangle">
+      <solid android:color="@color/ripple_dark" />
+      <corners android:radius="@dimen/button_corner_radius" />
+    </shape>
+  </item>
+  <item>
+    <ripple android:color="@color/ripple_dark">
+      <item android:id="@android:id/mask">
+        <shape>
+          <solid android:color="#fff" />
+          <corners android:radius="@dimen/button_corner_radius" />
+        </shape>
+      </item>
+    </ripple>
+  </item>
+</selector>
\ No newline at end of file
diff --git a/app/src/main/res/drawable-v21/bg_menuitem_rounded_light.xml b/app/src/main/res/drawable-v21/bg_menuitem_rounded_light.xml
new file mode 100644
index 0000000000000000000000000000000000000000..2eb9a90e561b126ab5d8d40c4dfbc9be64982576
--- /dev/null
+++ b/app/src/main/res/drawable-v21/bg_menuitem_rounded_light.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+  <item android:state_selected="true">
+    <shape>
+      <solid android:color="@color/ripple_light" />
+      <corners android:radius="@dimen/button_corner_radius" />
+    </shape>
+  </item>
+  <item>
+    <ripple android:color="@color/ripple_light">
+      <item android:id="@android:id/mask">
+        <shape>
+          <solid android:color="#fff" />
+          <corners android:radius="@dimen/button_corner_radius" />
+        </shape>
+      </item>
+    </ripple>
+  </item>
+</selector>
\ No newline at end of file
diff --git a/app/src/main/res/drawable/bg_menuitem_rounded_dark.xml b/app/src/main/res/drawable/bg_menuitem_rounded_dark.xml
new file mode 100644
index 0000000000000000000000000000000000000000..fade83ea8849fb6bffdd47c65d62b6812cfac5e8
--- /dev/null
+++ b/app/src/main/res/drawable/bg_menuitem_rounded_dark.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+  <item android:state_selected="true">
+    <shape android:shape="rectangle">
+      <solid android:color="@color/ripple_dark" />
+      <corners android:radius="@dimen/button_corner_radius" />
+    </shape>
+  </item>
+  <item android:state_pressed="true">
+    <shape android:shape="rectangle">
+      <solid android:color="@color/ripple_dark" />
+      <corners android:radius="@dimen/button_corner_radius" />
+    </shape>
+  </item>
+</selector>
\ No newline at end of file
diff --git a/app/src/main/res/drawable/bg_menuitem_rounded_light.xml b/app/src/main/res/drawable/bg_menuitem_rounded_light.xml
new file mode 100644
index 0000000000000000000000000000000000000000..19c7b13a98aa7451a854f702e8ed7906604e03b8
--- /dev/null
+++ b/app/src/main/res/drawable/bg_menuitem_rounded_light.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+  <item android:state_selected="true">
+    <shape android:shape="rectangle">
+      <solid android:color="@color/ripple_light" />
+      <corners android:radius="@dimen/button_corner_radius" />
+    </shape>
+  </item>
+  <item android:state_pressed="true">
+    <shape android:shape="rectangle">
+      <solid android:color="@color/ripple_light" />
+      <corners android:radius="@dimen/button_corner_radius" />
+    </shape>
+  </item>
+</selector>
\ No newline at end of file
diff --git a/app/src/main/res/layout/layout_editor.xml b/app/src/main/res/layout/layout_editor.xml
index b74c913372b659d4dc258bc103e773bfec172b67..87b97cf1ff396c343b8e30e7870377cf8b1cee92 100644
--- a/app/src/main/res/layout/layout_editor.xml
+++ b/app/src/main/res/layout/layout_editor.xml
@@ -69,7 +69,6 @@
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:background="?attr/colorBackgroundCard"
-    android:theme="?attr/formatBarTheme"
     app:layout_constraintBottom_toBottomOf="parent">
 
     <android.support.v7.widget.Toolbar
diff --git a/app/src/main/res/layout/widget_formatting.xml b/app/src/main/res/layout/widget_formatting.xml
index 00c1af122add435c92c9899a523c0f1a795e4c19..e619482d9b399e492c0f2f49a9b985b3691c2b62 100644
--- a/app/src/main/res/layout/widget_formatting.xml
+++ b/app/src/main/res/layout/widget_formatting.xml
@@ -8,8 +8,9 @@
   <android.support.v7.widget.AppCompatImageButton
     android:id="@+id/action_format_bold"
     style="@style/Widget.Button.Format"
+    android:contentDescription="@string/label_bold"
     app:srcCompat="@drawable/ic_format_bold"
-    app:tint="?colorTextPrimary" />
+    app:tint="?colorControlNormal" />
 
   <Space
     android:layout_width="2dp"
@@ -18,8 +19,9 @@
   <android.support.v7.widget.AppCompatImageButton
     android:id="@+id/action_format_italic"
     style="@style/Widget.Button.Format"
+    android:contentDescription="@string/label_italic"
     app:srcCompat="@drawable/ic_format_italic"
-    app:tint="?colorTextPrimary" />
+    app:tint="?colorControlNormal" />
 
   <Space
     android:layout_width="2dp"
@@ -28,8 +30,9 @@
   <android.support.v7.widget.AppCompatImageButton
     android:id="@+id/action_format_underline"
     style="@style/Widget.Button.Format"
+    android:contentDescription="@string/label_underline"
     app:srcCompat="@drawable/ic_format_underline"
-    app:tint="?colorTextPrimary" />
+    app:tint="?colorControlNormal" />
 
   <Space
     android:layout_width="2dp"
@@ -38,8 +41,9 @@
   <android.support.v7.widget.AppCompatImageButton
     android:id="@+id/action_format_strikethrough"
     style="@style/Widget.Button.Format"
+    android:contentDescription="@string/label_strikethrough"
     app:srcCompat="@drawable/ic_format_strikethrough"
-    app:tint="?colorTextPrimary" />
+    app:tint="?colorControlNormal" />
 
   <Space
     android:layout_width="2dp"
@@ -48,8 +52,9 @@
   <android.support.v7.widget.AppCompatImageButton
     android:id="@+id/action_format_monospace"
     style="@style/Widget.Button.Format"
+    android:contentDescription="@string/label_bold"
     app:srcCompat="@drawable/ic_format_monospace"
-    app:tint="?colorTextPrimary" />
+    app:tint="?colorControlNormal" />
 
   <Space
     android:layout_width="2dp"
@@ -62,12 +67,13 @@
 
     <android.support.v7.widget.AppCompatImageButton
       android:id="@+id/action_format_foreground"
+      style="@style/Widget.Button.Format"
+      android:contentDescription="@string/label_foreground"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
-      android:background="?backgroundMenuItem"
       android:paddingBottom="4dp"
       app:srcCompat="@drawable/ic_format_foreground"
-      app:tint="?colorTextPrimary" />
+      app:tint="?colorControlNormal" />
 
     <View
       android:id="@+id/ic_format_foreground_preview"
@@ -75,7 +81,7 @@
       android:layout_height="4dp"
       android:layout_gravity="center_horizontal|bottom"
       android:layout_margin="8dp"
-      android:background="?colorTextPrimary" />
+      android:background="?colorForeground" />
 
   </FrameLayout>
 
@@ -90,12 +96,13 @@
 
     <android.support.v7.widget.AppCompatImageButton
       android:id="@+id/action_format_background"
+      style="@style/Widget.Button.Format"
+      android:contentDescription="@string/label_background"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
-      android:background="?backgroundMenuItem"
       android:paddingBottom="4dp"
       app:srcCompat="@drawable/ic_format_background"
-      app:tint="?colorTextPrimary" />
+      app:tint="?colorControlNormal" />
 
     <View
       android:id="@+id/ic_format_background_preview"
@@ -103,7 +110,7 @@
       android:layout_height="4dp"
       android:layout_gravity="center_horizontal|bottom"
       android:layout_margin="8dp"
-      android:background="?colorTextPrimary" />
+      android:background="?colorBackground" />
 
   </FrameLayout>
 
@@ -114,6 +121,7 @@
   <android.support.v7.widget.AppCompatImageButton
     android:id="@+id/action_format_clear"
     style="@style/Widget.Button.Format"
+    android:contentDescription="@string/label_clear_formatting"
     app:srcCompat="@drawable/ic_format_clear"
-    app:tint="?colorTextPrimary" />
+    app:tint="?colorControlNormal" />
 </LinearLayout>
\ No newline at end of file
diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml
index 123ee8f5dc465c51cef33d799e3096a8bbd20863..b178dcda03b0f30e4fd6f0dc1c087a24b442b34f 100644
--- a/app/src/main/res/values/attrs.xml
+++ b/app/src/main/res/values/attrs.xml
@@ -158,6 +158,7 @@
 
   <!-- Menu Items -->
   <attr name="backgroundMenuItem" format="reference" />
+  <attr name="backgroundMenuItemRounded" format="reference" />
 
   <!-- InsetLayouts -->
   <attr name="insetBackground" format="color|reference" />
diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml
index 0f762c4fbc4c475e66227ad810ec52da6eafbc66..685b30aea1dabd7c97f02be5fcc7302490bde046 100644
--- a/app/src/main/res/values/dimens.xml
+++ b/app/src/main/res/values/dimens.xml
@@ -7,4 +7,6 @@
   <dimen name="autocomplete_max_height">96dp</dimen>
 
   <dimen name="max_content_width">480dp</dimen>
+
+  <dimen name="button_corner_radius">2dp</dimen>
 </resources>
diff --git a/app/src/main/res/values/styles_widgets.xml b/app/src/main/res/values/styles_widgets.xml
index 3d7def74e09c12501bf49fd87743b77d092c68f2..ab9c1fb30a793c6786239f9cd3ae8a7df6ea6fba 100644
--- a/app/src/main/res/values/styles_widgets.xml
+++ b/app/src/main/res/values/styles_widgets.xml
@@ -67,7 +67,7 @@
     <item name="android:layout_width">48dp</item>
     <item name="android:layout_height">48dp</item>
     <item name="android:layout_gravity">center</item>
-    <item name="android:background">?backgroundMenuItem</item>
+    <item name="android:background">?backgroundMenuItemRounded</item>
   </style>
 
   <!-- NavigationDrawerLayout -->
diff --git a/app/src/main/res/values/themes_base.xml b/app/src/main/res/values/themes_base.xml
index a05ed7a5447e1c991b788e8ceb4e72d82462ee2b..8d37a28cd9147a44c00f307527e33226027b2a3d 100644
--- a/app/src/main/res/values/themes_base.xml
+++ b/app/src/main/res/values/themes_base.xml
@@ -6,6 +6,7 @@
     <item name="colorAccent">@color/colorAccent</item>
 
     <item name="backgroundMenuItem">@drawable/bg_menuitem_dark</item>
+    <item name="backgroundMenuItemRounded">@drawable/bg_menuitem_rounded_dark</item>
   </style>
 
   <style name="Theme.AppTheme.Light" parent="Theme.AppCompat.Light.DarkActionBar">
@@ -14,6 +15,7 @@
     <item name="colorAccent">@color/colorAccent</item>
 
     <item name="backgroundMenuItem">@drawable/bg_menuitem_light</item>
+    <item name="backgroundMenuItemRounded">@drawable/bg_menuitem_rounded_light</item>
   </style>
 
   <style name="Theme.AppTheme.NoActionBar" parent="Theme.AppTheme">
@@ -21,6 +23,7 @@
     <item name="windowNoTitle">true</item>
 
     <item name="backgroundMenuItem">@drawable/bg_menuitem_dark</item>
+    <item name="backgroundMenuItemRounded">@drawable/bg_menuitem_rounded_dark</item>
   </style>
 
   <style name="Theme.AppTheme.Light.NoActionBar" parent="Theme.AppTheme.Light">
@@ -28,6 +31,7 @@
     <item name="windowNoTitle">true</item>
 
     <item name="backgroundMenuItem">@drawable/bg_menuitem_light</item>
+    <item name="backgroundMenuItemRounded">@drawable/bg_menuitem_rounded_light</item>
   </style>
 
   <style name="Theme.Base.ChatTheme" parent="Theme.AppTheme.NoActionBar" />
@@ -47,6 +51,7 @@
     <item name="actionBarPopupTheme">@style/Widget.PopupOverlay</item>
 
     <item name="backgroundMenuItem">@drawable/bg_menuitem_dark</item>
+    <item name="backgroundMenuItemRounded">@drawable/bg_menuitem_rounded_dark</item>
 
     <item name="windowActionModeOverlay">true</item>
 
@@ -180,6 +185,7 @@
     <item name="actionBarPopupTheme">@style/Widget.PopupOverlay.Light</item>
 
     <item name="backgroundMenuItem">@drawable/bg_menuitem_light</item>
+    <item name="backgroundMenuItemRounded">@drawable/bg_menuitem_rounded_light</item>
 
     <item name="windowActionModeOverlay">true</item>