diff --git a/Build/Gruntfile.js b/Build/Gruntfile.js index e3c8db960659e99536354352bd86bd5f12871378..1c960fd362c3c15519251226c415e5966174e3a2 100644 --- a/Build/Gruntfile.js +++ b/Build/Gruntfile.js @@ -144,6 +144,7 @@ module.exports = function(grunt) { '<%= paths.backend %>Public/Icons/Action/actions-page-new.svg': '<%= paths.icons %>Action/actions-page-new.svg', '<%= paths.backend %>Public/Icons/Action/actions-page-move.svg': '<%= paths.icons %>Action/actions-page-move.svg', '<%= paths.backend %>Public/Icons/Action/actions-page-open.svg': '<%= paths.icons %>Action/actions-page-open.svg', + '<%= paths.backend %>Public/Icons/Action/actions-refresh.svg': '<%= paths.icons %>Action/actions-refresh.svg', '<%= paths.backend %>Public/Icons/Action/actions-search.svg': '<%= paths.icons %>Action/actions-search.svg', '<%= paths.backend %>Public/Icons/Action/actions-system-cache-clear-impact-high.svg': '<%= paths.icons %>Action/actions-system-cache-clear-impact-high.svg', '<%= paths.backend %>Public/Icons/Action/actions-system-cache-clear-impact-low.svg': '<%= paths.icons %>Action/actions-system-cache-clear-impact-low.svg', diff --git a/Build/Resources/Private/Icons/Action/actions-refresh.svg b/Build/Resources/Private/Icons/Action/actions-refresh.svg new file mode 100644 index 0000000000000000000000000000000000000000..f73fc0df811af0816e9ab16d5c7270a985122ac3 --- /dev/null +++ b/Build/Resources/Private/Icons/Action/actions-refresh.svg @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --> +<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" + viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve"> +<g id="actions-refresh"> + <path d="M14,8c0-3.31-2.69-6-6-6C6.88,2,5.84,2.31,4.94,2.84l0.61,0.97C6.27,3.39,7.1,3.13,8,3.13c2.68,0,4.87,2.18,4.87,4.87H11 + l2.5,4L16,8H14z"/> + <path d="M8,12.87c-2.68,0-4.87-2.18-4.87-4.87H5L2.5,4L0,8h2c0,3.31,2.69,6,6,6c1.09,0,2.1-0.29,2.98-0.8l-0.61-0.97 + C9.67,12.63,8.87,12.87,8,12.87z"/> +</g> +</svg> diff --git a/typo3/sysext/backend/Classes/Controller/FileSystemNavigationFrameController.php b/typo3/sysext/backend/Classes/Controller/FileSystemNavigationFrameController.php index cd423ed0f7c6fcb95edac91f68eb47c49997cd1d..8bcb5330c9ceeeb873432f7acdb3191620dc3fce 100644 --- a/typo3/sysext/backend/Classes/Controller/FileSystemNavigationFrameController.php +++ b/typo3/sysext/backend/Classes/Controller/FileSystemNavigationFrameController.php @@ -226,7 +226,7 @@ class FileSystemNavigationFrameController implements ControllerInterface { ); $iconFactory = GeneralUtility::makeInstance(IconFactory::class); // Refresh - $buttons['refresh'] = '<a href="' . htmlspecialchars(GeneralUtility::getIndpEnv('REQUEST_URI')) . '">' . $iconFactory->getIcon('actions-system-refresh', Icon::SIZE_SMALL) . '</a>'; + $buttons['refresh'] = '<a href="' . htmlspecialchars(GeneralUtility::getIndpEnv('REQUEST_URI')) . '">' . $iconFactory->getIcon('actions-refresh', Icon::SIZE_SMALL) . '</a>'; // CSH $buttons['csh'] = str_replace('typo3-csh-inline', 'typo3-csh-inline show-right', BackendUtility::cshItem('xMOD_csh_corebe', 'filetree')); return $buttons; diff --git a/typo3/sysext/backend/Classes/Controller/PageTreeNavigationController.php b/typo3/sysext/backend/Classes/Controller/PageTreeNavigationController.php index 089e9b22cffafcd71dba8da1d0d78dbbd806467a..7352284416ba94f636a8d7980e68b9a0738a2af5 100644 --- a/typo3/sysext/backend/Classes/Controller/PageTreeNavigationController.php +++ b/typo3/sysext/backend/Classes/Controller/PageTreeNavigationController.php @@ -236,7 +236,7 @@ class PageTreeNavigationController { . $this->iconFactory->getIcon('actions-page-new', Icon::SIZE_SMALL) . '</a>'; // Refresh - $buttons['refresh'] = '<a href="' . htmlspecialchars(GeneralUtility::getIndpEnv('REQUEST_URI')) . '" title="' . $this->getLanguageService()->sL('LLL:EXT:lang/locallang_core.xlf:labels.refresh', TRUE) . '">' . $iconFactory->getIcon('actions-system-refresh', Icon::SIZE_SMALL)->render() . '</a>'; + $buttons['refresh'] = '<a href="' . htmlspecialchars(GeneralUtility::getIndpEnv('REQUEST_URI')) . '" title="' . $this->getLanguageService()->sL('LLL:EXT:lang/locallang_core.xlf:labels.refresh', TRUE) . '">' . $iconFactory->getIcon('actions-refresh', Icon::SIZE_SMALL)->render() . '</a>'; // CSH $buttons['csh'] = str_replace('typo3-csh-inline', 'typo3-csh-inline show-right', BackendUtility::cshItem('xMOD_csh_corebe', 'pagetree')); return $buttons; diff --git a/typo3/sysext/backend/Classes/Controller/Wizard/TableController.php b/typo3/sysext/backend/Classes/Controller/Wizard/TableController.php index 5fd9ef6d17add8fdfb3569a5f19a34a5332dd132..b3ae886298a9e06bcba66f8f9284d6635c84f916 100644 --- a/typo3/sysext/backend/Classes/Controller/Wizard/TableController.php +++ b/typo3/sysext/backend/Classes/Controller/Wizard/TableController.php @@ -229,7 +229,7 @@ class TableController extends AbstractWizardController implements \TYPO3\CMS\Cor . '</button>'; // Reload $buttons['reload'] = '<button class="c-inputButton" name="_refresh" value="1" title="' . $this->getLanguageService()->getLL('forms_refresh', TRUE) . '">' - . $this->iconFactory->getIcon('actions-system-refresh', Icon::SIZE_SMALL) + . $this->iconFactory->getIcon('actions-refresh', Icon::SIZE_SMALL) . '</button>'; } return $buttons; diff --git a/typo3/sysext/backend/Classes/Tree/Pagetree/ExtdirectTreeDataProvider.php b/typo3/sysext/backend/Classes/Tree/Pagetree/ExtdirectTreeDataProvider.php index ced9b2da36a5038d27a52c6e651223e2bdd9aef0..a0bfbf4a2debe0b98ecfce96b3a001d2b90d262e 100644 --- a/typo3/sysext/backend/Classes/Tree/Pagetree/ExtdirectTreeDataProvider.php +++ b/typo3/sysext/backend/Classes/Tree/Pagetree/ExtdirectTreeDataProvider.php @@ -195,7 +195,6 @@ class ExtdirectTreeDataProvider extends \TYPO3\CMS\Backend\Tree\AbstractExtJsTre 'temporaryMountPoint' => Commands::getMountPointPath() ), 'Sprites' => array( - 'Refresh' => IconUtility::getSpriteIconClasses('actions-system-refresh'), 'InputClear' => IconUtility::getSpriteIconClasses('actions-input-clear'), 'TrashCan' => IconUtility::getSpriteIconClasses('actions-edit-delete'), 'TrashCanRestore' => IconUtility::getSpriteIconClasses('actions-edit-restore'), @@ -204,6 +203,7 @@ class ExtdirectTreeDataProvider extends \TYPO3\CMS\Backend\Tree\AbstractExtJsTre 'Icons' => array( 'NewNode' => (string)$this->iconFactory->getIcon('actions-page-new', Icon::SIZE_SMALL), 'Filter' => (string)$this->iconFactory->getIcon('actions-filter', Icon::SIZE_SMALL), + 'Refresh' => (string)$this->iconFactory->getIcon('actions-refresh', Icon::SIZE_SMALL) ) ); return $configuration; diff --git a/typo3/sysext/backend/Resources/Public/Icons/Action/actions-refresh.svg b/typo3/sysext/backend/Resources/Public/Icons/Action/actions-refresh.svg new file mode 100644 index 0000000000000000000000000000000000000000..6a94489d6c836207e3ffd467f7d7ad40779141c2 --- /dev/null +++ b/typo3/sysext/backend/Resources/Public/Icons/Action/actions-refresh.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M14 8c0-3.31-2.69-6-6-6-1.12 0-2.16.31-3.06.84l.61.97c.72-.42 1.55-.68 2.45-.68 2.68 0 4.87 2.18 4.87 4.87H11l2.5 4L16 8h-2zM8 12.87c-2.68 0-4.87-2.18-4.87-4.87H5L2.5 4 0 8h2c0 3.31 2.69 6 6 6 1.09 0 2.1-.29 2.98-.8l-.61-.97c-.7.4-1.5.64-2.37.64z"/></svg> \ No newline at end of file diff --git a/typo3/sysext/backend/Resources/Public/JavaScript/extjs/components/pagetree/javascript/toppanel.js b/typo3/sysext/backend/Resources/Public/JavaScript/extjs/components/pagetree/javascript/toppanel.js index 4c6d0cfc221a89c4c7029567e7ac22e86fc8d4f0..74e19b101e4bc55126152d60ed07a5a2c4376cfa 100644 --- a/typo3/sysext/backend/Resources/Public/JavaScript/extjs/components/pagetree/javascript/toppanel.js +++ b/typo3/sysext/backend/Resources/Public/JavaScript/extjs/components/pagetree/javascript/toppanel.js @@ -450,7 +450,7 @@ TYPO3.Components.PageTree.TopPanel = Ext.extend(Ext.Panel, { var topPanelButton = new Ext.Button({ id: this.id + '-button-refresh', cls: this.id + '-button', - iconCls: TYPO3.Components.PageTree.Sprites.Refresh, + text: TYPO3.Components.PageTree.Icons.Refresh, tooltip: TYPO3.Components.PageTree.LLL.buttonRefresh, listeners: { diff --git a/typo3/sysext/compatibility6/Classes/Controller/Wizard/FormsController.php b/typo3/sysext/compatibility6/Classes/Controller/Wizard/FormsController.php index e6c33e1280cb291d5528fc6b1b763058f5e223b0..73baa65c2aba58b55a1177a1ebcf9d25c79fe9c4 100644 --- a/typo3/sysext/compatibility6/Classes/Controller/Wizard/FormsController.php +++ b/typo3/sysext/compatibility6/Classes/Controller/Wizard/FormsController.php @@ -274,7 +274,7 @@ class FormsController extends \TYPO3\CMS\Backend\Controller\Wizard\AbstractWizar // Save & Close $buttons['save_close'] = '<button class="c-inputButton" name="saveandclosedok" value="1" title=' . $this->getLanguageService()->sL('LLL:EXT:lang/locallang_core.xlf:rm.saveCloseDoc', TRUE) . '>' . $this->iconFactory->getIcon('actions-document-save-close', Icon::SIZE_SMALL) . '</button>'; // Reload - $buttons['reload'] = '<button class="c-inputButton" name="_refresh" value="1" title="' . $this->getLanguageService()->getLL('forms_refresh', TRUE) . '">' . $this->iconFactory->getIcon('actions-system-refresh', Icon::SIZE_SMALL) . '</button>'; + $buttons['reload'] = '<button class="c-inputButton" name="_refresh" value="1" title="' . $this->getLanguageService()->getLL('forms_refresh', TRUE) . '">' . $this->iconFactory->getIcon('actions-refresh', Icon::SIZE_SMALL) . '</button>'; } return $buttons; } diff --git a/typo3/sysext/core/Classes/Imaging/IconFactory.php b/typo3/sysext/core/Classes/Imaging/IconFactory.php index 74533358cd93b94c01fe292ae31265b9396568b1..5428612aa7c7e90d1d457d16316eeafa2eb76c2e 100644 --- a/typo3/sysext/core/Classes/Imaging/IconFactory.php +++ b/typo3/sysext/core/Classes/Imaging/IconFactory.php @@ -44,6 +44,13 @@ class IconFactory { * @return Icon */ public function getIcon($identifier, $size = Icon::SIZE_DEFAULT, $overlayIdentifier = NULL, IconState $state = NULL) { + if ($this->iconRegistry->isDeprecated($identifier)) { + $deprecationSettings = $this->iconRegistry->getDeprecationSettings($identifier); + GeneralUtility::deprecationLog(sprintf($deprecationSettings['message'], $identifier)); + if (!empty($deprecationSettings['replacement'])) { + $identifier = $deprecationSettings['replacement']; + } + } if (!$this->iconRegistry->isRegistered($identifier)) { $identifier = $this->iconRegistry->getDefaultIconIdentifier(); } diff --git a/typo3/sysext/core/Classes/Imaging/IconRegistry.php b/typo3/sysext/core/Classes/Imaging/IconRegistry.php index 2983e730863a13d705f919e18131bc9e8c0d9bf3..e78d4ba84840e3d99198c0092c3d236ffddd4db5 100644 --- a/typo3/sysext/core/Classes/Imaging/IconRegistry.php +++ b/typo3/sysext/core/Classes/Imaging/IconRegistry.php @@ -18,6 +18,7 @@ use TYPO3\CMS\Core\Exception; use TYPO3\CMS\Core\Imaging\IconProvider\BitmapIconProvider; use TYPO3\CMS\Core\Imaging\IconProvider\FontawesomeIconProvider; use TYPO3\CMS\Core\Imaging\IconProvider\SvgIconProvider; +use TYPO3\CMS\Core\Utility\GeneralUtility; /** * Class IconRegistry, which makes it possible to register custom icons @@ -472,6 +473,12 @@ class IconRegistry implements \TYPO3\CMS\Core\SingletonInterface { 'name' => 'anchor', ) ), + 'actions-refresh' => array( + 'provider' => SvgIconProvider::class, + 'options' => array( + 'source' => 'EXT:backend/Resources/Public/Icons/Action/actions-refresh.svg', + ) + ), 'actions-selection-delete' => array( 'provider' => FontawesomeIconProvider::class, 'options' => array( @@ -586,12 +593,6 @@ class IconRegistry implements \TYPO3\CMS\Core\SingletonInterface { 'source' => 'EXT:backend/Resources/Public/Icons/Action/actions-system-tree-search-open.svg', ) ), - 'actions-system-refresh' => array( - 'provider' => FontawesomeIconProvider::class, - 'options' => array( - 'name' => 'refresh', - ) - ), 'actions-version-swap-version' => array( 'provider' => FontawesomeIconProvider::class, 'options' => array( @@ -868,6 +869,28 @@ class IconRegistry implements \TYPO3\CMS\Core\SingletonInterface { ) ); + /** + * Array of deprecated icons, add deprecated icons to this array and remove it from registry + * - Index of this array contains the deprecated icon + * - Value of each entry must contain the deprecation message and can contain an identifier which replaces the old identifier + * + * Example: + * array( + * 'deprecated-icon-identifier' => array( + * 'message' => '%s is deprecated since TYPO3 CMS 7, this icon will be removed in TYPO3 CMS 8', + * 'replacement' => 'alternative-icon-identifier' // must be registered + * ) + * ) + * + * @var array + */ + protected $deprecatedIcons = array( + 'actions-system-refresh' => array( + 'replacement' => 'actions-refresh', + 'message' => '%s is deprecated since TYPO3 CMS 7, this icon will be removed in TYPO3 CMS 8' + ) + ); + /** * @var string */ @@ -879,7 +902,16 @@ class IconRegistry implements \TYPO3\CMS\Core\SingletonInterface { * @return bool */ public function isRegistered($identifier) { - return !empty($this->icons[$identifier]); + return isset($this->icons[$identifier]); + } + + /** + * @param string $identifier + * + * @return bool + */ + public function isDeprecated($identifier) { + return isset($this->deprecatedIcons[$identifier]); } /** @@ -919,9 +951,29 @@ class IconRegistry implements \TYPO3\CMS\Core\SingletonInterface { if (!$this->isRegistered($identifier)) { throw new Exception('Icon with identifier "' . $identifier . '" is not registered"', 1437425804); } + if ($this->isDeprecated($identifier)) { + $deprecationSettings = $this->getDeprecationSettings($identifier); + GeneralUtility::deprecationLog(sprintf($deprecationSettings['message'], $identifier)); + if (!empty($deprecationSettings['replacement'])) { + $identifier = $deprecationSettings['replacement']; + } + } return $this->icons[$identifier]; } + /** + * @param string $identifier + * + * @return array + * @throws Exception + */ + public function getDeprecationSettings($identifier) { + if (!$this->isDeprecated($identifier)) { + throw new Exception('Icon with identifier "' . $identifier . '" is not deprecated"', 1437425804); + } + return $this->deprecatedIcons[$identifier]; + } + /** * @return array * @internal @@ -929,4 +981,5 @@ class IconRegistry implements \TYPO3\CMS\Core\SingletonInterface { public function getAllRegisteredIconIdentifiers() { return array_keys($this->icons); } + } diff --git a/typo3/sysext/core/Documentation/Changelog/master/Deprecation-69705-AddUnifiedRefreshIcon.rst b/typo3/sysext/core/Documentation/Changelog/master/Deprecation-69705-AddUnifiedRefreshIcon.rst new file mode 100644 index 0000000000000000000000000000000000000000..fb5f5145da5504ca1b25fa85a9a623ef43b7604c --- /dev/null +++ b/typo3/sysext/core/Documentation/Changelog/master/Deprecation-69705-AddUnifiedRefreshIcon.rst @@ -0,0 +1,27 @@ +============================================== +Deprecation: #69705 - Add unified refresh icon +============================================== + +Description +=========== + +Icon ``actions-system-refresh`` has been deprecated in ``TYPO3\CMS\Core\Imaging\IconRegistry`` and will be removed with TYPO3 CMS 8. +All requests for ``actions-system-refresh`` will now show ``actions-refresh``. + + +Impact +====== + +Using IconUtility or IconFactory to fetch the icon ``actions-system-refresh`` logs a message to the deprecation log. + + +Affected Installations +====================== + +Installations with third party extensions that use the icon ``actions-system-refresh``. + + +Migration +========= + +Use the icon ``actions-refresh`` instead. diff --git a/typo3/sysext/core/Tests/Unit/Imaging/IconFactoryTest.php b/typo3/sysext/core/Tests/Unit/Imaging/IconFactoryTest.php index ada1dee6f55331647b1888edf73821a0af8c0109..36953c64a1498f15d34aa7a829c24e16fe582758 100644 --- a/typo3/sysext/core/Tests/Unit/Imaging/IconFactoryTest.php +++ b/typo3/sysext/core/Tests/Unit/Imaging/IconFactoryTest.php @@ -59,6 +59,7 @@ class IconFactoryTest extends \TYPO3\CMS\Core\Tests\UnitTestCase { $this->subject = new IconFactory($this->iconRegistryMock->reveal()); $this->iconRegistryMock->isRegistered(Argument::any())->willReturn(TRUE); + $this->iconRegistryMock->isDeprecated(Argument::any())->willReturn(FALSE); $this->iconRegistryMock->getIconConfigurationByIdentifier(Argument::any())->willReturn([ 'provider' => FontawesomeIconProvider::class, 'options' => array( @@ -184,4 +185,43 @@ class IconFactoryTest extends \TYPO3\CMS\Core\Tests\UnitTestCase { $this->subject->getIcon($this->registeredIconIdentifier, 'foo')->render(); } + /** + * @test + * @param $deprecationSettings + * @param $expected + * @dataProvider getIconReturnsReplacementIconWhenDeprecatedDataProvider + */ + public function getIconReturnsReplacementIconWhenDeprecated($deprecationSettings, $expected) { + $this->iconRegistryMock->isDeprecated($this->registeredIconIdentifier)->willReturn(TRUE); + $this->iconRegistryMock->getDeprecationSettings($this->registeredIconIdentifier)->willReturn($deprecationSettings); + + $this->assertContains( + $expected, + $this->subject->getIcon($this->registeredIconIdentifier, Icon::SIZE_SMALL)->render() + ); + } + + /** + * Data provider for getIconReturnsReplacementIconWhenDeprecated + * + * @return array + */ + public function getIconReturnsReplacementIconWhenDeprecatedDataProvider() { + return array( + 'Deprecated icon returns replacement' => [ + [ + 'message' => '%s is deprecated since TYPO3 CMS 7, this icon will be removed in TYPO3 CMS 8', + 'replacement' => 'alternative-icon-identifier' // must be registered + ], + '<span class="icon icon-size-small icon-state-default icon-alternative-icon-identifier">' + ], + 'Deprecated icon returns default icon' => [ + [ + 'message' => '%s is deprecated since TYPO3 CMS 7, this icon will be removed in TYPO3 CMS 8' + ], + '<span class="icon icon-size-small icon-state-default icon-actions-document-close">' + ], + ); + } + } diff --git a/typo3/sysext/filelist/Classes/FileList.php b/typo3/sysext/filelist/Classes/FileList.php index bb601efe375a3c9de1a7774be3df5a1cef18e97a..a1884b6bbcd163462781bcf840311d0246c3f369 100644 --- a/typo3/sysext/filelist/Classes/FileList.php +++ b/typo3/sysext/filelist/Classes/FileList.php @@ -284,7 +284,7 @@ class FileList extends AbstractRecordList { } } - $buttons['refresh'] = '<a href="' . htmlspecialchars($this->listURL()) . '" title="' . $this->getLanguageService()->sL('LLL:EXT:lang/locallang_core.xlf:labels.reload', TRUE) . '">' . $this->iconFactory->getIcon('actions-system-refresh', Icon::SIZE_SMALL) . '</a>'; + $buttons['refresh'] = '<a href="' . htmlspecialchars($this->listURL()) . '" title="' . $this->getLanguageService()->sL('LLL:EXT:lang/locallang_core.xlf:labels.reload', TRUE) . '">' . $this->iconFactory->getIcon('actions-refresh', Icon::SIZE_SMALL) . '</a>'; return array($buttons, $otherMarkers); } diff --git a/typo3/sysext/fluid/Resources/Private/Templates/ViewHelpers/Be/Widget/Paginate/Index.html b/typo3/sysext/fluid/Resources/Private/Templates/ViewHelpers/Be/Widget/Paginate/Index.html index 67dc11ab86512729557dcd342c36f4737d5f8fae..3dd127ad610010dc4757173adf0b76363dd9dbbd 100644 --- a/typo3/sysext/fluid/Resources/Private/Templates/ViewHelpers/Be/Widget/Paginate/Index.html +++ b/typo3/sysext/fluid/Resources/Private/Templates/ViewHelpers/Be/Widget/Paginate/Index.html @@ -103,7 +103,7 @@ </f:if> <li> <a href="{f:widget.uri(arguments:{currentPage: pagination.current})}" title="{f:translate(key:'widget.pagination.refresh')}"> - <core:icon identifier="actions-system-refresh" /> + <core:icon identifier="actions-refresh" /> </a> </li> </ul> diff --git a/typo3/sysext/recordlist/Classes/RecordList/DatabaseRecordList.php b/typo3/sysext/recordlist/Classes/RecordList/DatabaseRecordList.php index 03ef3a07278828ac009381bf9f8fd655774c6c63..043b84f24a4cd5c2825053e1c17721f00314ccc1 100644 --- a/typo3/sysext/recordlist/Classes/RecordList/DatabaseRecordList.php +++ b/typo3/sysext/recordlist/Classes/RecordList/DatabaseRecordList.php @@ -311,7 +311,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList { // Reload $buttons['reload'] = '<a href="' . htmlspecialchars($this->listURL()) . '" title="' . $lang->sL('LLL:EXT:lang/locallang_core.xlf:labels.reload', TRUE) . '">' - . $this->iconFactory->getIcon('actions-system-refresh', Icon::SIZE_SMALL) . '</a>'; + . $this->iconFactory->getIcon('actions-refresh', Icon::SIZE_SMALL) . '</a>'; // Shortcut if ($backendUser->mayMakeShortcut()) { $buttons['shortcut'] = $this->getDocumentTemplate()->makeShortcutIcon( @@ -1138,7 +1138,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList { . '&pointer=\'+calculatePointer(document.getElementById(\'jumpPage-' . $renderPart . '\').value); document.dblistForm.submit(); return true;" title="' . $this->getLanguageService()->sL('LLL:EXT:lang/locallang_common.xlf:reload', TRUE) . '">' - . $this->iconFactory->getIcon('actions-system-refresh', Icon::SIZE_SMALL) . '</a></li>'; + . $this->iconFactory->getIcon('actions-refresh', Icon::SIZE_SMALL) . '</a></li>'; if ($renderPart === 'top') { // Add js to traverse a page select input to a pointer value $content = ' diff --git a/typo3/sysext/recycler/Resources/Private/Templates/RecyclerModule/Index.html b/typo3/sysext/recycler/Resources/Private/Templates/RecyclerModule/Index.html index 4563f875f2f702415124b143ba51a9b00b1568bf..b0c0c229c71b833661e46066cd192373f6098f5a 100644 --- a/typo3/sysext/recycler/Resources/Private/Templates/RecyclerModule/Index.html +++ b/typo3/sysext/recycler/Resources/Private/Templates/RecyclerModule/Index.html @@ -2,7 +2,7 @@ <f:layout name="Default" /> <f:section name="iconButtons"> - <a data-action="reload" title="{f:translate(key:'button.reload')}"><core:icon identifier="actions-system-refresh" /></a> + <a data-action="reload" title="{f:translate(key:'button.reload')}"><core:icon identifier="actions-refresh" /></a> </f:section> <f:section name="content"> diff --git a/typo3/sysext/scheduler/Classes/Controller/SchedulerModuleController.php b/typo3/sysext/scheduler/Classes/Controller/SchedulerModuleController.php index c78fdae8c4fe7ecf84c9745c612ff320bf525eef..531df92643197ae70c1f0f4490c42b93b0ab7326 100644 --- a/typo3/sysext/scheduler/Classes/Controller/SchedulerModuleController.php +++ b/typo3/sysext/scheduler/Classes/Controller/SchedulerModuleController.php @@ -1522,7 +1522,7 @@ class SchedulerModuleController extends \TYPO3\CMS\Backend\Module\BaseScriptClas 'shortcut' => $this->getShortcutButton() ); if (empty($this->CMD) || $this->CMD === 'list' || $this->CMD === 'delete' || $this->CMD === 'stop' || $this->CMD === 'toggleHidden') { - $buttons['reload'] = '<a href="' . htmlspecialchars($this->moduleUri) . '" title="' . $this->getLanguageService()->sL('LLL:EXT:lang/locallang_core.xlf:labels.reload', TRUE) . '">' . $this->iconFactory->getIcon('actions-system-refresh', Icon::SIZE_SMALL) . '</a>'; + $buttons['reload'] = '<a href="' . htmlspecialchars($this->moduleUri) . '" title="' . $this->getLanguageService()->sL('LLL:EXT:lang/locallang_core.xlf:labels.reload', TRUE) . '">' . $this->iconFactory->getIcon('actions-refresh', Icon::SIZE_SMALL) . '</a>'; if ($this->MOD_SETTINGS['function'] === 'scheduler' && !empty($this->getRegisteredClasses())) { $link = $this->moduleUri . '&CMD=add'; $image = $this->iconFactory->getIcon('actions-document-new', Icon::SIZE_SMALL); diff --git a/typo3/sysext/viewpage/Resources/Private/Layouts/DocHeader.html b/typo3/sysext/viewpage/Resources/Private/Layouts/DocHeader.html index fd6b2b281b75f92f4a647a2cb77b55203cbdd269..aea8c80a2248b081dacbcac7c0e95bce8fb8d7ea 100644 --- a/typo3/sysext/viewpage/Resources/Private/Layouts/DocHeader.html +++ b/typo3/sysext/viewpage/Resources/Private/Layouts/DocHeader.html @@ -31,7 +31,7 @@ </div> <div class="right"> <a href="javascript:document.getElementById('tx_viewpage_iframe').contentWindow.location.reload(true);" title="{f:translate(key: 'refreshPage')}"> - <core:icon identifier="actions-system-refresh" /> + <core:icon identifier="actions-refresh" /> </a> <f:be.buttons.shortcut/> </div>