Search in sources :

Example 1 with FileChooserDialog

use of de.mkrtchyan.utils.FileChooserDialog in project Rashr by DsLNeXuS.

the class ScriptManagerFragment method onCreateView.

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    mRootView = inflater.inflate(R.layout.fragment_script_manager, container, false);
    mFileNameAdapter = new ArrayAdapter<>(mContext, R.layout.custom_list_item);
    mFileList = new ArrayList<>();
    mQueue = (ListView) mRootView.findViewById(R.id.lvQueue);
    mQueue.setAdapter(mFileNameAdapter);
    mQueue.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            mFileList.remove(position);
            mFileNameAdapter.clear();
            for (File i : mFileList) {
                mFileNameAdapter.add(i.getName());
            }
        }
    });
    if (mStartFile != null) {
        if (mStartFile.exists()) {
            if (Common.stringEndsWithArray(mStartFile.getName(), mAllowedEXT)) {
                addFileToQueue(mStartFile);
            } else {
                Toast.makeText(mContext, R.string.wrong_format, Toast.LENGTH_SHORT).show();
            }
        }
    }
    AppCompatButton AddZip = (AppCompatButton) mRootView.findViewById(R.id.addZip);
    AddZip.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            mFileChooser = new FileChooserDialog(mContext);
            File startFolder = Environment.getExternalStorageDirectory();
            if (mFileList.size() > 0) {
                startFolder = mFileList.get(mFileList.size() - 1);
                if (startFolder.isFile()) {
                    startFolder = startFolder.getParentFile();
                }
            }
            mFileChooser.setStartFolder(startFolder);
            mFileChooser.setOnFileChooseListener(new FileChooserDialog.OnFileChooseListener() {

                @Override
                public void OnFileChoose(File file) {
                    addFileToQueue(file);
                }
            });
            mFileChooser.setAllowedEXT(mAllowedEXT);
            mFileChooser.setBrowseUpAllowed(true);
            mFileChooser.setWarn(false);
            mFileChooser.show();
        }
    });
    AppCompatButton FlashZip = (AppCompatButton) mRootView.findViewById(R.id.bFlashZip);
    FlashZip.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            AppCompatCheckBox cbBakSystem = (AppCompatCheckBox) mRootView.findViewById(R.id.cbBackupSystem);
            AppCompatCheckBox cbBakData = (AppCompatCheckBox) mRootView.findViewById(R.id.cbBackupData);
            AppCompatCheckBox cbBakCache = (AppCompatCheckBox) mRootView.findViewById(R.id.cbBackupCache);
            AppCompatCheckBox cbBakRecovery = (AppCompatCheckBox) mRootView.findViewById(R.id.cbBackupRecovery);
            AppCompatCheckBox cbBakBoot = (AppCompatCheckBox) mRootView.findViewById(R.id.cbBackupBoot);
            AppCompatCheckBox cbSkipMD5 = (AppCompatCheckBox) mRootView.findViewById(R.id.cbSkipMD5);
            AppCompatEditText etBakName = (AppCompatEditText) mRootView.findViewById(R.id.etBackupName);
            AppCompatCheckBox cbWipeCache = (AppCompatCheckBox) mRootView.findViewById(R.id.cbWipeCache);
            AppCompatCheckBox cbWipeDalvik = (AppCompatCheckBox) mRootView.findViewById(R.id.cbWipeDalvik);
            AppCompatCheckBox cbWipeData = (AppCompatCheckBox) mRootView.findViewById(R.id.cbWipeData);
            final StringBuilder command = new StringBuilder();
            command.append("echo #####Script created by Rashr#####;");
            if (cbBakBoot.isChecked() || cbBakCache.isChecked() || cbBakData.isChecked() || cbBakRecovery.isChecked() || cbBakSystem.isChecked()) {
                command.append("backup ");
                if (cbBakBoot.isChecked())
                    command.append("B");
                if (cbBakCache.isChecked())
                    command.append("C");
                if (cbBakData.isChecked())
                    command.append("D");
                if (cbBakRecovery.isChecked())
                    command.append("R");
                if (cbBakSystem.isChecked())
                    command.append("S");
                if (cbSkipMD5.isChecked())
                    command.append("M");
                CharSequence BackupName = etBakName.getText();
                if (BackupName != null && !BackupName.equals("")) {
                    command.append(" ");
                    command.append(BackupName);
                }
                command.append(CMD_END);
            }
            if (cbWipeCache.isChecked())
                command.append("wipe cache;");
            if (cbWipeDalvik.isChecked())
                command.append("wipe dalvik;");
            if (cbWipeData.isChecked())
                command.append("wipe data;");
            for (File i : mFileList) {
                command.append("install ");
                command.append(i.getAbsolutePath());
                command.append(CMD_END);
            }
            if (!command.toString().equals("")) {
                String commands = "";
                int index = 0;
                for (String i : command.toString().split(CMD_END)) {
                    if (!i.equals("")) {
                        if (index > 0) {
                            commands += index++ + ". " + i + "\n";
                        } else {
                            index++;
                        }
                    }
                }
                final AlertDialog.Builder CommandsPreview = new AlertDialog.Builder(mContext);
                CommandsPreview.setTitle(R.string.recovery_script_review);
                CommandsPreview.setPositiveButton(R.string.run, new DialogInterface.OnClickListener() {

                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        try {
                            for (String split : command.toString().split(";")) {
                                if (!split.equals("")) {
                                    RashrApp.SHELL.execCommand("echo " + split + " >> /cache/recovery/openrecoveryscript");
                                }
                            }
                            RashrApp.TOOLBOX.reboot(Toolbox.REBOOT_RECOVERY);
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
                    }
                });
                CommandsPreview.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {

                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                    }
                });
                CommandsPreview.setMessage(commands);
                CommandsPreview.show();
            } else {
                Toast.makeText(mContext, "No job to do :)", Toast.LENGTH_LONG).show();
            }
        }
    });
    return mRootView;
}
Also used : AlertDialog(android.support.v7.app.AlertDialog) DialogInterface(android.content.DialogInterface) FileChooserDialog(de.mkrtchyan.utils.FileChooserDialog) View(android.view.View) AdapterView(android.widget.AdapterView) ListView(android.widget.ListView) AppCompatButton(android.support.v7.widget.AppCompatButton) AppCompatCheckBox(android.support.v7.widget.AppCompatCheckBox) AppCompatEditText(android.support.v7.widget.AppCompatEditText) AdapterView(android.widget.AdapterView) File(java.io.File)

Example 2 with FileChooserDialog

use of de.mkrtchyan.utils.FileChooserDialog in project Rashr by DsLNeXuS.

the class FlashFragment method bFlashOtherKernel.

/**
     * Flash Kernel from storage (separate downloaded)
     */
public void bFlashOtherKernel(View view) {
    FileChooserDialog chooser = new FileChooserDialog(view.getContext());
    String[] AllowedEXT = { RashrApp.DEVICE.getKernelExt() };
    chooser.setOnFileChooseListener(new FileChooserDialog.OnFileChooseListener() {

        @Override
        public void OnFileChoose(File file) {
            flashKernel(file);
        }
    });
    chooser.setStartFolder(Const.PathToSd);
    chooser.setAllowedEXT(AllowedEXT);
    chooser.setBrowseUpAllowed(true);
    chooser.setWarn(true);
    chooser.show();
}
Also used : File(java.io.File) FileChooserDialog(de.mkrtchyan.utils.FileChooserDialog)

Example 3 with FileChooserDialog

use of de.mkrtchyan.utils.FileChooserDialog in project Rashr by DsLNeXuS.

the class FlashFragment method bFlashOtherRecovery.

/**
     * Flash Recovery from storage (already downloaded)
     */
public void bFlashOtherRecovery(View view) {
    String[] AllowedEXT = { RashrApp.DEVICE.getRecoveryExt() };
    FileChooserDialog chooser = new FileChooserDialog(view.getContext());
    chooser.setAllowedEXT(AllowedEXT);
    chooser.setBrowseUpAllowed(true);
    chooser.setOnFileChooseListener(new FileChooserDialog.OnFileChooseListener() {

        @Override
        public void OnFileChoose(File file) {
            flashRecovery(file);
        }
    });
    chooser.setStartFolder(Const.PathToSd);
    chooser.setWarn(true);
    chooser.show();
}
Also used : File(java.io.File) FileChooserDialog(de.mkrtchyan.utils.FileChooserDialog)

Aggregations

FileChooserDialog (de.mkrtchyan.utils.FileChooserDialog)3 File (java.io.File)3 DialogInterface (android.content.DialogInterface)1 AlertDialog (android.support.v7.app.AlertDialog)1 AppCompatButton (android.support.v7.widget.AppCompatButton)1 AppCompatCheckBox (android.support.v7.widget.AppCompatCheckBox)1 AppCompatEditText (android.support.v7.widget.AppCompatEditText)1 View (android.view.View)1 AdapterView (android.widget.AdapterView)1 ListView (android.widget.ListView)1