Issue#10 Add error message if link cannot be opened
This commit is contained in:
parent
95a100217c
commit
df30bb5bfb
3 changed files with 23 additions and 8 deletions
|
|
@ -9,6 +9,8 @@ import android.view.animation.OvershootInterpolator
|
|||
import androidx.annotation.StringRes
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||
import androidx.core.view.doOnPreDraw
|
||||
import androidx.core.view.isVisible
|
||||
import com.google.android.material.bottomnavigation.BottomNavigationView
|
||||
import com.google.android.material.floatingactionbutton.FloatingActionButton
|
||||
import com.google.android.material.snackbar.Snackbar
|
||||
|
|
@ -114,14 +116,18 @@ class MainActivity : AppCompatActivity() {
|
|||
private fun animateFabVisibility(downloadFab: FloatingActionButton, visible: Boolean) {
|
||||
val scale = if (visible) 1f else 0f
|
||||
val translation = if (visible) 0f else downloadFab.height * 2 / 3f
|
||||
downloadFab.isVisible = true
|
||||
downloadFab.clearAnimation()
|
||||
downloadFab.doOnPreDraw {
|
||||
downloadFab.animate()
|
||||
.scaleX(scale)
|
||||
.scaleY(scale)
|
||||
.setDuration(FAB_VISIBILITY_ANIMATION_DURATION)
|
||||
.setInterpolator(fabVisibilityInterpolator)
|
||||
.translationY(translation)
|
||||
.withEndAction { downloadFab.isVisible = visible }
|
||||
.start()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,16 +1,19 @@
|
|||
package org.fnives.tiktokdownloader.ui.main.queue
|
||||
|
||||
import android.content.ActivityNotFoundException
|
||||
import android.content.Intent
|
||||
import android.net.Uri
|
||||
import android.os.Bundle
|
||||
import android.view.View
|
||||
import android.widget.Button
|
||||
import android.widget.EditText
|
||||
import androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||
import androidx.core.net.toUri
|
||||
import androidx.core.widget.doAfterTextChanged
|
||||
import androidx.fragment.app.Fragment
|
||||
import androidx.recyclerview.widget.ItemTouchHelper
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.google.android.material.snackbar.Snackbar
|
||||
import org.fnives.tiktokdownloader.R
|
||||
import org.fnives.tiktokdownloader.data.model.VideoState
|
||||
import org.fnives.tiktokdownloader.di.provideViewModels
|
||||
|
|
@ -46,7 +49,12 @@ class QueueFragment : Fragment(R.layout.fragment_queue) {
|
|||
createGalleryIntent(data.uri)
|
||||
null -> return@observe
|
||||
}
|
||||
try {
|
||||
startActivity(intent)
|
||||
} catch(activityNotFoundException: ActivityNotFoundException) {
|
||||
val anchor = activity?.findViewById<CoordinatorLayout>(R.id.snack_bar_anchor) ?: return@observe
|
||||
Snackbar.make(anchor, R.string.could_not_open, Snackbar.LENGTH_SHORT).show()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -46,4 +46,5 @@
|
|||
<string name="error_handling">The download may fail for various reasons. In such case on the Queue screen you will see a refresh icon. Pressing that will retry the download.</string>
|
||||
<string name="captcha_handling">It\'s possible if you try to download too many videos at the same time <b>captcha</b> will be triggered. Since we don\'t want to overload the server, in such case you will need to wait a couple hours to properly retry the download. If that still doesn\'t work you may need to verify a captcha on the same network.</string>
|
||||
<string name="link_to_repository">This is an open source project. You can see the repository clicking <u>here.</u></string>
|
||||
<string name="could_not_open">Couldn\'t open!</string>
|
||||
</resources>
|
||||
Loading…
Add table
Add a link
Reference in a new issue