mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-10-08 14:51:32 +00:00
[ADF-4579] Layout - RTL support (#4741)
* single contentAnimation state * fine tune contentAnimation state based on direction and position * tets * fix mock component inputs * use native direction attribute * update docs * pass direction to calculate sidenav layout * update test * fix unit test * remove dialogs directionality workaround * set document directionality service * remove context menu direction workaround * remove unneeded dependencies * remove direction style workaround * remove permission icon direction * remove sidenav layout direction attribute * update docs * update sidenav layout direction * test * remove document type * update test dependencies * clear storage before test * test * fix dl gap * try to fix Uncaught QuotaExceededError * fix QuotaExceededError * fix tests * fix tests
This commit is contained in:
committed by
Eugenio Romano
parent
f3e90298e6
commit
9cf6f5519c
42
lib/core/services/directionality-config.service.ts
Normal file
42
lib/core/services/directionality-config.service.ts
Normal file
@@ -0,0 +1,42 @@
|
||||
/*!
|
||||
* @license
|
||||
* Copyright 2019 Alfresco Software, Ltd.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Injectable, Inject, Renderer2, RendererFactory2 } from '@angular/core';
|
||||
import { Directionality, Direction } from '@angular/cdk/bidi';
|
||||
import { UserPreferencesService } from '../services/user-preferences.service';
|
||||
import { DOCUMENT } from '@angular/platform-browser';
|
||||
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
})
|
||||
export class DirectionalityConfigService {
|
||||
constructor(
|
||||
@Inject(DOCUMENT) private document: any,
|
||||
private rendererFactory: RendererFactory2,
|
||||
private userPreferencesService: UserPreferencesService,
|
||||
private directionality: Directionality
|
||||
) {
|
||||
const renderer: Renderer2 = this.rendererFactory.createRenderer(null, null);
|
||||
|
||||
this.userPreferencesService
|
||||
.select('textOrientation')
|
||||
.subscribe((direction: Direction) => {
|
||||
renderer.setAttribute(this.document.body, 'dir', direction);
|
||||
(<any> this.directionality).value = direction;
|
||||
});
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user