Browse Source

Merge pull request #551 from ckeditor/i/6548

Other: Removed the obsolete `DropdownView#focusTracker`. Closes ckeditor/ckeditor5#6548.

MINOR BREAKING CHANGE: The `DropdownView#focusTracker` property has been removed as it served no purpose.
Piotrek Koszuliński 5 years ago
parent
commit
c4d10e4b04

+ 0 - 12
packages/ckeditor5-ui/src/dropdown/dropdownview.js

@@ -8,7 +8,6 @@
  */
 
 import View from '../view';
-import FocusTracker from '@ckeditor/ckeditor5-utils/src/focustracker';
 import KeystrokeHandler from '@ckeditor/ckeditor5-utils/src/keystrokehandler';
 
 import '../../theme/components/dropdown/dropdown.css';
@@ -156,14 +155,6 @@ export default class DropdownView extends View {
 		this.set( 'panelPosition', 'auto' );
 
 		/**
-		 * Tracks information about DOM focus in the dropdown.
-		 *
-		 * @readonly
-		 * @member {module:utils/focustracker~FocusTracker}
-		 */
-		this.focusTracker = new FocusTracker();
-
-		/**
 		 * Instance of the {@link module:utils/keystrokehandler~KeystrokeHandler}. It manages
 		 * keystrokes of the dropdown:
 		 *
@@ -277,9 +268,6 @@ export default class DropdownView extends View {
 		// Listen for keystrokes coming from within #element.
 		this.keystrokes.listenTo( this.element );
 
-		// Register #element in the focus tracker.
-		this.focusTracker.add( this.element );
-
 		const closeDropdown = ( data, cancel ) => {
 			if ( this.isOpen ) {
 				this.buttonView.focus();

+ 0 - 19
packages/ckeditor5-ui/tests/dropdown/dropdownview.js

@@ -5,7 +5,6 @@
 
 import DropdownView from '../../src/dropdown/dropdownview';
 import KeystrokeHandler from '@ckeditor/ckeditor5-utils/src/keystrokehandler';
-import FocusTracker from '@ckeditor/ckeditor5-utils/src/focustracker';
 import { keyCodes } from '@ckeditor/ckeditor5-utils/src/keyboard';
 import ButtonView from '../../src/button/buttonview';
 import DropdownPanelView from '../../src/dropdown/dropdownpanelview';
@@ -72,10 +71,6 @@ describe( 'DropdownView', () => {
 			expect( view.panelPosition ).to.equal( 'auto' );
 		} );
 
-		it( 'creates #focusTracker instance', () => {
-			expect( view.focusTracker ).to.be.instanceOf( FocusTracker );
-		} );
-
 		it( 'creates #keystrokeHandler instance', () => {
 			expect( view.keystrokes ).to.be.instanceOf( KeystrokeHandler );
 		} );
@@ -214,20 +209,6 @@ describe( 'DropdownView', () => {
 			view.element.remove();
 		} );
 
-		it( 'adds #element to #focusTracker', () => {
-			const view = new DropdownView( locale,
-				new ButtonView( locale ),
-				new DropdownPanelView( locale ) );
-
-			const spy = sinon.spy( view.focusTracker, 'add' );
-
-			view.render();
-			sinon.assert.calledOnce( spy );
-			sinon.assert.calledWithExactly( spy, view.element );
-
-			view.element.remove();
-		} );
-
 		describe( 'activates keyboard navigation for the dropdown', () => {
 			it( 'so "arrowdown" opens the #panelView', () => {
 				const keyEvtData = {