Files
react-native-devtools-frontend/front_end/ui/RootView.js
T
Jack Franklin 4df8d36ab2 [DarkMode] ui/rootView.css
The CSS already uses only new variables, so we just need to disable
patching.

Bug: chromium:1152736
Change-Id: Ib207d0af9649f0087f8a5fa04c02a60a0eeb2fae
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2681746
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
2021-02-08 13:21:09 +00:00

44 lines
1.3 KiB
JavaScript

// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import {VBox} from './Widget.js';
import {ZoomManager} from './ZoomManager.js';
export class RootView extends VBox {
constructor() {
super();
this.markAsRoot();
this.element.classList.add('root-view');
this.registerRequiredCSS('ui/rootView.css', {enableLegacyPatching: false});
this.element.setAttribute('spellcheck', 'false');
}
/**
* @param {!Document} document
*/
attachToDocument(document) {
if (document.defaultView) {
document.defaultView.addEventListener('resize', this.doResize.bind(this), false);
}
this._window = document.defaultView;
this.doResize();
this.show(/** @type {!Element} */ (document.body));
}
/**
* @override
*/
doResize() {
if (this._window) {
const size = this.constraints().minimum;
const zoom = ZoomManager.instance().zoomFactor();
const right = Math.min(0, this._window.innerWidth - size.width / zoom);
this.element.style.marginRight = right + 'px';
const bottom = Math.min(0, this._window.innerHeight - size.height / zoom);
this.element.style.marginBottom = bottom + 'px';
}
super.doResize();
}
}