diff options
Diffstat (limited to 'src/core/contacts-nickname-chunk.vala')
-rw-r--r-- | src/core/contacts-nickname-chunk.vala | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/core/contacts-nickname-chunk.vala b/src/core/contacts-nickname-chunk.vala index 81cf1d9..5dd7f79 100644 --- a/src/core/contacts-nickname-chunk.vala +++ b/src/core/contacts-nickname-chunk.vala @@ -68,4 +68,21 @@ public class Contacts.NicknameChunk : Chunk { yield ((NameDetails) this.persona).change_nickname (this.nickname); } + + public override Variant? to_gvariant () { + if (this.nickname == "") + return null; + return new Variant.string (this.nickname); + } + + public override void apply_gvariant (Variant variant, + bool mark_dirty = true) + requires (variant.get_type ().equal (VariantType.STRING)) { + + unowned string nickname = variant.get_string (); + if (!mark_dirty) { + this.original_nickname = nickname; + } + this.nickname = nickname; + } } |