Skip to content

Local Account: Hide delete & view logs, allow local account renaming,… - #341

Closed
parvathyabnair wants to merge 2 commits into
CITOpenRep:release/v1.3.3from
parvathyabnair:release/v1.3.3
Closed

parvathyabnair wants to merge 2 commits into
CITOpenRep:release/v1.3.3from
parvathyabnair:release/v1.3.3

Conversation

@parvathyabnair

@parvathyabnair parvathyabnair commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Summary

Description
Under Settings > Connected Accounts, the Local Account previously displayed non-functional swipe action options for Edit, Delete, and View Logs (with enabled: false), which caused confusion and made the UI appear unresponsive.

Type

  • Feature
  • Bug Fix
  • Refactor
  • Documentation
  • Performance
  • Testing

Changes

1.Hides Delete and View Logs for Local Account: Sets trailingActions to null specifically for the Local Account (model.id === 0), completely removing the non-functional swipe-right actions while keeping them available for remote accounts.

2.Enables Local Account Editing:
Enables the swipe-left Edit action and allows direct row tapping on the Local Account item in Settings_Accounts.qml.
Opens Account_Page.qml in local mode: hides Server Connection, Credentials, and Sync Preferences sections, allowing the user to edit only the Local Account name.
Handles saving the custom name with non-empty validation and duplicate name checks via a new updateAccountName() helper in accounts.js.

3.Resolves Virtual Keyboard Pre-Edit Issue:
Calls Qt.inputMethod.commit() and transfers focus on Save to ensure single-word inputs from on-screen keyboards are committed from the pre-edit composition buffer before validation.
Sets inputMethodHints: Qt.ImhNoPredictiveText on input fields to prevent unconfirmed word buffering.

4.Maintains UI and Daemon Consistency:
Updates getAccountsList() and getAccountName() to preserve custom Local Account names instead of forcing hardcoded "Local".
Updates MenuPage.qml and AppDrawer.qml to display the renamed Local Account name in sidebar and drawer navigation.
Adds guards in daemon.py to ensure the background sync daemon never attempts to sync the local account even when renamed.
Adds website/ to .gitignore to prevent documentation build artifacts and node_modules from being committed.

Testing

  • Tested on Emulator (clickable build && clickable review)
  • Tested on device (clickable install)
  • Unit tests added/updated
  • No existing Functionality/Tests broken

Screenshots (if UI change)

Before After

Checklist

  • Code follows existing style conventions
  • No hardcoded credentials or secrets
  • No debug logs left in production code
  • Documentation updated (if applicable)
  • Squash commits before review (if needed)
  • PR is up-to-date with main or release\x.x.x branch

Related Issues

Closes #

Additional Notes

#339

@parvathyabnair

Copy link
Copy Markdown
Contributor Author

#339

@suraj-yadav0 suraj-yadav0 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @parvathyabnair , I was thinking as of Now , We keep it simple and just hide the swipe actions for the Local
Account in Settings_Accounts.qml (set both leadingActions and trailingActions to null when model.id
=== 0). This fixes the exact confusion in issue #339 with just a few lines of code.

On Later stages we can introduce the Local Account rename Feature with Settings for Local Account as an Enhancement.

So revert the other changes and we are good to go. What do you think ?

@parvathyabnair

Copy link
Copy Markdown
Contributor Author

Closing this PR, since another PR has been created with the requested changes
#344

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Disable or hide Edit, Delete, and View Logs actions for Local Account

2 participants