Fix project rename focus and create project not initializing

This commit is contained in:
Ryan Huffman 2019-01-03 10:20:13 -08:00
parent 9c96f7bd01
commit c13badcbc8
6 changed files with 80 additions and 57 deletions

View file

@ -22,6 +22,7 @@ Item {
MouseArea {
anchors.fill: parent
onClicked: {
unfocusser.forceActiveFocus();
}
@ -272,8 +273,6 @@ Item {
color: 'white'
visible: AvatarPackagerCore.currentAvatarProject !== null
anchors.top: parent.top
anchors.left: parent.left
anchors.topMargin: 16

View file

@ -92,8 +92,7 @@ ShadowRectangle {
font.pixelSize: 28
z: 200
onFocusChanged: {
if (titleArea.state === "renaming" && !titleArea.focus) {
//titleArea.state = "";
if (titleArea.state === "renaming" && !focus) {
accepted();
}
}
@ -104,11 +103,7 @@ ShadowRectangle {
}
onAccepted: {
if (acceptableInput) {
//AvatarPackagerCore.renameProject(text);
console.warn(text);
AvatarPackagerCore.currentAvatarProject.name = text;
console.warn(AvatarPackagerCore.currentAvatarProject.name);
}
titleArea.state = "";
}
@ -127,7 +122,6 @@ ShadowRectangle {
anchors.verticalCenter: docs.verticalCenter
text: qsTr("Docs")
color: "white"
onClicked: {
docsButtonClicked();

View file

@ -0,0 +1,63 @@
import QtQuick 2.6
import "../../controlsUit" 1.0 as HifiControls
import "../../stylesUit" 1.0
import TabletScriptingInterface 1.0
Item {
id: root
readonly property bool pressed: mouseArea.state == "pressed"
readonly property bool hovered: mouseArea.state == "hovering"
signal clicked()
MouseArea {
id: mouseArea
anchors.fill: parent
hoverEnabled: true
onClicked: {
root.focus = true
Tablet.playSound(TabletEnums.ButtonClick);
root.clicked()
}
property string lastState: ""
states: [
State {
name: ""
StateChangeScript {
script: {
mouseArea.lastState = mouseArea.state
}
}
},
State {
name: "pressed"
when: mouseArea.containsMouse && mouseArea.pressed
StateChangeScript {
script: {
mouseArea.lastState = mouseArea.state
}
}
},
State {
name: "hovering"
when: mouseArea.containsMouse
StateChangeScript {
script: {
if (mouseArea.lastState == "") {
Tablet.playSound(TabletEnums.ButtonHover);
}
mouseArea.lastState = mouseArea.state
}
}
}
]
}
}

View file

@ -28,6 +28,7 @@ Item {
Window.alert('Failed to create project');
return;
}
avatarProject.reset();
avatarPackager.state = AvatarPackagerState.project;
}
}

View file

@ -17,6 +17,12 @@ Rectangle {
property bool closeOnClickOutside: false;
onVisibleChanged: {
if (visible) {
focus = true;
}
}
function open() {
visible = true;
}

View file

@ -8,61 +8,21 @@ import TabletScriptingInterface 1.0
RalewaySemiBold {
id: root
text: "no text"
signal clicked()
color: "white"
anchors.fill: textItem
property var idleColor: "white"
property var hoverColor: "#AFAFAF"
property var pressedColor: "#575757"
MouseArea {
id: mouseArea
color: clickable.hovered ? root.hoverColor : (clickable.pressed ? root.pressedColor : root.idleColor);
anchors.fill: parent
signal clicked()
hoverEnabled: true
ClickableArea {
id: clickable
onClicked: {
Tablet.playSound(TabletEnums.ButtonClick);
root.clicked()
}
anchors.fill: root
property string lastState: ""
states: [
State {
name: ""
StateChangeScript {
script: {
mouseArea.lastState = mouseArea.state
}
}
},
State {
name: "pressed"
when: mouseArea.containsMouse && mouseArea.pressed
PropertyChanges { target: root; color: pressedColor }
StateChangeScript {
script: {
mouseArea.lastState = mouseArea.state
}
}
},
State {
name: "hovering"
when: mouseArea.containsMouse
PropertyChanges { target: root; color: hoverColor }
StateChangeScript {
script: {
if (mouseArea.lastState == "") {
Tablet.playSound(TabletEnums.ButtonHover);
}
mouseArea.lastState = mouseArea.state
}
}
}
]
onClicked: root.clicked()
}
}