convert PhotoVideoActivity to kotlin
This commit is contained in:
parent
719c510f59
commit
493ba31c5f
3 changed files with 116 additions and 127 deletions
|
@ -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());
|
||||
}
|
||||
}
|
|
@ -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)
|
||||
}
|
||||
}
|
|
@ -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() {
|
||||
|
|
Loading…
Reference in a new issue