Bugfix: inline stylesheet (#228)
* Bugfix: inline stylesheet * bump version
This commit is contained in:
parent
6d13aa448f
commit
3a404d24a1
2
package-lock.json
generated
2
package-lock.json
generated
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@nodegui/nodegui",
|
||||
"version": "0.6.7",
|
||||
"version": "0.6.8",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@nodegui/nodegui",
|
||||
"version": "0.6.7",
|
||||
"version": "0.6.8",
|
||||
"description": "A cross platform library to build native desktop apps.",
|
||||
"main": "dist/index.js",
|
||||
"typings": "dist/index.d.ts",
|
||||
|
||||
@ -15,6 +15,7 @@ import { QSize } from '../QtCore/QSize';
|
||||
// Implement all native QWidget methods here so that all widgets get access to those aswell
|
||||
export abstract class NodeWidget extends YogaWidget {
|
||||
layout?: NodeLayout;
|
||||
_rawInlineStyle = '';
|
||||
type = 'widget';
|
||||
show(): void {
|
||||
this.native.show();
|
||||
@ -36,6 +37,7 @@ export abstract class NodeWidget extends YogaWidget {
|
||||
return this.native.styleSheet();
|
||||
}
|
||||
setInlineStyle(style: string): void {
|
||||
this._rawInlineStyle = style;
|
||||
const preparedSheet = prepareInlineStyleSheet(this, style);
|
||||
this.native.setStyleSheet(preparedSheet);
|
||||
}
|
||||
@ -136,6 +138,12 @@ export abstract class NodeWidget extends YogaWidget {
|
||||
adjustSize(): void {
|
||||
this.native.adjustSize();
|
||||
}
|
||||
setObjectName(objectName: string): void {
|
||||
super.setObjectName(objectName);
|
||||
if (this._rawInlineStyle) {
|
||||
this.setInlineStyle(this._rawInlineStyle);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
type Rect = {
|
||||
|
||||
@ -19,8 +19,8 @@ describe('QWidget', () => {
|
||||
view.hide();
|
||||
expect(view.isVisible()).toEqual(false);
|
||||
});
|
||||
it('setStyleSheet', async () => {
|
||||
await view.setStyleSheet(`
|
||||
it('setStyleSheet', () => {
|
||||
view.setStyleSheet(`
|
||||
#test {
|
||||
color: blue;
|
||||
}`);
|
||||
@ -29,9 +29,19 @@ describe('QWidget', () => {
|
||||
color: blue;
|
||||
}`);
|
||||
});
|
||||
it('setInlineStyle', async () => {
|
||||
it('setInlineStyle', () => {
|
||||
view.setObjectName('test');
|
||||
view.setInlineStyle('color: black;');
|
||||
expect(view.styleSheet()).toEqual(`
|
||||
#test {
|
||||
color: black;
|
||||
}
|
||||
`);
|
||||
});
|
||||
it('correct inline stylesheet after objectName has been set', () => {
|
||||
view.setObjectName('someobjectName');
|
||||
view.setInlineStyle('color: black;');
|
||||
view.setObjectName('test');
|
||||
await view.setInlineStyle('color: black;');
|
||||
expect(view.styleSheet()).toEqual(`
|
||||
#test {
|
||||
color: black;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user