Spark look and feel refresh

Latest build https://bamboo.igniterealtime.org/browse/SPARK-NIGHTLY-1647/artifact/shared/Install4j-generated-media/

The red icon disappears when i click on the chat window, even if unread tabs are not visible. Same happens when window becomes focused or in front if you minimize some other window and chat window becomes completely visible. I think it shouldn’t disappear until you click on the tab with unread messages.

Sometimes it still steals the focus. I can’t always reproduce this, but i think it happens when you receive one new message and then another one into the same tab.

Sometimes i get red icon with a number when the other part is only typing. It reacts to typing notification. Happens when you minimize another window, red icon disappears and at that point another party starts to type.

Also when red icon is showing and i try to click on dropdown, the icon disappears and i miss click as the dropdown button moves back in place.

Fixed.

1 Like

Still in progress as mentioned in comment, I needed assistance on this also, just putting the code in the correct place.

Latest build https://bamboo.igniterealtime.org/browse/SPARK-NIGHTLY-1649/artifact/shared/Install4j-generated-media/
Certificate selection is fixed now.

I see that you have added new configureVisibility control. Need to adjust the logic, because the original code was to add the checkbox when both conditions match:

if (!Default.getBoolean(Default.HIDE_LOGIN_ANONYMOUSLY) && localPref.getAnonymousLogin()) {
                add(loginAnonymouslyBox,

Now it is to hide, so on login screen all checkboxes are not shown now (even if they are enabled in Client Control or this plugin is not present). There is a backwards logic here, which can be confusing. If Default is not true for hide and local pref is true, then show the field. Same goes for the Accounts and Advanced menu. Now they can’t be disabled. Logic should be !Default && localpref, then add (not remove).

Unfortunately me and Ilya are not developers. Even if i can give such minor hints after spending 15 years with this project i can’t really help with something more complex. @R87A did some fixes recently with focus in tabs and chat window, but he is currently on a break for a few months. Other than that i don’t know who can help with the code. Spark never had much attention from developers. @guus is probably busy with Openfire and other stuff.

I guess, maybe you can flip the logic here to: Default && !localpref and then use hide. Although, maybe it is better to keep it consistent throughout the code (there are more such controls for various settings in other places).

I think I’ll just flip it, the properties are only used in Login from my search, so there won’t be a problem.

Well I guess am left to figure out the logic is hiding. :grinning:

Now I see the certificate, thanks!
But after a clean install of Spark, all checkboxes were gone =(
2021-01-09_12-53-22

Updated

1 Like

Thank you, you are fast!)

1 Like

Thanks :smiley:

I meant that there are properties in other parts of code to control various menu settings not on Login screen (like disabling Log out button, Preferences menu, etc.). But it is not a big deal. As Guus mentioned when he was adding an option to block games, the whole Default properties/Client Control system is a mess and needs a major reworking. Now you have to add if statements inside the code to make something disappear and the logic is confusing as it has to take into account both default.properties and local preferences coming from Client Control.

Newest build https://bamboo.igniterealtime.org/browse/SPARK-NIGHTLY-1650/artifact/shared/Install4j-generated-media/
It is not working with flipped logic yet. So previously it was:
If default is NOT true for hiding AND localpref is Enabled, then show the field
Now it is - if default IS true for hiding AND localpref is NOT enabled, then hide the field
This will not work if i have not done anything in default properties (so it is NOT true for hiding), but only selected to hide in Client Control settings. AND statement is not true then and it doesn’t hide. So i think we need to use OR if logic is flipped. Then it should hide if either Default or localpref is disabling it from showing. Sorry, this is very tough for me to wrap my head around even after dealing with this code for years… :confused:

I was going to adjust some translations, so i can try changing to OR myself.

Ok, i have changed to OR and it seems to work ok now. https://bamboo.igniterealtime.org/browse/SPARK-NIGHTLY-1651/artifact/shared/Install4j-generated-media/

Also fixed a few more translations on Login screen (FI, LT, PL). Still looking for a shorter word in Dutch for Advanced or Settings. Or maybe we can make it a few chars wider for this button?

Btw, i can’t seem to find where hints text is coming from
image

We need to make them translatable. Like, we can use label.username = &Username
for the first one and change it in i18n file to Enter Username (will have to adjust for all other languages).
Then instead of hardcoded text can use Res.getString(“label.username”)

Found it. In LoginUIPanel.java

 tfDomain.putClientProperty("JTextField.placeholderText", "Enter Domain(e.g igniterealtime.org)");
        tfPassword.putClientProperty("JTextField.placeholderText", "Enter Password");
        tfUsername.putClientProperty("JTextField.placeholderText", "Enter Username");

@k33ptoo @wroot
I didn’t notice this before, but “Lookup profile …” is in the middle of the checkboxes, it can be raised higher.What do you think?
2021-01-09_15-56-27

Awesome, I’ll be looking at the scrollable tab notification issue, reverting to normal for now.

Good suggestion.

Latest build. Now Advanced in Dutch is fitting in the button. Back to regular tabs for now. Also noticed orange hint on tabs instead of blue. I guess to fit the fire theme of Spark :slight_smile: https://bamboo.igniterealtime.org/browse/SPARK-NIGHTLY-1652/artifact/shared/Install4j-generated-media/