Convert AppHelper to kotlin

This commit is contained in:
FooIbar authored and tarsin committed 2023-04-03 00:06:40 +08:00
1 parent aff110df5d
commit c2a9ea96e9
1 file changed
+19 -81
+19 -81
View File
@@ -13,89 +13,27 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.hippo.util
package com.hippo.util;
import android.app.Activity
import android.content.Intent
import android.widget.Toast
import com.hippo.ehviewer.R
import android.app.Activity;
import android.app.Dialog;
import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.hippo.ehviewer.R;
public class AppHelper {
public static boolean sendEmail(@NonNull Activity from, @NonNull String address,
@Nullable String subject, @Nullable String text) {
Intent i = new Intent(Intent.ACTION_SENDTO);
i.setData(Uri.parse("mailto:" + address));
if (subject != null) {
i.putExtra(Intent.EXTRA_SUBJECT, subject);
}
if (text != null) {
i.putExtra(Intent.EXTRA_TEXT, text);
}
try {
from.startActivity(i);
return true;
} catch (Throwable e) {
ExceptionUtils.throwIfFatal(e);
Toast.makeText(from, R.string.error_cant_find_activity, Toast.LENGTH_SHORT).show();
return false;
}
}
public static boolean share(@NonNull Activity from, String text) {
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, text);
sendIntent.setType("text/plain");
Intent chooser = Intent.createChooser(sendIntent, from.getString(R.string.share));
try {
from.startActivity(chooser);
return true;
} catch (Throwable e) {
ExceptionUtils.throwIfFatal(e);
Toast.makeText(from, R.string.error_cant_find_activity, Toast.LENGTH_SHORT).show();
return false;
}
}
public static void showSoftInput(Context context, View view) {
showSoftInput(context, view, true);
}
public static void showSoftInput(Context context, View view, boolean requestFocus) {
if (requestFocus) {
view.requestFocus();
}
InputMethodManager imm = (InputMethodManager) context.getSystemService(Service.INPUT_METHOD_SERVICE);
imm.showSoftInput(view, 0);
}
public static void hideSoftInput(Activity activity) {
View view = activity.getCurrentFocus();
if (view != null) {
InputMethodManager imm = (InputMethodManager) activity.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
}
public static void hideSoftInput(Dialog dialog) {
View view = dialog.getCurrentFocus();
if (view != null) {
InputMethodManager imm = (InputMethodManager) dialog.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
object AppHelper {
fun share(from: Activity, text: String?): Boolean {
val sendIntent = Intent()
sendIntent.action = Intent.ACTION_SEND
sendIntent.putExtra(Intent.EXTRA_TEXT, text)
sendIntent.type = "text/plain"
val chooser = Intent.createChooser(sendIntent, from.getString(R.string.share))
return runCatching {
from.startActivity(chooser)
true
}.getOrElse {
ExceptionUtils.throwIfFatal(it)
Toast.makeText(from, R.string.error_cant_find_activity, Toast.LENGTH_SHORT).show()
false
}
}
}