Skip to content

Commit 87de0fe

Browse files
committed
Fixing more tree stuff.
1 parent a9a61d2 commit 87de0fe

File tree

4 files changed

+51
-25
lines changed

4 files changed

+51
-25
lines changed

src/pg/tree/tree.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
[part="items"] {
66
display: flex;
77
flex-direction: column;
8-
background: var(--pg-tree-background, #2C2C2C);
8+
background: var(--pg-tree-background, transparent);
99
padding: 0.25rem;
1010
gap: 0.25rem;
1111
}

src/pg/treeItem/treeItem.css

Lines changed: 37 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,43 +6,66 @@
66
display: none !important;
77
}
88

9-
[part="button"] {
9+
[part=iconButton] {
1010
display: flex;
1111
background: transparent;
1212
border: 0;
13-
color: #FFF;
13+
color: var(--pg-tree-item-color, #453C4F);
1414
padding: 0;
15-
--pg-icon-color: #FFF;
15+
--pg-icon-color: var(--pg-tree-item-color, #453C4F);
16+
align-items: center;
17+
font-family: var(--pg-font-family);
18+
font-size: var(--pg-tree-item-font-size, 1rem);
19+
}
20+
[part=labelButton] {
21+
display: flex;
22+
background: transparent;
23+
border: 0;
24+
color: var(--pg-tree-item-color, #453C4F);
25+
padding: 0;
26+
--pg-icon-color: var(--pg-tree-item-color, #453C4F);
1627
flex: 1;
17-
align-items: center
28+
align-items: center;
29+
font-family: var(--pg-font-family);
30+
font-size: var(--pg-tree-item-font-size, 1rem);
1831
}
1932

20-
[part="input"] {
33+
[part=input] {
2134
flex: 1;
2235
outline: 0;
23-
padding: 0.125rem 0.25rem;
24-
border: 0;
36+
padding: 0.25em 0.5rem;
37+
border-width: 1px;
38+
border-style: solid;
39+
border-color: var(--pg-tree-item-border-color, #453C4F);
2540
}
2641

27-
[part="item"] {
42+
[part=item] {
2843
display: flex;
2944
background: var(--pg-tree-item-background, transparent);
3045
border-radius: 0.25rem;
46+
padding: 0.25rem;
47+
gap: 0.5rem;
3148
}
3249

33-
[part="item"]:hover {
34-
background: var(--pg-tree-item-background-hover, #383838);
50+
[part=item]:hover {
51+
background: var(--pg-tree-item-background-hover, #453C4F);
52+
}
53+
[part=item]:hover [part=labelButton] {
54+
--pg-icon-color: var(--pg-tree-item-color-hover, #FFF);
55+
}
56+
[part=item]:hover [part=label] {
57+
color: var(--pg-tree-item-color-hover, #FFFFFF);
3558
}
3659

37-
[part="item"].selected {
38-
background: var(--pg-tree-item-background-selected, #4B5876)
60+
[part=item].selected {
61+
background: var(--pg-tree-item-background-selected, #453C4F);
3962
}
4063

41-
[part="actions"] {
64+
[part=actions] {
4265
display: flex;
4366
}
4467

45-
[part="items"] {
68+
[part=items] {
4669
display: flex;
4770
flex-direction: column;
4871
padding-left: 1rem;

src/pg/treeItem/treeItem.html

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
<div part="item">
2-
<input part="input" type="input" class="hide" />
3-
<button part="button">
2+
<button part="iconButton">
43
<pg-icon part="icon"></pg-icon>
4+
</button>
5+
<input part="input" type="input" class="hide" />
6+
<button part="labelButton">
57
<div part="label"></div>
68
</button>
79
<div part="actions"></div>

src/pg/treeItem/treeItem.ts

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,17 @@ export default class PgTreeItem extends HTMLElement {
2323

2424
@Part() $item: HTMLDivElement;
2525
@Part() $input: HTMLInputElement;
26-
@Part() $button: HTMLButtonElement;
26+
@Part() $iconButton: HTMLButtonElement;
2727
@Part() $icon: PgIcon;
2828
@Part() $label: HTMLDivElement;
29+
@Part() $labelButton: HTMLButtonElement;
2930
@Part() $actions: HTMLDivElement;
3031
@Part() $items: HTMLDivElement;
3132

3233
connectedCallback() {
3334
this.$item.addEventListener('action', this.#handleAction.bind(this));
34-
this.$button.addEventListener('dblclick', this.#handleDoubleClick.bind(this));
35-
this.$button.addEventListener('click', this.#handleClick.bind(this));
35+
this.$labelButton.addEventListener('dblclick', this.#handleDoubleClick.bind(this));
36+
this.$labelButton.addEventListener('click', this.#handleClick.bind(this));
3637
this.$item.addEventListener('contextmenu', this.#handleContextMenu.bind(this));
3738
this.$input.addEventListener('blur', this.#handleBlur.bind(this));
3839
this.$input.addEventListener('keydown', this.#handleKeyDown.bind(this));
@@ -114,7 +115,7 @@ export default class PgTreeItem extends HTMLElement {
114115
}
115116

116117
#handleDoubleClick(e) {
117-
this.$button.classList.add('hide');
118+
this.$labelButton.classList.add('hide');
118119
this.$actions.classList.add('hide');
119120
this.$input.classList.remove('hide');
120121
this.$input.value = this.label;
@@ -123,10 +124,10 @@ export default class PgTreeItem extends HTMLElement {
123124
}
124125

125126
#handleBlur() {
126-
this.$button.classList.remove('hide');
127+
this.$labelButton.classList.remove('hide');
127128
this.$actions.classList.remove('hide');
128129
this.$input.classList.add('hide');
129-
this.$button.focus();
130+
this.$labelButton.focus();
130131
this.dispatchEvent(new CustomEvent('rename', {
131132
bubbles: true,
132133
composed: true,
@@ -143,11 +144,11 @@ export default class PgTreeItem extends HTMLElement {
143144
this.#handleBlur();
144145
break;
145146
case 'Escape':
146-
this.$button.classList.remove('hide');
147+
this.$labelButton.classList.remove('hide');
147148
this.$actions.classList.remove('hide');
148149
this.$input.classList.add('hide');
149150
this.$input.value = this.label;
150-
this.$button.focus();
151+
this.$labelButton.focus();
151152
break;
152153
case 'ArrowUp':
153154
this.dispatchEvent(new CustomEvent('up', {

0 commit comments

Comments
 (0)