Joas Schilling
616eb27e21
fix(menu): Fix icon colors on waffle menu
...
[skip ci]
Signed-off-by: Joas Schilling <coding@schilljs.com>
2026-06-05 08:21:16 +02:00
Peter Ringelmann
76818dbfa2
fix: tests
...
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2026-06-02 11:46:57 +00:00
Peter Ringelmann
352d0cc53b
fix: settings icon
...
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-06-02 11:51:13 +02:00
Peter Ringelmann
0a36e6a829
fix(core): collapse settings entries to 'Settings' in current-app trigger
...
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-06-02 11:51:13 +02:00
nfebe
6b6f129c67
feat(search): Subdue header search input placeholder
...
The header search placeholder now reads as a hint rather than
competing visually with the icon and surrounding header items.
Refs: nextcloud/server#59888
Signed-off-by: nfebe <fenn25.fn@gmail.com>
2026-05-28 20:20:21 +01:00
Peter Ringelmann
57df565cb9
fix(core): Hide current-app label at narrower viewports
...
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-27 15:52:43 +02:00
nfebe
ba8b8c4c09
feat(core): Add centered search input to top bar
...
A centered, input-styled trigger replaces the top-right search icon as
the entry point to Unified Search. First phase of a phased rollout
that will later turn the trigger into a real inline-filtering input.
Refs: nextcloud/server#59888
Signed-off-by: nfebe <fenn25.fn@gmail.com>
2026-05-26 22:32:52 +01:00
Peter Ringelmann
c1a835c032
refactor: simplify dynamic height logic
...
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-19 15:15:32 +02:00
Peter Ringelmann
62ad771cde
fix(core): preserve waffle menu peek-row hint when labels wrap
...
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-19 13:26:56 +02:00
Peter Ringelmann
f401b29405
feat(core): app menu polish for NC34
...
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-19 13:26:56 +02:00
Peter Ringelmann
bc04903ce6
fix(core): app menu icon contrast in dark mode
...
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-11 14:50:49 +02:00
Peter Ringelmann
490c6e7c06
test(core): align AppMenu mock with new icon helper
...
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-11 14:50:49 +02:00
Peter Ringelmann
0b97e4f585
fix(core): app menu launcher tile icon, dark mode, and hyphenation
...
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-11 14:50:49 +02:00
Peter Ringelmann
fa201206bb
fix: unit test
...
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-07 19:25:15 +02:00
Peter Ringelmann
55f9a872af
fix: minor styling issues
...
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-07 19:25:15 +02:00
Peter Ringelmann
041dd9f70b
refactor(AppItem): drop redundant boolean prop defaults
...
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-07 19:25:15 +02:00
Peter Ringelmann
f895e77ab4
feat: only app store link opens in new tab
...
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-07 19:25:15 +02:00
Peter Ringelmann
8e5d02be2d
feat: add app store link for non-admins
...
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-07 19:25:15 +02:00
Peter Ringelmann
7ec7eb86bf
fix: remove new tab links
...
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-07 19:25:15 +02:00
Peter Ringelmann
78e98bba29
fix: stylelint issue
...
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-07 19:25:15 +02:00
Peter Ringelmann
4cd0ddbf66
feat(core): app menu waffle launcher
...
- Popover grid replaces the old hamburger overlay
- Roving tabindex keyboard nav (arrow keys, Home/End, Enter/Space)
- Focus returns to whichever trigger opened the popover
- RTL-aware horizontal alignment
- Admin-only "More apps" tile
- Unit + Cypress coverage
Resolves : #59888
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-07 19:25:15 +02:00
Peter Ringelmann
82fb2e1bb3
fix(core): prompt for password once when installing recommended apps
...
Wire the password-confirmation interceptors into the recommendedapps
entry point and switch the installer to a single bulk enable call so
the strict password confirmation on enableApps is satisfied.
Fixes #60068
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-05-06 13:25:52 +02:00
Ferdinand Thiessen
b0d364388a
refactor(appstore): handle in-app-search of appstore
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-05-05 22:16:01 +02:00
Anna Larch
ef0db44d01
test(core): add unit tests for RedirectUnsupportedBrowsers
...
Covers the main logic paths: supported browser (no redirect), unsupported
browser (redirect with btoa-encoded URL), already on the warning page
(no double redirect), and a no-throw guard that would have caught the
window.Buffer regression.
AI-Assisted-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Anna Larch <anna@nextcloud.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2026-05-04 20:35:59 +02:00
Anna Larch
2aa944a80f
fix(core): use btoa() instead of window.Buffer.from() for base64 encoding
...
window.Buffer is a Node.js API that is not natively available in browsers.
It was apparently polyfilled in the webpack bundle by a dependency, but
the polyfill is absent in environments like headless Electron (Cypress).
This went undetected because browserslist-useragent-regexp < 4.1.4 had a
bug where an empty browser set produced /(?:)/ (matches everything). Electron
matched as "supported" and the redirect code was never reached.
browserslist-useragent-regexp 4.1.4 fixed that bug (PR #1583 : faithfully
match an empty set of browsers), generating /[]/ instead. Electron 118 no
longer matches as supported, the redirect path is now exercised, and
window.Buffer.from() throws:
TypeError: Cannot read properties of undefined (reading 'from')
The fix replaces window.Buffer.from(str).toString('base64') with the
native browser btoa(str), which has been universally available since
before our minimum browser support baseline and requires no polyfill.
Fixes : #57920
Signed-off-by: Anna Larch <anna@nextcloud.com>
2026-05-04 19:48:19 +02:00
Côme Chilliet
ab2df86b78
chore: Fix lint error in PasswordLessLoginForm.vue
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-04-30 14:07:00 +02:00
Ferdinand Thiessen
c4e2159284
Merge pull request #58576 from nextcloud/carl/updater-controller
...
refactor(updater): Move updater to a Controller
2026-04-30 01:19:45 +02:00
Carl Schwan
b53d9a7259
refactor(updater): Move updater to a Controller
...
Signed-off-by: Carl Schwan <carlschwan@kde.org>
2026-04-29 22:58:15 +02:00
Côme Chilliet
6ced1ce9d8
chore: Fix npm lint issues in PasswordLessLoginForm.vue
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-04-28 10:00:19 +02:00
Côme Chilliet
19c7ac9194
fix: Always redirect to an absolute URL
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2026-04-28 10:00:19 +02:00
Ferdinand Thiessen
a4132d73cc
chore!(core): remove deprecated Handlebars globals
...
Global Handlebars have been deprecated since Nextcloud 19.
We do not use them anymore and all integrations were removed with
Nextcloud 34. So its time to also remove the globals and thus the
dependency.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-04-24 07:46:38 +02:00
Peter Ringelmann
ea6e031e04
fix(core): skip unified-search Ctrl+F on pages with their own handler
...
-e
Signed-off-by: Peter Ringelmann <peter.ringelmann@nextcloud.com>
2026-04-23 09:53:22 +02:00
Ferdinand Thiessen
0dc7add400
chore: fix ESLint issues reported because of config update
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-04-20 22:13:24 +02:00
Ferdinand Thiessen
6db75dca92
chore: fix ESLint issues for rules added in ESLint v10
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-04-20 22:13:24 +02:00
Ferdinand Thiessen
c96099183e
fix(sharing): show common confirmation on password reset
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-04-09 16:59:19 +02:00
Josh
1c1bd469b8
chore(EventSource): drop client-side fallback
...
Signed-off-by: Josh <josh.t.richards@gmail.com>
2026-03-21 09:14:35 -04:00
provokateurin
e8feef1c9c
fix(core): Allow external sharing to plain http://localhost
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2026-02-23 10:59:02 +00:00
Ferdinand Thiessen
b0df06d533
chore!(core): remove deprecated jQuery and jQuery UI
...
"jQuery is deprecated and will be removed with Nextcloud 19"
Well... At least it is removed now 😉
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-02-17 12:51:42 +01:00
Ferdinand Thiessen
00a5c028a4
chore!(core): remove legacy Backbone
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-02-17 12:50:49 +01:00
Ferdinand Thiessen
a32168b01e
chore!(core): remove legacy OC.Files.Client
...
Use the DAV client from `@nextcloud/files/dav` instead.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-02-17 12:50:49 +01:00
Ferdinand Thiessen
fd5108b68b
chore!(core): remove global snapper.js handling
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-02-17 12:50:49 +01:00
Ferdinand Thiessen
c89939fbd6
chore!(core): remove handling of .live-relative-timestamp use @nextcloud/vue/components/NcDateTime instead
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-02-17 12:50:49 +01:00
Ferdinand Thiessen
503fad2b16
chore!(core): remove legacy OC.registerMenu and other menu helpers
...
Instead use Vue components.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-02-17 12:50:49 +01:00
Ferdinand Thiessen
e14d97b95a
chore!(core): remove deprecated OC.Apps
...
Instead use components from `@nextcloud/vue`
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-02-17 12:50:49 +01:00
Ferdinand Thiessen
b66292a0d4
chore!(core): drop deprecated OC.Notification
...
Deprecated since 17.0.0, use the `@nextcloud/dialogs` package instead.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-02-17 12:50:49 +01:00
Ferdinand Thiessen
16f4ff98e4
chore!(core): drop deprecated OC.Dialogs.fileexists
...
It is deprecated since 29.0.0.
Instead use `openConflictPicker` from the `@nextcloud/upload` (Vue 2).
Or from `@nextcloud/dialogs` (every other framework like Vue 3 etc).
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-02-17 12:50:49 +01:00
Ferdinand Thiessen
9c8f80102a
chore!(core): drop deprecated OC.Settings
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-02-17 12:50:49 +01:00
Enjeck C.
cad90ac28a
fix: Add support for AscDesktopEditor browser user agent
...
Signed-off-by: Enjeck C. <patrathewhiz@gmail.com>
2026-01-28 18:28:01 +01:00
Ferdinand Thiessen
e25f864e28
chore(legacy): fix @stylistic/exp-list-style ESLint rule
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-01-26 00:05:29 +01:00
Ferdinand Thiessen
503acb0ed6
feat: allow to filter contacts by team
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2026-01-23 14:54:41 +01:00