Skip to content

[stable35] fix(core): explicitly list emitted event and use proper component props - #64993

Draft
backportbot[bot] wants to merge 3 commits into
stable35from
backport/64984/stable35
Draft

backportbot[bot] wants to merge 3 commits into
stable35from
backport/64984/stable35

Conversation

@backportbot

@backportbot backportbot Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

Backport of #64984

Warning, This backport's changes differ from the original and might be incomplete ⚠️

Todo

  • Review and resolve any conflicts
  • Review and verify the backported changes
  • Amend HEAD commit to remove the line stating to skip CI

Learn more about backports at https://docs.nextcloud.com/server/stable/go.php?to=developer-backports.

susnux added 3 commits October 1, 2026 16:05
The teardown was declared as `beforeUnmount`, a hook Vue 2 does not know,
so it never ran: the hover timers kept firing after the menu was gone and
the `nextcloud:app-menu.refresh` subscription and the popover listener
were never removed.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Assisted-by: ClaudeCode:claude-opus-5-5
Several components were given props the nextcloud-vue components do not
declare, so they ended up as plain attributes or were dropped:

- the login note cards passed their heading as `title`, and once as
  `class`, so the heading was never rendered
- the empty contents of the legacy search passed their name as `title`
- the account menu avatar used `hide-user-status`, so the status was shown
  even when the user status app provides none
- the password field set `spellchecking` instead of the native `spellcheck`
- the updater misspelled `aria-controls`
- `hideFavorite`, `clear-view-delay`, a duplicated modal `title` and the
  button `loading` of the installer did nothing and are removed

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Assisted-by: ClaudeCode:claude-opus-5-5
fix(core): declare the events emitted by the login and menu components

Ten components emitted events without declaring them. Vue 2 does not care,

but Vue 3 also passes an undeclared listener on to the root element, so a

component that re-emits the click of a clickable root would trigger its

parent's handler twice.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>

Assisted-by: ClaudeCode:claude-opus-5-5

[skip ci]
@backportbot backportbot Bot added bug 3. to review Waiting for reviews AI assisted labels Oct 1, 2026
@backportbot backportbot Bot added this to the Nextcloud 35.0.2 milestone Oct 1, 2026

This branch has not been deployed

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant