This project is mirrored from https://git.typo3.org/typo3/typo3.git.
Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Last successful update .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Last successful update .
- 10 Mar, 2021 2 commits
-
-
Benni Mack authored
As the temporary mount point functionality is not bound to the actual PageTree, but the navigation component, this code is now moved outside of the PageTree, and using lit-based rendering and proper event handling. The advantages of this change are that the SVG Tree / PageTree component - does not access HTML outside its own wrapper (parentNode) - the mount point information is now rendered via LIT (= automatically updated) - additional setting "temporaryMountPointPath" is not needed inside the PageTree anymore - We also now use <typo3-backend-icon> and the $lll lit helper Resolves: #93697 Releases: master Change-Id: Idaa56f12e6d1444a1abdf23d2a37b71948d47023 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/68307 Tested-by:
Daniel Sattler <sattler@b13.de> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Benjamin Franzke <bfr@qbus.de> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Daniel Sattler <sattler@b13.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
This patch provides the following changes in order to have better abstractions and encapsulate the dependencies of each implementation. 1. SelectTree (Category Tree) The TreeToolbar is now clearly coupled into the SelectTree and built as LitElement inside the SelectTreeElement. SelectTree now contains all relevant functionality regarding selecting multiple items, and shows settings (SelectTreeSettings) which were only used in SelectTree. This is especially relevant for the multiple item selection, and the exclusiveKey handling. 2. PageTree + FileStorageTree Obsolete public methods are removed, and visibility is changed. Filtering is now separated in favor of a non-public property. By using Types (in e.g. PageTreeDragDrop) the visibility is also adapted Obsolete wrapper methods are removed. Resolves: #93692 Releases: master Change-Id: Ifead098bb80e37d5c7ad5e1d0eabda14aa7087ce Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/68303 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Richard Haeser <richard@richardhaeser.com> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Richard Haeser <richard@richardhaeser.com> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com>
-
- 09 Mar, 2021 2 commits
-
-
Native HTMLElements are more versatile than a the current NavigationComponent interface. All custom actions can be dispatched via events, that means the NavigationComponent interface, as recently introduced in #93672, is removed again. Resolves: #93685 Releases: master Change-Id: I578810ce655d1da3f34bcb456967f62756793b24 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/68233 Tested-by:
Richard Haeser <richard@richardhaeser.com> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Richard Haeser <richard@richardhaeser.com> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
With the update to Bootstrap 5 the CSS class name for animated progress bars changed from `active` to `progress-bar-animated`. This patch updates the wrong class names accordingly. Resolves: #93682 Releases: master Change-Id: If8f4e388513822f0457afa2a37d88ed440f6d709 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/68259 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Markus Klein <markus.klein@typo3.org> Tested-by:
Richard Haeser <richard@richardhaeser.com> Reviewed-by:
Markus Klein <markus.klein@typo3.org> Reviewed-by:
Richard Haeser <richard@richardhaeser.com>
-
- 08 Mar, 2021 1 commit
-
-
In order to use the non-iframe navigation component properly, the current ties to "PageTree" (which was de-facto the only possible navigation component to be used until TYPO3 v11 due to heavy coupling) are removed. The TreeInterface, which served as a wrapper for the PageTree Navigation Component is removed, and replaced by the NavigationComponent interface in TypeScript. In addition, loading and initializing (and keeping state) of the used navigation component now solely relies in the NavigationContainer. This in turn, finally allows to e.g. properly re-load the FileStorageTree and PageTree separately (see BackendUtility change) while incorporating some ES6 nullable functionality. In addition, the NavigationContainer is now jQuery-free. Resolves: #93672 Releases: master Change-Id: Ia16a3e789459225b21fa12efd1db6f3b4500cfef Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/68201 Tested-by:
Richard Haeser <richard@richardhaeser.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Richard Haeser <richard@richardhaeser.com> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- 01 Mar, 2021 1 commit
-
-
The component is provided as replacement for the current lit-helper `icon()` which cannot provide support for icon usage inside shadow dom elements. The component renders all icons as inline SVGs. FontawesomeIconProvider is therefore adapted to provide inline rendered SVGs for font-awesome icons. Not that these inline font-awesome SVGs will also be used in areas where 'inline' icons are requested (like information toolbar) but the fallback to 'default' was used before. The component supports all properties of the Icon API via HTML attributes. Colors and custom sizes can be applied to the component via CSS color/font-size property: typo3-backend-icon[identifier=status-dialog-information] { color:#6daae0; /* An explicit font-size will be used as icon width & height */ font-size: 1.2em; } Resolves: #93473 Releases: master Change-Id: I3044c325f122eb0085ecb3f45fb9502bfb314d5d Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67675 Tested-by:
Richard Haeser <richard@richardhaeser.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Richard Haeser <richard@richardhaeser.com> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 24 Feb, 2021 1 commit
-
-
Benni Mack authored
This change cleans up the tooltip initialization where done manually (e.g. in Recordlist it's its own class). Instead, the default initialization for the data-bs-toggle="tooltip" takes over sane delay settings, fixing flaky Acceptance tests (and real visibility bugs in Scheduler). In addition, the FileList module now also uses bootstrap-powered tooltips again. Resolves: #93583 Releases: master Change-Id: Ibff2aae38569caebab9cf45368dd44b03b451cff Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/68095 Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 22 Feb, 2021 1 commit
-
-
The changes done in #93453 introduced a CSS change that broke all regular collapsible panels as their carets don't rotate anymore. This bugfix reverts the CSS change and adopts the Flexform code to set the `collapsed` class on a more appropriate element. Resolves: #93537 Related: #93453 Releases: master Change-Id: Iff87fd49a7bf9d3b155674578be7cfd887ad1408 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67960 Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 19 Feb, 2021 1 commit
-
-
A new API is introduced, providing multi-factor authentication for the Core. The API is furthermore directly used to add two MFA providers by default: * TOTP (time-based one-time passwords) * Recovery codes Even if the API is designed to allow MFA in both, backend and frontend, it is currently only implemented into the backend. Users can therefore configure their available MFA providers in a new backend module, accessible via their user settings. There are also some configuration options for administrators to e.g. define a recommended provider or to disallow available providers for specific users or user groups. Administration of the users' MFA providers is possible for administrators in the corresponding user records. New providers can be introduced by implementing the MfaProviderInterface and tagging the service with the `mfa.provider` tag. Note that the API is currently marked as internal since changes in upcoming patches are to be expected. Following dependencies are introduced: * bacon/bacon-qr-code "^2.0" * christian-riesen/base32 "^1.5" Possible features that could follow later-on: * MFA frontend integration * Webauthn core provider for FIDO2 and U2F. * Forcing users to set up MFA on login * Password-recovery with active MFA Resolves: #93526 Releases: master Change-Id: I4e902be624c80295c9c0c3286c90a6a680feeb5d Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67548 Reviewed-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benni Mack <benni@typo3.org> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benjamin Franzke <bfr@qbus.de> Tested-by:
Benni Mack <benni@typo3.org>
-
- 17 Feb, 2021 1 commit
-
-
The file list module now also has a tree component which is not based on an iframe anymore, and now behaves similar to the page tree component. The main benefit is performance, which includes a state-of-the-art rendering component, and an added filter button to search for folder names and filenames (!). The tree component replaces the old "file_navframe" which will eventually be deprecated along its Routes, as well as the possibility to use a frame in the navigation component. Resolves: #93426 Releases: master Change-Id: Iad6c0a4288f1d448298cdaec7b52ff20959dbabf Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67578 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Tested-by:
Richard Haeser <richard@richardhaeser.com> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Richard Haeser <richard@richardhaeser.com>
-
- 15 Feb, 2021 2 commits
-
-
This patch refactors the client-side rendering of FlexForm sections. Now, there are two modules in place: - FlexFormSectionContainer This module handles the "outer" part of a section, e.g. to toggle all containers or to revalidate FormEngine if a container is removed. - FlexFormContainerContainer The FlexFormContainerContainer represents an individual container being a child of a section. In order to streamline the UI, the look & feel has been changed to be more similar to IRRE. Resolves: #93453 Releases: master Change-Id: Ica373a6dbed4b470725267eac221bf839b23ec0f Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67589 Tested-by:
Richard Haeser <richard@richardhaeser.com> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Richard Haeser <richard@richardhaeser.com> Reviewed-by:
Benni Mack <benni@typo3.org>
-
Passing jQuery objects to the methods `show()` and `hide()` of the module `TYPO3/CMS/Backend/Tooltip` has been marked as deprecated. The methods now check whether a NodeList or an HTMLElement is passed and handles the tooltip actions accordingly. If a jQuery object is passed, the old behavior is kept and a deprecation is logged in the browser's console. Resolves: #93506 Releases: master Change-Id: I680ae542f616627d3e22262c33cf126abc889d80 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67915 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Martin Kutschker <mkutschker-typo3@yahoo.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Martin Kutschker <mkutschker-typo3@yahoo.com> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 12 Feb, 2021 1 commit
-
-
Avoid JavaScript based offset and height calculations. Position sticky can do that in all supported browsers for us. .module-docheader is additionally adapted to use display:flex in order for the docheader-bar margins to be contained within. (to preserve the position:fixed behaviour, which did the same). While at it, we also avoid jQuery usage within DocumentHeader.ts Releases: master Resolves: #93489 Change-Id: I8c42500c3fb608c7ee8bcfeca0578383814efcb6 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67691 Tested-by:
Markus Klein <markus.klein@typo3.org> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Markus Klein <markus.klein@typo3.org> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 10 Feb, 2021 2 commits
-
-
Now that jQuery has gone and TypeScript is in place for Tree components, the next step is to consolidate and sort out re-usability. This change prepares the way for allowing multiple trees in the navigation component area (for FileStorageTree). * ContextMenu allows int+number (which is correct) * ContextMenu has all information from the TreeNode (and not the SVG element) - less Markup! * KeyTypeEnums are used throughout SvgTree * Centralized place for error notifications, removing duplicate code * tree.settings.isDragAnDrop is removed in favor of tree.settings.allowDragMove (which already exists) * Unused properties in TreeNode are removed * Since we are now in "TS module land", PageTreeToolbar.ts is removed because the class is only used in the PageTreeElement, so it does not need to be exposed anymore. Resolves: #93481 Releases: master Change-Id: Ia9bff532132dba5aea85352d7e510f6a7f9459c6 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67683 Tested-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Richard Haeser <richard@richardhaeser.com> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Richard Haeser <richard@richardhaeser.com>
-
This change splits up Drag+Drop handling in general for SVG-based trees into PageTree specific logic, and common usages. This makes Drag+Drop functionality usable in more places than just the PageTree In addition, all usages of jQuery are removed and proper types were added instead of using "any". Resolves: #93478 Releases: master Change-Id: Ibb17cdd718424760676899b7746cb0828e06fc7d Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67682 Tested-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Richard Haeser <richard@richardhaeser.com> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Richard Haeser <richard@richardhaeser.com>
-
- 09 Feb, 2021 2 commits
-
-
The PageTree toolbar now displays both menu areas ("main menu" and "submenu") all the time and removes the submenu toggles / buttons. This is a request from various UX developers to: * remove buttons for toggling if there is enough space * decouple buttons from the click / drag functionality (some had borders, some did not) * not hide the filter in a submenu (unclear that the left buttons are menu toggles) In itself, the loading area is now clearer (via simpler CSS), and the TypeScript/JS code gains simplicity for building the menu. Resolves: #93474 Releases: master Change-Id: Ie3767e247f28418af949b39b39919e50f13cc48f Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67677 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Tested-by:
Richard Haeser <richard@richardhaeser.com> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Richard Haeser <richard@richardhaeser.com>
-
This change migrates all left-over components of * SvgTree * SelectTree (a.k.a. CategoryTree) * and PageTree to TypeScript adding types in various places to make the code less error-prone. Resolves: #87678 Resolves: #85400 Releases: master Change-Id: Ibb4024d365857c44018a7a201c1cf75baa48179a Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67662 Tested-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
core-ci <typo3@b13.com> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com>
-
- 08 Feb, 2021 3 commits
-
-
renderElement() was added in patchset 2 of #93446. The code was then refactored to use renderHTML, but the method was forgotten to be removed in the final patchset. Now, the intention of the mentioned patchset 2 was to render nodes directly to the DOM in PageTreeDragHandler, instead of rendering to a temporary element, just to export and re-import as HTML string with jQuery/innerHTML. Therefore PageTreeDragHandler is now refactored to a new, (internal) method renderNodes() which allows the returned nodes to be directly attached to the document. Also, while at it, all other lit-helper methods are marked as internal as well, as they are still subject to change: * `renderHTML()` is only needed when mixing traditional jQuery rendering and lit-html (same as for the new `renderNodes()`.) * The `icon()` method could likely be replaced by a custom <typo3-backend-icon> component * `lll()` is only of use for globally available language identifiers (which are added via inline JS) So this is also likely to change when more backend modules start to use lit-html/LitElement. Resolves: #93464 Related: #93446 Releases: master Change-Id: I61ab778e28e32b75b6e7965b75259beedbb10ae3 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67663 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
Benni Mack authored
The Backend LoginRefresh password field now also contains "autocomplete=current-password" just like the login-form. Sidenote: The attribute (also for the username) must be added manually via jQuery as there is a strange bug not allowing "autocomplete". In addition, it fixes a typo for the rsa-encryption to be proper english, and not needing a special handling for LoginRefresh.js anymore. Resolves: #93448 Releases: master Change-Id: Iedf306380a4dbfb5ec31c37f932f8d3b64daf366 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67654 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
The PageTree components for the navigation area consists of: * PageTreeElement (container for rendering the navigation area w. toolbar + dragdrop + tree) * PageTreeToolbar (uses DnD for creating new items) * PageTree (JS, subclass of SvgTree) * PageTreeDragDrop This patch aims to rework the "PageTreeDragDrop" javascript file by moving separate logic into separate classes (as much as possible) and into a more stable API, being a first part. PageTreeDragDrop is a mixed code class currently, and is now split up in various separate classes: * DragDropHandler (interface) * ToolbarDragHandler -> used as the Toolbar Draggable Handler for new pages * PageTreeNodeDragHandler => used for moving/copying and deleting existing pages/nodes * PageTreeDragDrop now acts as a simple wrapper for d3-drag but still has some shared state For Future Reference: It is still up to decide on how to further decouple the code. Idea 1: Putting the d3-drag initialization into the right place and avoiding cross-dependencies. In general "initializeDragForNode" would also be handled via events, and all options / settings would be moved into the PageTreeDragDrop class. Ideally the PageTreeDragDrop contains the status of the current drag+drop action (position, node etc), so the PageTree would not know of anything itself. Idea 2: Another possibility is to use the current "PageTreeDragDrop" as a generic "TreeDragDropManager" because it does not contain any Page-Tree specific code anymore, but could be carried on later-on. The current change is already a good step as it moves all code to TypeScript and minimizes injection via constructors (except for the Tree itself). Resolves: #93446 Releases: master Change-Id: Ibd7a067c1e6a821b138a8cc2971ec8133392b600 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67650 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com>
-
- 06 Feb, 2021 3 commits
-
-
Updated styling and javascript to restore styling of the localization wizard after the update to bootstrap 5. Resolves: #93408 Releases: master Change-Id: I6f3dc03af943e3eae240c84a218e8b72dcb8d276 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67627 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Riccardo De Contardi <erredeco@gmail.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
Andreas Fernandez authored
This patch adds the TypeScript declaration for the sortablejs library. Since the imported module has a different naming, the PageRenderer needs both the new module name ("sortablejs") and the old name ("Sortable") as this would be a breaking change, otherwise. In the master patch, the old module name has been declared deprecated. Resolves: #93454 Releases: master, 10.4 Change-Id: Ia8cc7bb4fb57bc7d55aa3601d6ccd1bfe6e0b54d Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67658 Tested-by:
core-ci <typo3@b13.com> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de>
-
While updating bootstrap to 5.0.0-beta1 (https://review.typo3.org/c/Packages/TYPO3.CMS/+/67215) The 'a) Carousel "item" to "carousel-item" class migration' was done for the ext:backend 'Wizard' component but not for the 'MultiStepWizard' component. Therefore the 'new form' wizard will not work properly. This patch migrates the usage of 'item' classes to 'carousel-item' within the 'MultiStepWizard' component. Resolves: #93168 Releases: master Change-Id: I4c2a47147b668694c84ccda1dd01b7fe3e3d7808 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67579 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Riccardo De Contardi <erredeco@gmail.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 04 Feb, 2021 2 commits
-
-
This change aims to reduce the overhead by using jQuery in favor of Vanilla JS in various Tree-related JS files in preparation for a TypeScript migration. * SvgTree.js * SelectTree.js * PageTree.js * PageTreeToolbar.ts * PageTreeElement.ts * TreeToolbar.ts Resolves: #93427 Releases: master Change-Id: I57fc8e66415ea4ab6eaf690d925fbf7670d74284 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67583 Tested-by:
Benjamin Franzke <bfr@qbus.de> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com>
-
Benni Mack authored
This change migrate the TreeToolbar (used in FormEngine Category Tree for example) to TypeScript, removing effectively one RequireJS call and replacing it with a native TypeScript component. Removing the rest of the jQuery will be part of a separate effort. Resolves: #93432 Releases: master Change-Id: I3df66cd1c28d096c0f32982347dbd37c58834e4d Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67640 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 02 Feb, 2021 2 commits
-
-
Benni Mack authored
With #89496 the ContextMenu got keyboard support added. However, the underlying code does still use only a click event to trigger the ContextMenu, which is now also manually triggered for keypress events. It was therefore not possible to differ between the three possible ways, the ContextMenu can be used: 1. Mouse click only 2. Mixed 2.1 Click on ContextMenu and navigate via keyboard 2.2 Access ContextMenu via keyboard and navigate via click 3. Keyboard only Therefore, we now check the mouse position. If it's NULL, the ContextMenu was openend via keyboard. Furthermore, we use a boolean flag, which helps the getPosition method to determine the correct position in mixed mode. Using mouse click will now behave like before. Using the keyboard will now always use the boundingRect for positioning. Resolves: #93362 Releases: master Change-Id: I1e2be756b85d0a2286524f0bdc9cca76208935d1 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67510 Tested-by:
Richard Haeser <richard@richardhaeser.com> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Richard Haeser <richard@richardhaeser.com> Reviewed-by:
Benni Mack <benni@typo3.org>
-
In order to avoid loading an unnecessarily large complete d3 bundle, we now only pull in the small amount of modules we actually need. d3.transition() is replaced by the native web animation api, as d3-transition would pull in 4 more libraries (d3-color, d3-ease, d3-interpolate and d3-timer). d3-dispatch could easily be replaced by native CustomEvents, but it is a dependency of d3-drag and therefore shipped right now. This change reduces load size from 262K to 19K. yarn remove d3 yarn add d3-dispatch d3-drag d3-selection grunt build Releases: master Resolves: #93396 Change-Id: I1f4b58b967e2dcc57484863faafab3c2ec5d469a Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67622 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Richard Haeser <richard@richardhaeser.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Richard Haeser <richard@richardhaeser.com> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 01 Feb, 2021 1 commit
-
-
Benni Mack authored
The PageTree component (added in TYPO3 v9) is based on SVG Tree, which was added in a previous version (TYPO3 v8). However, changes like https://review.typo3.org/c/Packages/TYPO3.CMS/+/55878/ unnecessarily coupled the SVG Tree to the PageTree. In addition, some minor details to NOT use pagetree IDs everywhere allows to use other SVG-tree based components in the navigation container in the future. id=typo3-pagetree-treeContainer is kept for typo3/testing-framework compatibility, for now. Resolves: #93389 Releases: master Change-Id: Ieb51e46937cfb2f11efeb976da09bc600af8b5cf Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67575 Tested-by:
Benjamin Franzke <bfr@qbus.de> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 29 Jan, 2021 1 commit
-
-
+ removed NavigationComponentInterface - actually no class-like component did implement it + introduced TreeInterface, having some aspects of previous NavigationComponentInterface + aim to use native DOM operations (instead jQuery) where possible + switched templating in PageTreeElement and PageTreeToolbar to lit-html Resolves: #93380 Releases: master Change-Id: Ia2a05ff3d05193e52d440e409ecca4c1e1feb518 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67544 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- 27 Jan, 2021 3 commits
-
-
When an IRRE field in FormEngine has maxitems set, and an item gets removed (thus, allowing an inline element to be added again), the buttons to create new elements are shown again. This fixes a regression introduced with #91595. Resolves: #93091 Resolves: #93238 Related: #91595 Releases: master, 10.4 Change-Id: If4c8152ab6e4fc1388fbfcf1af72fa2609f6df16 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67541 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Jörn Wagner <joern.wagner@explicatis.com> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Jörn Wagner <joern.wagner@explicatis.com> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com>
-
The button in the topbar for switching of the navigation area (page tree for example) is removed in favor of: 1) a button to switch the navigation frame on / off layered above the nav container 2) a resizable handler on the right to finally resize the navigation tree again The feature now keeps the previously selected size in the users' "uc" configuration. When a user resizes the pagetree, it is kept during reload and next login. It is possible to resize (drag&drop) via the mouse or with touch events. Kudos to Benjamin Kott for his first draft in 2019 for this feature, where some parts of this implementation are taken from. Resolves: #78760 Resolves: #89355 Releases: master Change-Id: I4ead734fe2a4e7ce93191eeb03c3312ce7d94643 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67511 Tested-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Benjamin Franzke <bfr@qbus.de> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com>
-
In #92704 the module menu got improved. The toolbar events were delegated to dedicated objects instead of just delegating to "document". Since the help menu is not the only toolbar component using those events, it must be delegated to the whole toolbar instead. Resolves: #93358 Releases: master Change-Id: I30b81ffcbdb5b460a548d2ffac90d8dca198808d Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67522 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Jochen <rothjochen@gmail.com> Tested-by:
Martin Kutschker <mkutschker-typo3@yahoo.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Jochen <rothjochen@gmail.com> Reviewed-by:
Martin Kutschker <mkutschker-typo3@yahoo.com> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 22 Jan, 2021 2 commits
-
-
Use flexbox for layouting to avoid transform/position based shifting of the content module. Also use `position: sticky` instead of `position: fixed`, as it allows to avoid padding hacks. Also remove manual Viewport.doLayout() hacks, as we can now use `width: auto` as replacement for a static snapped-module menu width. Resolves: #93353 Releases: master Change-Id: I7d56a3b3b405e36d65c9a87a03360074354c3d9d Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67502 Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
Benni Mack authored
This change migrates the responsive topbar to flexbox, getting rid of some ugly "position: fixed" functionality as well as manual calculation of width / padding via JS, making the scaffolding better to understand and to use. On top, this change fixes bugs related to styling when using the topbar in non-desktop clients Resolves: #93318 Releases: master Change-Id: I510fd15cfce3243c0a8e6d5dcfcbd438476bb630 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67465 Tested-by:
Benjamin Franzke <bfr@qbus.de> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 20 Jan, 2021 1 commit
-
-
The module menu implements the keyboard navigation suggested by the ARIA Best Practices 1.1 for roles "menubar" and "menu". The first level menu has a "menubar" role, the second level submenus have a "menu" role. The buttons have the "menuitem" role. Both the "menubar" and the "menu" are oriented vertically for assistive technology matching the visual representation which affects the keyboard navigation. Space/Enter show the module unless the item has a submenu. Space/Enter and Right Arrow open a submenu and move focus to the first item. Up/Down Arrow and Home/End navigate within the current level of the menu. Ctrl + Home/End navigate within the first level of the menu (extension of the ARIA pattern). Left/Right Arrow moves to the parent item's predecessor/successor when on a submodule item. The submenu will not be closed (deviation from the ARIA pattern). Escape moves to the parent item of a submodule item. The submenu will not be closed (deviation from the ARIA pattern). Tab and Shift + Tab move to the next item outside of the module menu. The help menu implements the keyboard navigation suggested by the ARIA Best Practices 1.1 for the role "menu". This is the same as the module menu but limited to a single level. The change detaches again the module menu's event listener from the document as in #91642, but reinitializes the event listeners to handle situations as described in #93008 properly. Resolves: #92704 Resolves: #92634 Resolves: #92613 Releases: master Change-Id: I58ae5caa81882ccebd4e2ae2d944eb99e15a4b18 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66283 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Michael Telgkamp <michael.telgkamp@mindscreen.de> Tested-by:
Guido Schmechel <guido.schmechel@brandung.de> Tested-by:
Richard Haeser <richard@richardhaeser.com> Reviewed-by:
Michael Telgkamp <michael.telgkamp@mindscreen.de> Reviewed-by:
Richard Haeser <richard@richardhaeser.com>
-
- 19 Jan, 2021 1 commit
-
-
The Permissions backend module and its JavaScript module now ditch jQuery in favor of native browser API and TYPO3 API. The JavaScript has been refactored a little bit; initially checking the permission checkboxes or writing back the calculcated permission value is now decoupled and executed in the Permission module only. To support for..of with NodeList collections, TypeScript now loads the internal "dom.iterable" library. Additionally, the interim solution to add `editform` to Document has been removed which made another change in LinkPopup necessary. Furthermore, a bug has been fixed, where the value of the first visible select element was used when saving any other select element with a completely different value. Resolves: #93301 Releases: master Change-Id: Iffede862a0eb36e805a5f127d7b19f32c899ce31 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67457 Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 18 Jan, 2021 1 commit
-
-
The opendocs toolbar item does not have a badge background anymore, this changes re-adds the background and also unifies the badge from the system information toolbar to use the rounded-pill class. Resolves: #93303 Releases: master Change-Id: Ie2ecc99fd5ad4ad8845923af018c051665ac6118 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67459 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Riccardo De Contardi <erredeco@gmail.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- 11 Jan, 2021 3 commits
-
-
If a Flexform section gets deleted, the container must be hidden in DOM and not deleted, as the underlying DataHandler code relies on getting the field submitted. This patch is less intrusive as possible to allow a backport to stable releases. Flexforms needs a major refactoring and should act similar to IRRE, but this can go into the master branch only. Resolves: #93061 Releases: master, 10.4 Change-Id: I69dfdd6f2029547d600939f23e21b03abd45042d Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67369 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Martin Kutschker <mkutschker-typo3@yahoo.com> Tested-by:
Richard Haeser <richard@richardhaeser.com> Reviewed-by:
Martin Kutschker <mkutschker-typo3@yahoo.com> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Richard Haeser <richard@richardhaeser.com>
-
The correct height of the input group is restored by removing unnecessary wrappers around the buttons. See: https://getbootstrap.com/docs/5.0/forms/input-group/#button-addons Resolves: #93262 Releases: master Change-Id: I3e8276f66efbb593480371d3ee26d0ec08ba35d8 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67399 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Jochen <rothjochen@gmail.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Jochen <rothjochen@gmail.com> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
When an error occurs in a DataHandler AJAX call, the error message should only be shown once. Resolves: #93207 Releases: master, 10.4 Change-Id: I8f341d08bfe051af5a485f21628907c74a812490 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67331 Tested-by:
Benjamin Franzke <bfr@qbus.de> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de>
-