8
0
Просмотр исходного кода

Added TextInputView#isReadOnly state.

Oskar Wróbel 8 лет назад
Родитель
Сommit
579deb9c6a

+ 10 - 1
packages/ckeditor5-ui/src/inputtext/inputtextview.js

@@ -46,6 +46,14 @@ export default class InputTextView extends View {
 		 */
 		this.set( 'placeholder' );
 
+		/**
+		 * Controls whether the input view is in read-only mode.
+		 *
+		 * @observable
+		 * @member {Boolean} #isReadOnly
+		 */
+		this.set( 'isReadOnly', false );
+
 		const bind = this.bindTemplate;
 
 		this.template = new Template( {
@@ -57,7 +65,8 @@ export default class InputTextView extends View {
 					'ck-input-text'
 				],
 				id: bind.to( 'id' ),
-				placeholder: bind.to( 'placeholder' )
+				placeholder: bind.to( 'placeholder' ),
+				readonly: bind.to( 'isReadOnly' )
 			}
 		} );
 

+ 10 - 0
packages/ckeditor5-ui/tests/inputtext/inputtextview.js

@@ -66,6 +66,16 @@ describe( 'InputTextView', () => {
 				expect( view.element.placeholder ).to.equal( 'baz' );
 			} );
 		} );
+
+		describe( 'isReadOnly', () => {
+			it( 'should react on view#isReadOnly', () => {
+				expect( view.element.readOnly ).to.false;
+
+				view.isReadOnly = true;
+
+				expect( view.element.readOnly ).to.true;
+			} );
+		} );
 	} );
 
 	describe( 'select()', () => {