reset subject and name on empty
This commit is contained in:
		
							parent
							
								
									4c9e331e01
								
							
						
					
					
						commit
						e8a1f069c2
					
				| @ -9,6 +9,7 @@ import java.util.ArrayList; | |||||||
| import java.util.List; | import java.util.List; | ||||||
| import java.util.Locale; | import java.util.Locale; | ||||||
| 
 | 
 | ||||||
|  | import eu.siacs.conversations.utils.StringUtils; | ||||||
| import eu.siacs.conversations.utils.UIHelper; | import eu.siacs.conversations.utils.UIHelper; | ||||||
| import eu.siacs.conversations.xml.Element; | import eu.siacs.conversations.xml.Element; | ||||||
| import eu.siacs.conversations.xmpp.InvalidJid; | import eu.siacs.conversations.xmpp.InvalidJid; | ||||||
| @ -163,11 +164,11 @@ public class Bookmark extends Element implements ListItem { | |||||||
| 
 | 
 | ||||||
| 	public boolean setBookmarkName(String name) { | 	public boolean setBookmarkName(String name) { | ||||||
| 		String before = getBookmarkName(); | 		String before = getBookmarkName(); | ||||||
| 		if (name != null && !name.equals(before)) { | 		if (name != null) { | ||||||
| 			this.setAttribute("name", name); | 			this.setAttribute("name", name); | ||||||
| 			return true; |  | ||||||
| 		} else { | 		} else { | ||||||
| 			return false; | 			this.removeAttribute("name"); | ||||||
| 		} | 		} | ||||||
|  | 		return StringUtils.changed(before, name); | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|  | |||||||
| @ -2462,7 +2462,7 @@ public class XmppConnectionService extends Service { | |||||||
| 					} | 					} | ||||||
| 
 | 
 | ||||||
| 					if (bookmark != null && (sameBefore || bookmark.getBookmarkName() == null)) { | 					if (bookmark != null && (sameBefore || bookmark.getBookmarkName() == null)) { | ||||||
| 						if (bookmark.setBookmarkName(mucOptions.getName())) { | 						if (bookmark.setBookmarkName(StringUtils.nullOnEmpty(mucOptions.getName()))) { | ||||||
| 							pushBookmarks(account); | 							pushBookmarks(account); | ||||||
| 						} | 						} | ||||||
| 					} | 					} | ||||||
| @ -2555,7 +2555,7 @@ public class XmppConnectionService extends Service { | |||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	public void pushSubjectToConference(final Conversation conference, final String subject) { | 	public void pushSubjectToConference(final Conversation conference, final String subject) { | ||||||
| 		MessagePacket packet = this.getMessageGenerator().conferenceSubject(conference, subject); | 		MessagePacket packet = this.getMessageGenerator().conferenceSubject(conference, StringUtils.nullOnEmpty(subject)); | ||||||
| 		this.sendMessagePacket(conference.getAccount(), packet); | 		this.sendMessagePacket(conference.getAccount(), packet); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -52,6 +52,7 @@ import eu.siacs.conversations.ui.util.MenuDoubleTabUtil; | |||||||
| import eu.siacs.conversations.ui.util.MyLinkify; | import eu.siacs.conversations.ui.util.MyLinkify; | ||||||
| import eu.siacs.conversations.ui.util.SoftKeyboardUtils; | import eu.siacs.conversations.ui.util.SoftKeyboardUtils; | ||||||
| import eu.siacs.conversations.utils.EmojiWrapper; | import eu.siacs.conversations.utils.EmojiWrapper; | ||||||
|  | import eu.siacs.conversations.utils.StringUtils; | ||||||
| import eu.siacs.conversations.utils.StylingHelper; | import eu.siacs.conversations.utils.StylingHelper; | ||||||
| import eu.siacs.conversations.utils.UIHelper; | import eu.siacs.conversations.utils.UIHelper; | ||||||
| import eu.siacs.conversations.utils.XmppUri; | import eu.siacs.conversations.utils.XmppUri; | ||||||
| @ -364,7 +365,7 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers | |||||||
|         if (mucOptions.getSelf().getAffiliation().ranks(MucOptions.Affiliation.OWNER) && changed(mucOptions.getName(), name)) { |         if (mucOptions.getSelf().getAffiliation().ranks(MucOptions.Affiliation.OWNER) && changed(mucOptions.getName(), name)) { | ||||||
|             Bundle options = new Bundle(); |             Bundle options = new Bundle(); | ||||||
|             options.putString("muc#roomconfig_persistentroom", "1"); |             options.putString("muc#roomconfig_persistentroom", "1"); | ||||||
|             options.putString("muc#roomconfig_roomname", name); |             options.putString("muc#roomconfig_roomname", StringUtils.nullOnEmpty(name)); | ||||||
|             xmppConnectionService.pushConferenceConfiguration(mConversation, options, this); |             xmppConnectionService.pushConferenceConfiguration(mConversation, options, this); | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|  | |||||||
| @ -43,4 +43,8 @@ public class StringUtils { | |||||||
|         return !equals(one, two); |         return !equals(one, two); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     public static String nullOnEmpty(String input) { | ||||||
|  |         return input == null || input.trim().isEmpty() ? null : input; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
| } | } | ||||||
|  | |||||||
| @ -136,6 +136,11 @@ public class Element { | |||||||
| 		return this; | 		return this; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | 	public Element removeAttribute(String name) { | ||||||
|  | 		this.attributes.remove(name); | ||||||
|  | 		return this; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
| 	public Element setAttributes(Hashtable<String, String> attributes) { | 	public Element setAttributes(Hashtable<String, String> attributes) { | ||||||
| 		this.attributes = attributes; | 		this.attributes = attributes; | ||||||
| 		return this; | 		return this; | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Daniel Gultsch
						Daniel Gultsch