diff --git a/app/src/main/java/com/simplemobiletools/gallery/activities/PhotoVideoActivity.java b/app/src/main/java/com/simplemobiletools/gallery/activities/PhotoVideoActivity.java
deleted file mode 100644
index 105fbe87c..000000000
--- a/app/src/main/java/com/simplemobiletools/gallery/activities/PhotoVideoActivity.java
+++ /dev/null
@@ -1,123 +0,0 @@
-package com.simplemobiletools.gallery.activities;
-
-import android.content.Intent;
-import android.content.res.Configuration;
-import android.database.Cursor;
-import android.net.Uri;
-import android.os.Bundle;
-import android.provider.MediaStore;
-import android.support.v7.app.ActionBar;
-import android.view.Menu;
-import android.view.MenuItem;
-
-import com.simplemobiletools.gallery.Constants;
-import com.simplemobiletools.gallery.R;
-import com.simplemobiletools.gallery.Utils;
-import com.simplemobiletools.gallery.fragments.PhotoFragment;
-import com.simplemobiletools.gallery.fragments.VideoFragment;
-import com.simplemobiletools.gallery.fragments.ViewPagerFragment;
-import com.simplemobiletools.gallery.models.Medium;
-
-import java.io.File;
-
-public class PhotoVideoActivity extends SimpleActivity implements ViewPagerFragment.FragmentClickListener {
-    private static ActionBar mActionbar;
-    private static Uri mUri;
-    private static ViewPagerFragment mFragment;
-
-    private static boolean mIsFullScreen;
-
-    protected static boolean mIsVideo;
-
-    @Override
-    public void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        setContentView(R.layout.fragment_holder);
-
-        mUri = getIntent().getData();
-        if (mUri == null)
-            return;
-
-        mActionbar = getSupportActionBar();
-        mIsFullScreen = true;
-        hideSystemUI();
-
-        final Bundle bundle = new Bundle();
-        final File file = new File(mUri.toString());
-        final Medium medium = new Medium(file.getName(), mUri.toString(), mIsVideo, 0, file.length());
-        bundle.putSerializable(Constants.MEDIUM, medium);
-
-        if (savedInstanceState == null) {
-            mFragment = (mIsVideo ? new VideoFragment() : new PhotoFragment());
-            mFragment.setListener(this);
-            mFragment.setArguments(bundle);
-            getSupportFragmentManager().beginTransaction().replace(R.id.fragment_holder, mFragment).commit();
-        }
-        hideSystemUI();
-
-        if (mUri.getScheme().equals("content")) {
-            String[] proj = { MediaStore.Images.Media.TITLE };
-            Cursor cursor = getContentResolver().query(mUri, proj, null, null, null);
-            if (cursor != null && cursor.getCount() != 0) {
-                int columnIndex = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.TITLE);
-                cursor.moveToFirst();
-                setTitle(cursor.getString(columnIndex));
-            }
-            if (cursor != null) {
-                cursor.close();
-            }
-        } else {
-            setTitle(Utils.Companion.getFilename(mUri.toString()));
-        }
-    }
-
-    @Override
-    public void onConfigurationChanged(Configuration newConfig) {
-        super.onConfigurationChanged(newConfig);
-        mFragment.updateItem();
-    }
-
-    @Override
-    public boolean onCreateOptionsMenu(Menu menu) {
-        getMenuInflater().inflate(R.menu.photo_video_menu, menu);
-        return true;
-    }
-
-    @Override
-    public boolean onOptionsItemSelected(MenuItem item) {
-        switch (item.getItemId()) {
-            case R.id.menu_share:
-                shareMedium();
-                return true;
-            default:
-                return super.onOptionsItemSelected(item);
-        }
-    }
-
-    private void shareMedium() {
-        final String shareTitle = getResources().getString(R.string.share_via);
-        final Intent sendIntent = new Intent();
-        sendIntent.setAction(Intent.ACTION_SEND);
-        sendIntent.putExtra(Intent.EXTRA_STREAM, mUri);
-        sendIntent.setType(mIsVideo ? "video/*" : "image/*");
-        startActivity(Intent.createChooser(sendIntent, shareTitle));
-    }
-
-    @Override
-    public void fragmentClicked() {
-        mIsFullScreen = !mIsFullScreen;
-        if (mIsFullScreen) {
-            hideSystemUI();
-        } else {
-            showSystemUI();
-        }
-    }
-
-    private void hideSystemUI() {
-        Utils.Companion.hideSystemUI(mActionbar, getWindow());
-    }
-
-    private void showSystemUI() {
-        Utils.Companion.showSystemUI(mActionbar, getWindow());
-    }
-}
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/activities/PhotoVideoActivity.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/activities/PhotoVideoActivity.kt
new file mode 100644
index 000000000..6477a9fa5
--- /dev/null
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/activities/PhotoVideoActivity.kt
@@ -0,0 +1,114 @@
+package com.simplemobiletools.gallery.activities
+
+import android.content.Intent
+import android.content.res.Configuration
+import android.net.Uri
+import android.os.Bundle
+import android.provider.MediaStore
+import android.support.v7.app.ActionBar
+import android.view.Menu
+import android.view.MenuItem
+import com.simplemobiletools.filepicker.extensions.getFilenameFromPath
+import com.simplemobiletools.gallery.Constants
+import com.simplemobiletools.gallery.R
+import com.simplemobiletools.gallery.Utils
+import com.simplemobiletools.gallery.fragments.PhotoFragment
+import com.simplemobiletools.gallery.fragments.VideoFragment
+import com.simplemobiletools.gallery.fragments.ViewPagerFragment
+import com.simplemobiletools.gallery.models.Medium
+import java.io.File
+
+open class PhotoVideoActivity : SimpleActivity(), ViewPagerFragment.FragmentClickListener {
+    companion object {
+        private var mActionbar: ActionBar? = null
+        private var mUri: Uri? = null
+        private var mFragment: ViewPagerFragment? = null
+
+        private var mIsFullScreen = false
+        var mIsVideo = false
+    }
+
+    public override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        setContentView(R.layout.fragment_holder)
+
+        mUri = intent.data ?: return
+
+        mActionbar = supportActionBar
+        mIsFullScreen = true
+        hideSystemUI()
+
+        val bundle = Bundle()
+        val file = File(mUri!!.toString())
+        val medium = Medium(file.name, mUri!!.toString(), mIsVideo, 0, file.length())
+        bundle.putSerializable(Constants.MEDIUM, medium)
+
+        if (savedInstanceState == null) {
+            mFragment = if (mIsVideo) VideoFragment() else PhotoFragment()
+            mFragment!!.setListener(this)
+            mFragment!!.arguments = bundle
+            supportFragmentManager.beginTransaction().replace(R.id.fragment_holder, mFragment).commit()
+        }
+        hideSystemUI()
+
+        if (mUri!!.scheme == "content") {
+            val proj = arrayOf(MediaStore.Images.Media.TITLE)
+            val cursor = contentResolver.query(mUri!!, proj, null, null, null)
+            if (cursor != null && cursor.count != 0) {
+                val columnIndex = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.TITLE)
+                cursor.moveToFirst()
+                title = cursor.getString(columnIndex)
+            }
+            cursor?.close()
+        } else {
+            title = mUri!!.toString().getFilenameFromPath()
+        }
+    }
+
+    override fun onConfigurationChanged(newConfig: Configuration) {
+        super.onConfigurationChanged(newConfig)
+        mFragment!!.updateItem()
+    }
+
+    override fun onCreateOptionsMenu(menu: Menu): Boolean {
+        menuInflater.inflate(R.menu.photo_video_menu, menu)
+        return true
+    }
+
+    override fun onOptionsItemSelected(item: MenuItem): Boolean {
+        return when (item.itemId) {
+            R.id.menu_share -> {
+                shareMedium()
+                true
+            }
+            else -> super.onOptionsItemSelected(item)
+        }
+    }
+
+    private fun shareMedium() {
+        val shareTitle = resources.getString(R.string.share_via)
+        Intent().apply {
+            action = Intent.ACTION_SEND
+            putExtra(Intent.EXTRA_STREAM, mUri)
+            type = if (mIsVideo) "video/*" else "image/*"
+            startActivity(Intent.createChooser(this, shareTitle))
+        }
+    }
+
+    override fun fragmentClicked() {
+        mIsFullScreen = !mIsFullScreen
+        if (mIsFullScreen) {
+            hideSystemUI()
+        } else {
+            showSystemUI()
+        }
+    }
+
+    private fun hideSystemUI() {
+        Utils.hideSystemUI(mActionbar, window)
+    }
+
+    private fun showSystemUI() {
+        Utils.showSystemUI(mActionbar, window)
+    }
+}
diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/activities/ViewPagerActivity.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/activities/ViewPagerActivity.kt
index a553e274d..4811bfcc1 100644
--- a/app/src/main/kotlin/com/simplemobiletools/gallery/activities/ViewPagerActivity.kt
+++ b/app/src/main/kotlin/com/simplemobiletools/gallery/activities/ViewPagerActivity.kt
@@ -177,14 +177,12 @@ class ViewPagerActivity : SimpleActivity(), ViewPager.OnPageChangeListener, View
         files.add(getCurrentFile())
         CopyDialog(this, files, object : CopyMoveTask.CopyMoveListener {
             override fun copySucceeded(deleted: Boolean, copiedAll: Boolean) {
-                val msgId: Int
                 if (deleted) {
                     reloadViewPager()
-                    msgId = if (copiedAll) R.string.moving_success else R.string.moving_success_partial
+                    toast(if (copiedAll) R.string.moving_success else R.string.moving_success_partial)
                 } else {
-                    msgId = if (copiedAll) R.string.copying_success else R.string.copying_success_partial
+                    toast(if (copiedAll) R.string.copying_success else R.string.copying_success_partial)
                 }
-                toast(msgId)
             }
 
             override fun copyFailed() {