History log of /haiku/src/apps/haikudepot/ui/UserLoginWindow.cpp
Revision Date Author Comments
# bf866d5e 17-Feb-2024 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot : Improve Language Code Handling

HDS is soon going to be enhanced to deal with more than
just the two-character ISO language codes that it
currently supports. The logic in HD is currently expecting
that HDS will only supply these two character codes. This
change is about making adjustments to be able to cater to
any ICU language IDs from HDS.

The naming in HDS is still going to continue to use the
terminology that it currently does; it will call the
identifier for a language a "natural language code". The
HD source will instead reflect the nomenclature of ICU
and call the same thing a language ID.

Change-Id: Ib138c2e3b7b667edf15cd497c2f710f80b3c29f8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7424
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com>


# e526b618 26-Oct-2023 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot: Avoid Corrupt Username (2)

Previous changes removed the ability to supply
control characters at the start and end of a
nickname; this change removes them from anywhere
in the nickname when supplied.

Change-Id: I0631fffa8aaf2c0e267c777892044c53faa4334e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7071
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# b02777c1 25-Oct-2023 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot: Avoid Corrupt Username

If the user happened to enter control characters into
their username when authenticating then the username
may cause problems later when communicating back to
the server. This is a hard problem to diagnose and
this commit will remove the problem.

Change-Id: Iad3c24f16cc6799ad8ddad634b8621a0aaadb921
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7067
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>


# 4b347fcc 23-Sep-2023 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot: Token Based Authentication

This switches the application over from using basic
authentication to using token-based authentication in
preparation for later using Open-ID based
authentication flows. The application version is also
bumped in order that the server can detect this version
at some later date in the future when it no longer
supports basic authentication itself.

Change-Id: I7addde1d57503c58d6bcd54908f22f66830c0c59
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6944
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# b6356b91 13-Mar-2023 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot: Password Requirements

Obtains HDS's password requirements and displays
those to the user when creating a new account.

Relates to #13986

Change-Id: I1b76181e17bc03e9baf915dadcd3c45f9eb89b3f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6203
Tested-by: Automation <automation@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>


# dfbcbde1 01-Mar-2021 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot: Remove Custom List

Closes #15534

Change-Id: I23fa60145607c3e8f25552f24c5e2c630b940537
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3758
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# fa5c8097 25-Jul-2020 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot: Languages List

Abstacts the list of supported languages into
the LanguageModel class preventing use of
List. Also; fix a few cases where newer
logging techniques may have caused incorrect
logic flow.

Relates To #15534

Change-Id: I144fe4788abdaf0d93e53eeabc97b3f7aa2ec710
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3085
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# f96d1f4d 10-Jul-2020 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot: Better Logging

Changes the logging in HD to use a macro for the
various log levels to declutter the code and to
make it easier to more systematically log.

Change-Id: I025970707a0a11e7e3aaa4b52fc91288af0183f5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3018
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# 1f3909ad 02-May-2020 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot: Referencable Fixes

Some misuse of BReferencable / BReference are causing the
debugger to fire while debugging another issue. This
should fix some of it.

Change-Id: I895e209afe9e350e35b111739140c85133107227
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2556
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# ffc770c1 20-Apr-2020 Niels Sascha Reedijk <niels.reedijk@gmail.com>

HaikuDepot: remove double space after full stop

Reported by translator loic (thanks!). The double space is only removed in
user-facing strings, I did not touch the comments.

For those interested in an internet controversy, search the internet for
the origins of the double space after a period. In any case, for consistency with
other user facing strings, go to a single space after a period.


# 10cd325c 30-Mar-2020 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot: Check User Auth on Start

The user might have changed their authentication details
on the server and the client won't detect this until
they go to do something. Instead, if possible, check
this as the client starts. Also check that the user has
agreed to the current user usage conditions.

As a side-effect this generalizes the logic for process
coordination in the main window and also fixes some bugs
in the main window's progress display as the application
starts.

Relates to #15209

Change-Id: I4c9620648819ecd14fb095e4cb2c66fe7b2a0920
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2467
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# b21c9447 27-Feb-2020 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot: Instructions on Logs

Some error messages make mention of application logs
and users don't know how to view the logs. This
change adds some instructions about that to the user
guide and also directs the user to the user guide in
any error messages that mention the logs.

Change-Id: Ib98737abe853586c58a1c1df7befb86aa1c04491
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2285
Reviewed-by: humdinger <humdingerb@gmail.com>


# 0c1bd1b6 09-Feb-2020 Humdinger <humdingerb@gmail.com>

Fixed missing word in GUI string


# 2e37c88d 07-Feb-2020 Murai Takashi <tmurai01@gmail.com>

haikudepot: Fix 'new[]' array freed with 'delete'

buffer is allocated by new[] in _UnpackCaptcha(), but freed by delete.
Pointed out by LGTM.

Change-Id: I6feee3f9791950c33bbc2037c7809e21f250fa47
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2226
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# 835e7239 07-Oct-2019 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot: Refactor of Login

These changes cover a rework of the login and
account creation logic before making additional
changes related to the user usage conditions.

Relates to #15209

Change-Id: I90b7dbcee5b0285476938c6ced0afc89483d6227
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2023
Reviewed-by: Stephan Aßmus <superstippi@gmx.de>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# d2d4866d 19-Sep-2019 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot: Display User's Usage Conditions

A HaikuDepotServer may have previously agreed to
user usage conditions. If this is the case then
they are now able to view those conditions. There
were some problems with date formatting in this
change and so the date formatting logic has moved
into the HaikuDepot source code temporarily until
issues with the BDateTime class can be resolved;
most likely as a separate piece of work.

Relates to 15209

Change-Id: Ic3e5413d9139f410d7f7e8b566d4c56352dd2778
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1870
Reviewed-by: Stephan Aßmus <superstippi@gmx.de>


# 1448ced0 18-Sep-2019 Humdinger <humdingerb@gmail.com>

HaikuDepot: sentence casing notification titles

* We generally use sentence casing, even for alerts and notification
titles

* Using "User usage conditions" uses a bit too many 'users' for my
taste. How about dropping the "User" and distinguish possible future
additions with e.g. "Developer usage conditions"?

Change-Id: Iff2473ec193515b960d3da45bbd590c95413f99f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1869
Reviewed-by: Andrew Lindesay <apl@lindesay.co.nz>


# 0c82f64b 02-Sep-2019 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot: Conditions on Create User

When the user chooses to create a new user they
are able to view the current usage conditions for
users. They are also required to agree to the
conditions and they are required to confirm that
they meet the minimum age requirement.

Relates to 15209

Change-Id: I83cdaabe1b3da31a4cd21139b72341f4b93cab85
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1842
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# 4f8d9e12 21-May-2019 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot: Load Languages from HDS - Fixes

Follow-on changes from recent commit of the same title
with some improvements and fixes.

Change-Id: Ic4439966340578b920345332669591f6cdfcc203
Reviewed-on: https://review.haiku-os.org/c/1471
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# f85e0300 28-Apr-2019 Andrew Lindesay <apl@lindesay.co.nz>

HaikuDepot: Load Languages from HDS

The HaikuDepot application has, thus far had its
own hard-coded list of languages that the user is
able to choose when (a) creating a new account or
(b) creating a user-rating. This change will mean
that those languages are loaded from the HDS
server dynamically and in this way the user can
choose from the full list. There have also been
improvements to the way in which the languages are
displayed in the menu as well.

Change-Id: If7cb7b87f348ca59d503d276a22444e72d0e6168
Reviewed-on: https://review.haiku-os.org/c/1425
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# e00a489b 28-Oct-2018 Augustin Cavalier <waddlesplash@gmail.com>

HaikuDepot: Replace the "featured packages" checkbox with tabs.

As discussed in #14598, there are now two tabs instead of the
checkbox: "Featured packages" and "All packages". It otherwise
behaves as before.

Also fixes #12428.


# bc622f6b 15-Oct-2018 Humdinger <humdingerb@gmail.com>

Fix missing localization

This addresses some of what's reported in ticket #14637.

* Keymap preferences: Localize key labels. Translators have
to be careful not too use too long words here...

* Media preferences: Fix typo "SoundFonts" -> "SoundFont"
The two popup menus, Video input/output, both use "<none>",
which when the catkeys are collected is reduced to one item.
Apparently, Italian likes to have different tranlsations for
them. I hope to fix that by using B_TRANSLATE_COMMENT with
differing comments. Not sure if that'll work...

* Network preferences: Localize "on/off" and "Enable/Disable"
in the Services.

* Repositories preferences:
Add RepoRow.cpp to DoCatalogs.

* Shortcuts preferences: Localize "Left/Right/Both/Either/None"

* Bluetooth replicant: Localize menu items and alerts.

* DeskCalc: Localize button names.

* HaikuDepot:
- Use BStringFormat and variables to replace for the WorkStatusView.
- Put package name in single quotes; nicer if you have package names
with spaces.
- Avoid leading and trailing spaces in translatable strings. Those
can be overlooked b the translator.
- Use B_UTF8_ELLIPSIS instead of "...".

Change-Id: Ia32908f9faad5188aa87c918c31229277decbda9
Reviewed-on: https://review.haiku-os.org/631
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# 2a36368b 08-Apr-2015 Michael Lotz <mmlr@mlotz.ch>

HaikuDepot: Make BitmapView use SharedBitmaps directly.

Instead of extracting a BBitmap out of the SharedBitmap and giving that
to BitmapView, set SharedBitmaps directly. When using BBitmaps we
circumvent the reference counting of the SharedBitmaps and it would be
possible for the SharedBitmap and its BBitmaps to get deleted while
one of them was still used in a BitmapView.

Fixes use-after-free when icons are updated that are already used in
BitmapViews.


# 87084745 07-Apr-2015 Michael Lotz <mmlr@mlotz.ch>

HaikuDepot: Clean up trailing whitespace.


# cdb2290f 07-Oct-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Logic reversal with marking username field

Fixed flipping the boolean passed to MarkAsInvalid() for the user name field,
which only recently became apparent.


# 6f9eb8d1 04-Oct-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Validate input before creating account

Provide error or info alert when fields are invalid, suggest
providing an email, but allow to ignore the warning.


# b5b71778 02-Oct-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Specific error for untracked packages

The web service currently only synchronizes with HaikuPorts. Packages
from 3rd party repositories which were added by the user cannot be rated.

Also, use a warning alert for errors in the UserLoginWindow and
RatePackageWindow.


# 1bbda92d 30-Sep-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Request to login before rating a package

* There is now a flow of logging in or creating an account before being
able to rate a package and the user is not yet logged in. The
UserLoginWindow stores an "on success" BMessenger and BMessage which are
send after the alert which confirms successful login or account creation.
This is used to make the RatePackageWindow show once logged in successfully.


# e8240359 29-Sep-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Fixed missing space in error alert.


# 965707a9 29-Sep-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Rating and login window have no system names.


# 0ba9258d 29-Sep-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Use B_USE_WINDOW_INSETS in login window


# 8f331d41 28-Sep-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Removed invalid TODO from UserLoginWindow


# 3e3d0eff 27-Sep-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Limit language selection for account creation

For the time being, there is a limited amount of supported languages
when creating accounts, reflect this in the UI and use a BMenuField.
Creating accounts with other languages fails, the error reporting was
not ideal and could be improved. The server responded with "object not found",
which was reported in the alert, but the response actually contains the
object which was not found (NaturalLanguageCode).


# 04c9d578 27-Sep-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Organized source into sub-folders


# 2a36368bda35aed7210c3285019b286581fc8786 08-Apr-2015 Michael Lotz <mmlr@mlotz.ch>

HaikuDepot: Make BitmapView use SharedBitmaps directly.

Instead of extracting a BBitmap out of the SharedBitmap and giving that
to BitmapView, set SharedBitmaps directly. When using BBitmaps we
circumvent the reference counting of the SharedBitmaps and it would be
possible for the SharedBitmap and its BBitmaps to get deleted while
one of them was still used in a BitmapView.

Fixes use-after-free when icons are updated that are already used in
BitmapViews.


# 8708474567be756984f35cd6c5bfcc2c9546dc1e 07-Apr-2015 Michael Lotz <mmlr@mlotz.ch>

HaikuDepot: Clean up trailing whitespace.


# cdb2290fe924eb75be48cd8cd0023b05c5bb6573 07-Oct-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Logic reversal with marking username field

Fixed flipping the boolean passed to MarkAsInvalid() for the user name field,
which only recently became apparent.


# 6f9eb8d1bb1fd9d9a93b3afda0be7578ca322caa 04-Oct-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Validate input before creating account

Provide error or info alert when fields are invalid, suggest
providing an email, but allow to ignore the warning.


# b5b717785e8d8d696455844d561f3b47f36a2f9c 02-Oct-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Specific error for untracked packages

The web service currently only synchronizes with HaikuPorts. Packages
from 3rd party repositories which were added by the user cannot be rated.

Also, use a warning alert for errors in the UserLoginWindow and
RatePackageWindow.


# 1bbda92dc72e7b14358c38db78373923ecb806fa 30-Sep-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Request to login before rating a package

* There is now a flow of logging in or creating an account before being
able to rate a package and the user is not yet logged in. The
UserLoginWindow stores an "on success" BMessenger and BMessage which are
send after the alert which confirms successful login or account creation.
This is used to make the RatePackageWindow show once logged in successfully.


# e824035985f60bebe35ffad285bb4fff7b804c62 29-Sep-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Fixed missing space in error alert.


# 965707a9bbfd077a9bc885c83ddd4bdff50fcd23 29-Sep-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Rating and login window have no system names.


# 0ba9258d0fae65b60abd93e9bc1b6591254963f9 29-Sep-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Use B_USE_WINDOW_INSETS in login window


# 8f331d41fa08d1f620e2782b0b3051876dc130d4 28-Sep-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Removed invalid TODO from UserLoginWindow


# 3e3d0effdc47debfd583da23fbb4000e453d9bc9 27-Sep-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Limit language selection for account creation

For the time being, there is a limited amount of supported languages
when creating accounts, reflect this in the UI and use a BMenuField.
Creating accounts with other languages fails, the error reporting was
not ideal and could be improved. The server responded with "object not found",
which was reported in the alert, but the response actually contains the
object which was not found (NaturalLanguageCode).


# 04c9d578d85baa79584c1c40c61cc73ca58d527b 27-Sep-2014 Stephan Aßmus <superstippi@gmx.de>

HaikuDepot: Organized source into sub-folders