Mercurial > cgi-bin > hgweb.cgi > SimpleResizer
annotate app/src/main/java/com/bartsent/simpleresizer/MainActivity.kt @ 3:21d2df45d350
Fix race condition.
author | David Barts <n5jrn@me.com> |
---|---|
date | Tue, 09 Feb 2021 08:56:00 -0800 |
parents | 06825e49f7aa |
children | b6a217c850fb |
rev | line source |
---|---|
0
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
1 package com.bartsent.simpleresizer |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
2 |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
3 import android.app.Activity |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
4 import android.content.Intent |
2
06825e49f7aa
Got it scaling and rotating, needs settings, etc.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
5 import android.os.Bundle |
06825e49f7aa
Got it scaling and rotating, needs settings, etc.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
6 import android.util.Log |
06825e49f7aa
Got it scaling and rotating, needs settings, etc.
David Barts <n5jrn@me.com>
parents:
0
diff
changeset
|
7 import android.widget.Toast |
0
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
8 import androidx.appcompat.app.AppCompatActivity |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
9 import com.bartsent.simpleresizer.databinding.ActivityMainBinding |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
10 |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
11 class MainActivity : AppCompatActivity() { |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
12 val GET_IMAGE = 1 |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
13 private lateinit var binding: ActivityMainBinding |
3 | 14 private var showChooser = true |
0
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
15 |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
16 override fun onCreate(savedInstanceState: Bundle?) { |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
17 super.onCreate(savedInstanceState) |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
18 binding = ActivityMainBinding.inflate(layoutInflater) |
3 | 19 setContentView(binding.root) |
0
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
20 } |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
21 |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
22 override fun onResume() { |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
23 super.onResume() |
3 | 24 if (showChooser) { |
25 Intent(Intent.ACTION_GET_CONTENT).run { | |
26 type = "image/*" | |
27 addCategory(Intent.CATEGORY_OPENABLE) | |
28 startActivityForResult(this, GET_IMAGE) | |
29 } | |
30 } else { | |
31 showChooser = true | |
0
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
32 } |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
33 } |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
34 |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
35 override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { |
3 | 36 showChooser = false |
0
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
37 super.onActivityResult(requestCode, resultCode, data) |
3 | 38 Log.d("MainActivity", "onActivityResult called, requestCode=$requestCode, resultCode=$resultCode") |
0
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
39 if (requestCode == GET_IMAGE) { |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
40 val imageUri = data?.data |
3 | 41 Log.d("MainActivity", "imageUri=${imageUri ?: "(null)"}") |
0
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
42 if (resultCode == Activity.RESULT_OK && imageUri != null) { |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
43 Intent(Intent.ACTION_SEND, imageUri, this, EditImage::class.java).run { |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
44 startActivity(this) |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
45 } |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
46 } else { |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
47 Toast.makeText(applicationContext, "Unable to get image!", Toast.LENGTH_LONG) |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
48 } |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
49 } |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
50 } |
13935000c2d9
Stuff Andriod Studio ignored for some reason.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
51 } |