diff --git a/res/layout/dialog_file_name.xml b/res/layout/dialog_file_name.xml
index 1f11001..89261c5 100644
--- a/res/layout/dialog_file_name.xml
+++ b/res/layout/dialog_file_name.xml
@@ -20,19 +20,22 @@
     android:fitsSystemWindows="true">
 
     <com.google.android.material.textfield.TextInputLayout
-        android:id="@+id/rename_input_wrapper"
+        android:id="@+id/input_wrapper"
         android:orientation="vertical"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:layout_marginStart="?android:attr/listPreferredItemPaddingStart"
         android:layout_marginEnd="?android:attr/listPreferredItemPaddingEnd"
-        android:layout_centerInParent="true" >
+        android:layout_marginTop="@dimen/dialog_content_padding_top"
+        android:layout_marginBottom="@dimen/dialog_content_padding_bottom"
+        android:layout_centerInParent="true"
+        style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox">
 
-        <EditText
+        <com.google.android.material.textfield.TextInputEditText
             android:id="@android:id/text1"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:inputType="text"/>
+            android:inputType="textCapWords"/>
 
     </com.google.android.material.textfield.TextInputLayout>
 </FrameLayout>
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 6ddccb9..578c00b 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -85,4 +85,6 @@
     <dimen name="search_chip_spacing">8dp</dimen>
     <dimen name="search_chip_icon_padding">4dp</dimen>
 
+    <dimen name="dialog_content_padding_top">18dp</dimen>
+    <dimen name="dialog_content_padding_bottom">24dp</dimen>
 </resources>
diff --git a/src/com/android/documentsui/CreateDirectoryFragment.java b/src/com/android/documentsui/CreateDirectoryFragment.java
index 28e8298..d20eee6 100644
--- a/src/com/android/documentsui/CreateDirectoryFragment.java
+++ b/src/com/android/documentsui/CreateDirectoryFragment.java
@@ -44,6 +44,7 @@
 import android.widget.TextView.OnEditorActionListener;
 
 import com.google.android.material.snackbar.Snackbar;
+import com.google.android.material.textfield.TextInputLayout;
 
 import com.android.documentsui.base.DocumentInfo;
 import com.android.documentsui.base.Shared;
@@ -72,6 +73,9 @@
         final View view = dialogInflater.inflate(R.layout.dialog_file_name, null, false);
         final EditText editText = (EditText) view.findViewById(android.R.id.text1);
 
+        final TextInputLayout inputWrapper = view.findViewById(R.id.input_wrapper);
+        inputWrapper.setHint(getString(R.string.input_hint_new_folder));
+
         builder.setTitle(R.string.menu_create_dir);
         builder.setView(view);
 
@@ -105,7 +109,7 @@
                         return false;
                     }
                 });
-        editText.setHint(R.string.input_hint_new_folder);
+        editText.requestFocus();
 
         return dialog;
     }
diff --git a/src/com/android/documentsui/dirlist/RenameDocumentFragment.java b/src/com/android/documentsui/dirlist/RenameDocumentFragment.java
index 6ae54d3..8e9dd1c 100644
--- a/src/com/android/documentsui/dirlist/RenameDocumentFragment.java
+++ b/src/com/android/documentsui/dirlist/RenameDocumentFragment.java
@@ -77,7 +77,8 @@
         View view = dialogInflater.inflate(R.layout.dialog_file_name, null, false);
 
         mEditText = (EditText) view.findViewById(android.R.id.text1);
-        mRenameInputWrapper = (TextInputLayout) view.findViewById(R.id.rename_input_wrapper);
+        mRenameInputWrapper = (TextInputLayout) view.findViewById(R.id.input_wrapper);
+        mRenameInputWrapper.setHint(getString(R.string.input_hint_rename));
         builder.setTitle(R.string.menu_rename);
         builder.setView(view);
         builder.setPositiveButton(android.R.string.ok, null);
@@ -104,7 +105,6 @@
                     }
                 });
         mEditText.requestFocus();
-        mEditText.setHint(R.string.input_hint_rename);
         return dialog;
     }
 
