mirror of
https://github.com/kiwix/kiwix-android.git
synced 2025-09-11 16:37:18 -04:00
implemented snackbar - UNDO on closing tab
https://sourceforge.net/p/kiwix/feature-requests/232/
This commit is contained in:
parent
f47f9406f4
commit
3ade093fce
@ -23,6 +23,7 @@ dependencies {
|
||||
compile 'com.android.support:support-v4:22.2.0'
|
||||
compile files("$buildDir/native-libs/native-libs.jar")
|
||||
compile 'com.yahoo.squidb:squidb:2.0.0'
|
||||
compile 'com.android.support:design:22.2.0'
|
||||
compile 'com.yahoo.squidb:squidb-annotations:2.0.0'
|
||||
apt 'com.yahoo.squidb:squidb-processor:2.0.0'
|
||||
// compile fileTree(dir: '.', include: 'content-libs.jar') // DO NOT REMOVE !!
|
||||
|
@ -2,7 +2,8 @@
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical">
|
||||
android:orientation="vertical"
|
||||
android:id="@+id/linearlayout_main">
|
||||
|
||||
<include layout="@layout/toolbar"/>
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
<color name="secondary_text">#727272</color>
|
||||
<color name="icons">#212121</color>
|
||||
<color name="divider">#B6B6B6</color>
|
||||
|
||||
<color name="white_undo">#FAFAFA</color>
|
||||
<color name="gray_list_bg">#0d000000</color>
|
||||
<color name="drawer_background">#ffffff</color>
|
||||
<color name="selected_light">#0F000000</color>
|
||||
|
@ -32,6 +32,7 @@ import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.os.Looper;
|
||||
import android.preference.PreferenceManager;
|
||||
import android.support.design.widget.Snackbar;
|
||||
import android.support.v4.view.GravityCompat;
|
||||
import android.support.v4.widget.DrawerLayout;
|
||||
import android.support.v7.app.ActionBarDrawerToggle;
|
||||
@ -63,10 +64,12 @@ import android.widget.Button;
|
||||
import android.widget.FrameLayout;
|
||||
import android.widget.ImageButton;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.ListView;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.File;
|
||||
import java.io.FileNotFoundException;
|
||||
@ -78,6 +81,7 @@ import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
|
||||
import org.json.JSONArray;
|
||||
import org.kiwix.kiwixmobile.settings.Constants;
|
||||
import org.kiwix.kiwixmobile.settings.KiwixSettingsActivity;
|
||||
@ -169,6 +173,8 @@ public class KiwixMobileActivity extends AppCompatActivity
|
||||
|
||||
// Initialized when onActionModeStarted is triggered.
|
||||
private ActionMode mActionMode = null;
|
||||
private KiwixWebView tempForUndo;
|
||||
private LinearLayout snackbarLayout;
|
||||
|
||||
@Override
|
||||
public void onActionModeStarted(ActionMode mode) {
|
||||
@ -229,7 +235,9 @@ public class KiwixMobileActivity extends AppCompatActivity
|
||||
mToolbarContainer = (RelativeLayout) findViewById(R.id.toolbar_layout);
|
||||
mProgressBar = (AnimatedProgressBar) findViewById(R.id.progress_view);
|
||||
exitFullscreenButton = (ImageButton) findViewById(R.id.FullscreenControlButton);
|
||||
tempForUndo = new KiwixWebView(getApplicationContext()); /** initializing temporary tab value **/
|
||||
|
||||
snackbarLayout = (LinearLayout) findViewById(R.id.linearlayout_main); /** Coordinator layout definition**/
|
||||
RelativeLayout newTabButton = (RelativeLayout) findViewById(R.id.new_tab_button);
|
||||
newTabButton.setOnClickListener(new View.OnClickListener() {
|
||||
|
||||
@ -372,7 +380,21 @@ public class KiwixMobileActivity extends AppCompatActivity
|
||||
if (mCurrentWebViewIndex == index) {
|
||||
if (mCurrentWebViewIndex >= 1) {
|
||||
selectTab(mCurrentWebViewIndex - 1);
|
||||
|
||||
tempForUndo = mWebViews.get(index);
|
||||
|
||||
mWebViews.remove(index);
|
||||
Snackbar undoSnackbar = Snackbar.make(snackbarLayout, "Click to restore tab", Snackbar.LENGTH_LONG)
|
||||
.setAction("Undo", new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
newTab(tempForUndo.getUrl());
|
||||
}
|
||||
});
|
||||
undoSnackbar.setActionTextColor(getResources().getColor(R.color.white_undo));
|
||||
undoSnackbar.show();
|
||||
|
||||
|
||||
} else {
|
||||
selectTab(mCurrentWebViewIndex + 1);
|
||||
mWebViews.remove(index);
|
||||
@ -1180,7 +1202,6 @@ public class KiwixMobileActivity extends AppCompatActivity
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public void onPause() {
|
||||
super.onPause();
|
||||
|
Loading…
x
Reference in New Issue
Block a user