parent
65b7ce1909
commit
09e2746c41
File diff suppressed because it is too large
Load Diff
@ -1,31 +0,0 @@ |
|||||||
/* Copyright 2017 Andrew Dawson |
|
||||||
* |
|
||||||
* This file is a part of Tusky. |
|
||||||
* |
|
||||||
* This program is free software; you can redistribute it and/or modify it under the terms of the |
|
||||||
* GNU General Public License as published by the Free Software Foundation; either version 3 of the |
|
||||||
* License, or (at your option) any later version. |
|
||||||
* |
|
||||||
* Tusky is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even |
|
||||||
* the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
|
||||||
* Public License for more details. |
|
||||||
* |
|
||||||
* You should have received a copy of the GNU General Public License along with Tusky; if not, |
|
||||||
* see <http://www.gnu.org/licenses>. */
|
|
||||||
|
|
||||||
package com.keylesspalace.tusky.json; |
|
||||||
|
|
||||||
/** |
|
||||||
* This is just a wrapper class for a String. |
|
||||||
* |
|
||||||
* It was designed to get around the limitation of a Json deserializer which only allows custom |
|
||||||
* deserializing based on types, when special handling for a specific field was what was actually |
|
||||||
* desired (in this case, display names). So, it was most expedient to just make up a type. |
|
||||||
*/ |
|
||||||
public class StringWithEmoji { |
|
||||||
public String value; |
|
||||||
|
|
||||||
public StringWithEmoji(String value) { |
|
||||||
this.value = value; |
|
||||||
} |
|
||||||
} |
|
@ -1,38 +0,0 @@ |
|||||||
/* Copyright 2017 Andrew Dawson |
|
||||||
* |
|
||||||
* This file is a part of Tusky. |
|
||||||
* |
|
||||||
* This program is free software; you can redistribute it and/or modify it under the terms of the |
|
||||||
* GNU General Public License as published by the Free Software Foundation; either version 3 of the |
|
||||||
* License, or (at your option) any later version. |
|
||||||
* |
|
||||||
* Tusky is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even |
|
||||||
* the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
|
||||||
* Public License for more details. |
|
||||||
* |
|
||||||
* You should have received a copy of the GNU General Public License along with Tusky; if not, |
|
||||||
* see <http://www.gnu.org/licenses>. */
|
|
||||||
|
|
||||||
package com.keylesspalace.tusky.json; |
|
||||||
|
|
||||||
import com.emojione.Emojione; |
|
||||||
import com.google.gson.JsonDeserializationContext; |
|
||||||
import com.google.gson.JsonDeserializer; |
|
||||||
import com.google.gson.JsonElement; |
|
||||||
import com.google.gson.JsonParseException; |
|
||||||
|
|
||||||
import java.lang.reflect.Type; |
|
||||||
|
|
||||||
/** This is a type-based workaround to allow for shortcode conversion when loading display names. */ |
|
||||||
public class StringWithEmojiTypeAdapter implements JsonDeserializer<StringWithEmoji> { |
|
||||||
@Override |
|
||||||
public StringWithEmoji deserialize(JsonElement json, Type typeOfT, |
|
||||||
JsonDeserializationContext context) throws JsonParseException { |
|
||||||
String value = json.getAsString(); |
|
||||||
if (value != null) { |
|
||||||
return new StringWithEmoji(Emojione.shortnameToUnicode(value, false)); |
|
||||||
} else { |
|
||||||
return new StringWithEmoji(""); |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
Loading…
Reference in new issue