Search in sources :

Example 6 with ProgressTask

use of com.keepassdroid.tasks.ProgressTask in project KeePassDX by Kunzisoft.

the class PasswordActivity method loadDatabase.

private void loadDatabase(String pass, Uri keyfile) {
    // Clear before we load
    Database db = App.getDB();
    db.clear();
    // Clear the shutdown flag
    App.clearShutdown();
    Handler handler = new Handler();
    AfterLoad afterLoad = new AfterLoad(handler, db);
    LoadDB task = new LoadDB(db, PasswordActivity.this, mDbUri, pass, keyfile, afterLoad);
    ProgressTask pt = new ProgressTask(PasswordActivity.this, task, R.string.loading_database);
    pt.run();
}
Also used : ProgressTask(com.keepassdroid.tasks.ProgressTask) Database(com.keepassdroid.database.Database) Handler(android.os.Handler) LoadDB(com.keepassdroid.database.edit.LoadDB)

Example 7 with ProgressTask

use of com.keepassdroid.tasks.ProgressTask in project KeePassDX by Kunzisoft.

the class EntryEditActivity method onCreate.

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.entry_edit);
    Toolbar toolbar = findViewById(R.id.toolbar);
    toolbar.setTitle(getString(R.string.app_name));
    setSupportActionBar(toolbar);
    assert getSupportActionBar() != null;
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    getSupportActionBar().setDisplayShowHomeEnabled(true);
    scrollView = findViewById(R.id.entry_scroll);
    scrollView.setScrollBarStyle(View.SCROLLBARS_INSIDE_INSET);
    entryTitleView = findViewById(R.id.entry_title);
    entryUserNameView = findViewById(R.id.entry_user_name);
    entryUrlView = findViewById(R.id.entry_url);
    entryPasswordView = findViewById(R.id.entry_password);
    entryConfirmationPasswordView = findViewById(R.id.entry_confpassword);
    entryCommentView = findViewById(R.id.entry_comment);
    entryExtraFieldsContainer = findViewById(R.id.advanced_container);
    // Likely the app has been killed exit the activity
    Database db = App.getDB();
    if (!db.Loaded()) {
        finish();
        return;
    }
    Intent intent = getIntent();
    byte[] uuidBytes = intent.getByteArrayExtra(KEY_ENTRY);
    PwDatabase pm = db.pm;
    if (uuidBytes == null) {
        PwGroupId parentId = (PwGroupId) intent.getSerializableExtra(KEY_PARENT);
        PwGroup parent = pm.groups.get(parentId);
        mEntry = PwEntry.getInstance(parent);
        mIsNew = true;
    } else {
        UUID uuid = Types.bytestoUUID(uuidBytes);
        mEntry = pm.entries.get(uuid);
        mIsNew = false;
        fillData();
    }
    View iconButton = findViewById(R.id.icon_button);
    iconButton.setOnClickListener(v -> IconPickerDialogFragment.launch(EntryEditActivity.this));
    // Generate password button
    View generatePassword = findViewById(R.id.generate_button);
    generatePassword.setOnClickListener(v -> {
        GeneratePasswordDialogFragment generatePasswordDialogFragment = new GeneratePasswordDialogFragment();
        generatePasswordDialogFragment.show(getSupportFragmentManager(), "PasswordGeneratorFragment");
    });
    // Save button
    View save = findViewById(R.id.entry_save);
    save.setOnClickListener(v -> {
        if (!validateBeforeSaving()) {
            return;
        }
        mCallbackNewEntry = populateNewEntry();
        OnFinish onFinish = new AfterSave();
        EntryEditActivity act = EntryEditActivity.this;
        RunnableOnFinish task;
        if (mIsNew) {
            task = new AddEntry(act, App.getDB(), mCallbackNewEntry, onFinish);
        } else {
            task = new UpdateEntry(act, App.getDB(), mEntry, mCallbackNewEntry, onFinish);
        }
        ProgressTask pt = new ProgressTask(act, task, R.string.saving_database);
        pt.run();
    });
    if (mEntry.allowExtraFields()) {
        View add = findViewById(R.id.add_new_field);
        add.setVisibility(View.VISIBLE);
        add.setOnClickListener(v -> {
            EntryEditNewField ees = new EntryEditNewField(EntryEditActivity.this);
            ees.setData("", new ProtectedString(false, ""));
            entryExtraFieldsContainer.addView(ees);
            // Scroll bottom
            scrollView.post(() -> scrollView.fullScroll(ScrollView.FOCUS_DOWN));
        });
    }
}
Also used : ProgressTask(com.keepassdroid.tasks.ProgressTask) UpdateEntry(com.keepassdroid.database.edit.UpdateEntry) PwDatabase(com.keepassdroid.database.PwDatabase) RunnableOnFinish(com.keepassdroid.database.edit.RunnableOnFinish) Intent(android.content.Intent) OnFinish(com.keepassdroid.database.edit.OnFinish) RunnableOnFinish(com.keepassdroid.database.edit.RunnableOnFinish) EntryEditNewField(com.keepassdroid.view.EntryEditNewField) View(android.view.View) ScrollView(android.widget.ScrollView) AddEntry(com.keepassdroid.database.edit.AddEntry) GeneratePasswordDialogFragment(com.keepassdroid.dialogs.GeneratePasswordDialogFragment) PwGroupId(com.keepassdroid.database.PwGroupId) PwDatabase(com.keepassdroid.database.PwDatabase) Database(com.keepassdroid.database.Database) ProtectedString(com.keepassdroid.database.security.ProtectedString) PwGroup(com.keepassdroid.database.PwGroup) UUID(java.util.UUID) Toolbar(android.support.v7.widget.Toolbar)

Example 8 with ProgressTask

use of com.keepassdroid.tasks.ProgressTask in project KeePassDX by Kunzisoft.

the class GroupActivity method deleteEntry.

private void deleteEntry(PwEntry entry) {
    Handler handler = new Handler();
    DeleteEntry task = new DeleteEntry(this, App.getDB(), entry, new AfterDeleteNode(handler, entry));
    ProgressTask pt = new ProgressTask(this, task, R.string.saving_database);
    pt.run();
}
Also used : ProgressTask(com.keepassdroid.tasks.ProgressTask) Handler(android.os.Handler) DeleteEntry(com.keepassdroid.database.edit.DeleteEntry)

Aggregations

ProgressTask (com.keepassdroid.tasks.ProgressTask)8 Handler (android.os.Handler)6 Database (com.keepassdroid.database.Database)2 DialogInterface (android.content.DialogInterface)1 Intent (android.content.Intent)1 Toolbar (android.support.v7.widget.Toolbar)1 View (android.view.View)1 ScrollView (android.widget.ScrollView)1 PwDatabase (com.keepassdroid.database.PwDatabase)1 PwGroup (com.keepassdroid.database.PwGroup)1 PwGroupId (com.keepassdroid.database.PwGroupId)1 AddEntry (com.keepassdroid.database.edit.AddEntry)1 AddGroup (com.keepassdroid.database.edit.AddGroup)1 CreateDB (com.keepassdroid.database.edit.CreateDB)1 DeleteEntry (com.keepassdroid.database.edit.DeleteEntry)1 DeleteGroup (com.keepassdroid.database.edit.DeleteGroup)1 FileOnFinish (com.keepassdroid.database.edit.FileOnFinish)1 LoadDB (com.keepassdroid.database.edit.LoadDB)1 OnFinish (com.keepassdroid.database.edit.OnFinish)1 RunnableOnFinish (com.keepassdroid.database.edit.RunnableOnFinish)1