shifted isUsernameEditingAllowed to qml from c++

This commit is contained in:
Jedi18 2021-01-29 12:06:38 +05:30
parent 9b5a287d14
commit e09e587796
3 changed files with 14 additions and 28 deletions

View File

@ -36,7 +36,10 @@ ApplicationWindow {
TextInput {
id: displayUsername
readOnly: !profile.isUsernameEditingAllowed
property bool isUsernameEditingAllowed
readOnly: !isUsernameEditingAllowed
text: profile.displayName
font.pixelSize: 20
color: TimelineManager.userColor(profile.userid, colors.window)
@ -44,20 +47,24 @@ ApplicationWindow {
Layout.alignment: Qt.AlignHCenter
selectByMouse: true
onAccepted: profile.changeUsername(displayUsername.text)
onAccepted: {
profile.changeUsername(displayUsername.text)
displayUsername.isUsernameEditingAllowed = false
}
ImageButton {
visible: profile.isSelf
anchors.leftMargin: 5
anchors.left: displayUsername.right
anchors.verticalCenter: displayUsername.verticalCenter
image: profile.isUsernameEditingAllowed ? ":/icons/icons/ui/checkmark.png" : ":/icons/icons/ui/edit.png"
image: displayUsername.isUsernameEditingAllowed ? ":/icons/icons/ui/checkmark.png" : ":/icons/icons/ui/edit.png"
onClicked: {
if (profile.isUsernameEditingAllowed) {
if (displayUsername.isUsernameEditingAllowed) {
profile.changeUsername(displayUsername.text)
displayUsername.isUsernameEditingAllowed = false
} else {
profile.allowUsernameEditing(true)
displayUsername.isUsernameEditingAllowed = true
}
}
}

View File

@ -270,8 +270,6 @@ UserProfile::changeUsername(QString username)
err->matrix_error.error);
});
}
allowUsernameEditing(false);
}
void
@ -290,19 +288,6 @@ UserProfile::unverify(QString device)
cache::markDeviceUnverified(userid_.toStdString(), device.toStdString());
}
void
UserProfile::allowUsernameEditing(bool allow)
{
usernameEditing = allow;
emit usernameEditingChanged();
}
bool
UserProfile::isUsernameEditingAllowed() const
{
return usernameEditing;
}
void
UserProfile::setGlobalUsername(const QString &globalUser)
{

View File

@ -88,8 +88,6 @@ class UserProfile : public QObject
Q_PROPERTY(
bool userVerificationEnabled READ userVerificationEnabled NOTIFY userStatusChanged)
Q_PROPERTY(bool isSelf READ isSelf CONSTANT)
Q_PROPERTY(
bool isUsernameEditingAllowed READ isUsernameEditingAllowed NOTIFY usernameEditingChanged)
public:
UserProfile(QString roomid,
QString userid,
@ -105,7 +103,6 @@ public:
bool getUserStatus();
bool userVerificationEnabled() const;
bool isSelf() const;
bool isUsernameEditingAllowed() const;
Q_INVOKABLE void verify(QString device = "");
Q_INVOKABLE void unverify(QString device = "");
@ -115,11 +112,9 @@ public:
Q_INVOKABLE void kickUser();
Q_INVOKABLE void startChat();
Q_INVOKABLE void changeUsername(QString username);
Q_INVOKABLE void allowUsernameEditing(bool allow);
signals:
void userStatusChanged();
void usernameEditingChanged();
void displayNameChanged();
void globalUsernameRetrieved(const QString &globalUser);
@ -130,9 +125,8 @@ private:
QString roomid_, userid_;
QString globalUsername;
DeviceInfoModel deviceList_;
bool isUserVerified = false;
bool hasMasterKey = false;
bool usernameEditing = false;
bool isUserVerified = false;
bool hasMasterKey = false;
TimelineViewManager *manager;
TimelineModel *model;
};