* SPARK-1735: MUC occupants list should have width
This commit attempts to prevent that the occupants list in a MUC
screen has a near-zero width.
* SPARK-1772: Icons for muc role fix
* SPARK-1735: MUC occupants list should have vertical scrollbar
* SPARK-1740: Allow SASL GSS-API to be executed as it was in SMACK 3
SMACK 4 uses the fully qualified host name, when negotiating GSS-API
via SASL. SMACK 3 used the XMPP domain name instead. Spark should
have a configurable option that allows it to fall back to the old
mechanism (which is likely needed to connect to servers that
have already been configured to accept SSO from older versions of
Spark).
This commit also brings a reorganization of the code of the
'advanced connection settings' dialog - simply because it was pretty
unpractical as it was. Small modifications have been made to the
layout.
* Prevent exceptions from going unnoticed.
* SPARK-1750: Spark should reconnect by default.
This commit restored the automatic reconnection that's attempted
by Spark, when an XMPP connection unexpectedly fails. The commit
makes use of a construct offered by Smack (which was changed from
Smack 3 to 4).
* SPARK-1751: Fixing thread ID with chat state notification.
* SPARK-1751: Stanzafilter in chat should not require full JID match.
* SPARK-1749 SPARK-1735 Restoring MUC participant list size and context menu.
* SPARK-1753: Do not disconnect when receiving invalid data.
* SPARK-1741: String.indexOf() -> String.contaiins()
String.indexOf() expressions can be replaced with a call to the String.contains() method available in Java 5 and newer.
* SPARK-1741: Type argument -> diamond type
New expressions with type arguments can be replaced with diamond type <>.
Such <> syntax is not supported under Java 1.6 or earlier JVMs.
* SPARK-1741: Anonymous classes -> lambda
Anonymous classes without statecan be replaced with lambda expressions
Lambda syntax is not supported under Java 1.7 or earlier JVMs.
* SPARK-1741: StringBuffer -> StringBuilder
Variables declared as java.lang.StringBuffer may be more efficiently declared as java.lang.StringBuilder.
java.lang.StringBuilder is a non-thread-safe replacement for java.lang.StringBuffer, available in Java 5 and newer.
* SPARK-1741: Fix String equality checks (BUGFIX)
Using == or != to test for String equality, rather than the equals() method can lead to bugs, as
the former check for reference equality (while most often, value equality is intended).
* SPARK-1741: Simplify pointless boolean expressions
Simplify pointless or pointlessly complicated boolean expressions. Such expressions include anding with true,
oring with false, equality comparison with a boolean literal, or negation of a boolean literal.
* SPARK-1741: Remove redundant initializer
Removes variable initializer where the value is always overwritten with another assignment before the next variable read.
* SPARK-1741: Redundant class fields to local variable.
If all local usages of a field are preceded by assignments to that field, the field can be removed and its usages replaced with local variables.
* SPARK-1741: Remove unnecessary return statements
Return statements at the end of constructors and methods returning void may be safely removed.
* SPARK-1741: StringBuilder -> String
Reports any variables declared as or uses of java.lang.StringBuffer and java.lang.StringBuilder which can be
replaced with a single java.lang.String concatenation. Using a String concatenation makes the code shorter and
simpler. This inspection only reports when the resulting concatenation is at least as efficient or more
efficient than the original StringBuffer or StringBuilder use.
* SPARK-1741: Remove redundant casts.
Remvoing unnecessary cast expressions.
* SPARK-1741: Replace deprecated PacketIDFilter.
* SPARK-1741: Remove unused arguments.
* SPARK-1741: Delete unused imports.
* SPARK-1741: Fix automatic rename error
The Intellij automatic refactoring caused duplicate names to be used.
* SPARK-1741: getPacketID -> getStanzaId
* SPARK-1741: Ensure that Travis uses Java 8.
* SPARK-1741: Do not compile with Java 7 compatibility.
* SMACK4: Prevent NPE in Roar plugin.
* SMACK4: Replaced Smack 3 libs with Smack 4.
* SMACK4: ProviderManager's methods are now static.
* SMACK4: Move MUCUser to org.jivesoftware.smackx.muc.packet.MUCUser
* SMACK4: Move PrivateDataManager to org.jivesoftware.smackx.iqprivate.PrivateDataManager
* SMACK4: Move ServiceDiscoveryManager to org.jivesoftware.smackx.disco.ServiceDiscoveryManager
* SMACK4: Move DiscoverInfo/Items to org.jivesoftware.smackx.disco.packet.DiscoverInfo/Items
* SMACK4: Renamed org.jivesoftware.smackx.bookmark package -> org.jivesoftware.smackx.bookmarks
* SMACK4: Move DelayInformation to org.jivesoftware.smackx.delay.packet.DelayInformation
* SMACK4: Move PrivateData(Provider) to org.jivesoftware.smackx.iqprivate.packet
* SMACK4: Move Roster* to org.jivesoftware.smack.Roster
* SMACK4: Move VCard to org.jivesoftware.smackx.vcardtemp.packet.VCard
* SMACK4: Move Form to org.jivesoftware.smackx.xdata.Form
* SMACK4: Move ChatState to org.jivesoftware.smackx.chatstates.ChatState
* SMACK4: Move Chat to org.jivesoftware.smack.chat.Chat
* SMACK4: Move RosterPacket to import org.jivesoftware.smack.roster.packet.RosterPacket;
* SMACK4: Move ReportedData to import org.jivesoftware.smackx.search.ReportedData
* SMACK4: Move Privacy* to org.jivesoftware.smackx.privacy
* SMACK4: Move Time to org.jivesoftware.smackx.time.packet.Time
* SMACK4: Move Version to org.jivesoftware.smackx.iqversion.packet.Version
* SMACK4: Renamed org.jivesoftware.smack.Connection to org.jivesoftware.smack.XMPPConnection
* SMACK-4: Packet -> Stanza
A rather large commit that refactors all 'Packet' implementations to the new
'Stanza' alternatives. As a side-effect, most filters and extension-related
classes are affected.
* SMACK4: Fixed the IQ.Type enum (all to lowercase)
* SMACK4: Fixed obtaining a Roster instance.
* SMACK4: Fixed service discovery element iteration (from iterator to collection).
* SMACK4: Replaced StingUtils with XMPPStringUtils
* SMACK4: Move LastActivity to org.jivesoftware.smackx.iqlast
* SMACK4: Move SharedGroups to org.jivesoftware.smackx.sharedgroups
* SMACK4: Fixed obtaining a Roster instance.
* SMACK4: Fixed dataform iteration (from iterator to collection).
* SMACK4: Changed the FormField type constants to enum values.
* SMACK4: Fixed dataform iteration (from iterator to collection).
* SMACK4: Replaced Smack 3 libs with Smack 4.
* SMACK4: Renamed org.jivesoftware.smackx.jingle to org.jivesoftware.smackx.jingleold
* SMACK4: Migrated the jive property extensions to stanzas.
* SMACK4: Fixed obtaining a ChatManager instance (Smack's, not Spark's).
* SMACK4: Move MessageEvent to org.jivesoftware.smackx.xevent
* SMACK4: Fixed obtaining a MultiUserChatManager instance.
* SMACK4: Added SmackException to catches for XMPPException.
* SMACK4: MUC Service refactoring.
* SMACK4: MessageEvent#setPacketID -> setStanzaId
* SMACK4: Refactored PacketExtensionProvider to ExtensionElementProvider
* SMACK4: Fixed changed interface of Version.
* SMACK4: Fixed for Privacy List
* SMACK4: Fixed for Scratchpad
* SMACK4: Fixed for Systray
* SMACK4: ConnectionListener fixes (and some various others)
* SMACK4: Fixed Translator plugin.
* SMACK4: Fixed TicTacToe plugin.
* SMACK4: Fixed Reversi plugin.
* SMACK4: Fixed OTR plugin.
* SMACK4: Fixed Jingle plugin.
* SMACK4: Fixed FasthPath plugin.
* SMACK4: Fixed Battleship plugin (although it had an error to begin with, and still has).
* SMACK4: Fixed SIP plugin.
* SMACK4: Fixes for MUC (mostly error handling).
* SMACK4: Various fixes.
* SMACK4: Fixes for iqVersion.
* SMACK4: Fixes for MUC.
* SMACK4: Fixes for Bookmark plugin.
* SMACK4: Fixes for PresenceChange plugin.
* SMACK4: Fixes for FileTransfer
* SMACK4: Fixes for Gateway plugin.
* SMACK4: Fixes for Privacy List.
* SMACK4: Fixes for VCardManager.
* SMACK4: Fixes for UserSearch.
* SMACK4: Fixes for connection logic.
* SMACK4: Fixes for MUC.
* SMACK4: Fixes for connection logic.
* SMACK4: Fixes PhonePlugin
This commit introduces a new asterisk-im-client library (which is Smack 4 based).
It also renames of other libraries to conform to standards.
* SMACK4: Do not confuse compiler with SingletonMap-hack.
* SMACK4: Fix the last few compiler errors.
* SMACK4: Settled Smack dependencies.
This commit re-organizes the libraries that ship with Spark, primarily
to fulfill Smack's dependencies.
On a side-note: Using this code, I was able to compile and start
Spark, joining a MUC and exchanging messages. There's plenty of things
going wrong, but hey, getting close. :)
* SMACK4: Fixing self-presence evaluation in MUC (prevents NPEs).
* SMACK4: Fixing VCards.
* SMACK4: Fixing FastPath plugin.
* SMACK4: Fixing SIP plugin.
* SMACK4: Fixing TransferGuard plugin.
* SMACK4: Fixing Buzz plugin.
Patch from Slava Durin - Thanks Slava!
-new checkbox on Login Dialog that offers the option to login as invisible
-new presence (invisible) added on the dropdown menu in the Status bar. The user can anytime go invisible
git-svn-id: http://svn.igniterealtime.org/svn/repos/spark/trunk@13597 b35dd754-fafc-0310-a699-88a17e54d16e
-Implement XEP-0085
1)Provide event handling for following chat states according with document:
-paused (user stopped typing message)
-composing (user started typing message)
-active(chat window gained focus)
-inactive (after 2 minutes of inactivity or chat focus lost)
-gone (after 10 minutes of inactivity)
2)Added text on chat window to display current chat state
3)Accomodate XEP-0022 (obsolete) impplementation into XEP-0085
-fixed chatTextInput focus event handling
git-svn-id: http://svn.igniterealtime.org/svn/repos/spark/trunk@12897 b35dd754-fafc-0310-a699-88a17e54d16e
-GroupChatParticipantList - exposed some fields(protected get methods) and changed some methods from private to protected
-LoginDialog - introduced afterLogin method that does nothing but can be overwritten by subclasses - it is automatically
called after successful login. It is useful when subclasses would like to do some additional settings after login
-created new protected method to retrieve _usernames
git-svn-id: http://svn.igniterealtime.org/svn/repos/spark/trunk@12585 b35dd754-fafc-0310-a699-88a17e54d16e
1. It introduces a component registry (UIComponentRegistry.java) that offer the possibility for plugin to replace some default components with their own instances
By default Spark implementation are going to be used
Spark classes that can be replaced:
private static Class<? extends ContactItem> contactItemClass = ContactItem.class;
private static Class<? extends ContactInfoWindow> contactInfoWindowClass = ContactInfoWindow.class;
private static Class<? extends ContactGroup> contactGroupClass = ContactGroup.class;
private static Class<? extends ContactList> contactListClass = ContactList.class;
private static Class<? extends StatusBar> statusBarClass = StatusBar.class;
private static Class<? extends CommandPanel> commandPanelClass = CommandPanel.class;
private static Class<? extends SparkTabbedPane> workspaceTabPaneClass = SparkTabbedPane.class;
private static Class<? extends LoginDialog> loginDialogClass = LoginDialog.class;
private static Class<? extends ThemePanel> themePanelClass = ThemePanel.class;
private static Class<? extends ConferenceServices> conferenceServicesClass = ConferenceServices.class;
2. It also contains changes in Spark code to support such mechanism, separates a bit UI building from business login
and exposes some UI elements through protected get/set methods
Example on how a plugin can register its own ContactItem implementation:
public class TestPlugin implements Plugin {
public TestPlugin() { UIComponentRegistry.registerContactItem(TestContactItem.class); }
....
}
where TestContactItem extends Spark ContactItem:
public class TestContactItem extends ContactItem { ... }
git-svn-id: http://svn.igniterealtime.org/svn/repos/spark/trunk@12581 b35dd754-fafc-0310-a699-88a17e54d16e
title.advanced.connection.sso.noprincipal = Spark is unable to find the principal to use for Single Sign-On. This will prevent SSO from working.
title.login.no.account = Unable to determine
removed unnecessary system.out's
git-svn-id: http://svn.igniterealtime.org/svn/repos/spark/trunk@12422 b35dd754-fafc-0310-a699-88a17e54d16e
SPARK-LANG
title.advanced.connection.sso = Using Single Sign-On (SSO)
title.advanced.connection.sso.unable = Unable to connect using Single Sign-On. Please check your principal and server settings.
git-svn-id: http://svn.igniterealtime.org/svn/repos/spark/trunk@12402 b35dd754-fafc-0310-a699-88a17e54d16e
if profile contains wrong format ( name@server ) it wont be loaded and wont cause Exceptions
if two accounts have the same name but different server they will also show now
git-svn-id: http://svn.igniterealtime.org/svn/repos/spark/trunk@12388 b35dd754-fafc-0310-a699-88a17e54d16e
Thanks to Hawke for the following:
Allows the login dialog to set whichever of username, servername is set, if only one of them is (previously it would only display them if both were set).
Fixes a crash if the LoginContext gets an exception when the ssoMethod is set to DNS.
Corrects two typos, one in a displayed error message, the other in a logged error.
Makes it so that turning on SSO doesn't automatically turn on autologin.
git-svn-id: http://svn.igniterealtime.org/svn/repos/spark/trunk@10594 b35dd754-fafc-0310-a699-88a17e54d16e
[SPARK-912] Incorporated patches submitted for a wealth of localization improvements, also includes new confirmation when clearing transcript, ability to globally override spark properties, and ability to disable or change spark update check frequency.
git-svn-id: http://svn.igniterealtime.org/svn/repos/spark/trunk@9710 b35dd754-fafc-0310-a699-88a17e54d16e
[SPARK-913] Preferences are saved properly whenever changed.
Minor cosmetic tweak to theme panel.
A single slash no longer turns into a link. More to come on that front.
git-svn-id: http://svn.igniterealtime.org/svn/repos/spark/trunk@9682 b35dd754-fafc-0310-a699-88a17e54d16e