Commit graph

149 commits

Author SHA1 Message Date
Ondrej Holy
2ef0e2aa89 user-accounts: Remove unused cell renderer
With the carousel, the custom user image cell renderer is no more needed.
2018-03-02 08:21:09 +00:00
Felipe Borges
3fb1c1dca1 user-accounts: Turn UmPhotoDialog in a full GObject
For the new avatar-chooser implementation we will use Gtk+ widget
composite templates.

https://bugzilla.gnome.org/show_bug.cgi?id=766670
2018-02-05 16:17:53 +01:00
Ondrej Holy
4e43bd6ce8 user-accounts: Prevent crashes if current user is not in carousel
In a specific cases, current user doesn't have to be returned from
accountsservice, or can be skipped by act_user_is_system_account check.
System users should not be shown. This is expected for root account,
but should not happen with regular user accounts. It needs to be fixed
in accountsservice if you see this happening with regular user accounts.
We have to be just sure that Users panel doesn't crash in such cases
and show all non-system user accounts returned from accountsservice.
Empty page is shown currently only if act_user_manager_list_users
returns nothing, but it has to be also shown if only system accounts
are returned. To fix this issue, do not try to show current user, but
show first user account in carousel instead if there is any. First user
account is current user in normal case.

The patch also fixes problems that current user account is sometimes
selected instead of currently selected user account. This is because
of preselection of first item in um_carousel_add, which causes unwanted
signal emissions...

https://bugzilla.gnome.org/show_bug.cgi?id=773673
2018-02-02 13:40:37 +01:00
Felipe Borges
a701b4646c user-accounts: Introduce an empty state page
There are eventually corner cases where there's no user other than
root in the system and control-center can be launched by the root
user (not recommended). In this cases, the panel crashes without
any user to show (since accountsservice would just list normal
users).

This patch introduces an empty state[0] "No Users Page".

[0] https://wiki.gnome.org/Design/OS/EmptyStates

https://bugzilla.gnome.org/show_bug.cgi?id=773673
2018-02-02 12:49:53 +01:00
Ondrej Holy
4cad3ca408 user-accounts: Change colors of password strength indicator
Use red-yellow- green colors for strength indicator levels.

https://bugzilla.gnome.org/show_bug.cgi?id=780002
2017-05-03 11:39:44 +02:00
Felipe Borges
50c2af0cfb user-accounts: Avoid markup in "Your Account" label
The label indicating which photo in the Carousel belongs to the
current user had the <small> markup within the translatable string,
causing unnecessary work for translators. See
https://wiki.gnome.org/TranslationProject/DevGuidelines/Avoid%20markup%20wherever%20possible

This patch formats the string with g_strdup_printf, leaving the
markup tags out of the translatable message.
2017-02-24 17:12:10 +01:00
Felipe Borges
da997dc2ce user-accounts: Save vertical space in the alignment of widgets
Compensate border-width changes with respective margins.

https://bugzilla.gnome.org/show_bug.cgi?id=778458
2017-02-13 12:03:25 +01:00
Ondrej Holy
b4c26363d8 user-accounts: Disable animations when reloading users
Animations cause unwanted effects when reloading users, disable them.

https://bugzilla.gnome.org/show_bug.cgi?id=778405
2017-02-13 11:58:42 +01:00
Felipe Borges
92e99f677f user-account: Use a stack in user-icon to keep the same size
This fixes the undesired jumps (resizes) while switching between
"Your Account" and any other account.

https://bugzilla.gnome.org/show_bug.cgi?id=778458
2017-02-13 11:55:32 +01:00
Felipe Borges
d2529a1a09 user-accounts: Add "Your account" label below proper UmCarouselItem
Set a margin for the username label instead of using the container
spacing property. In doing so the labels are not so far apart from
each other, but still distant from the profile icon/image.

https://bugzilla.gnome.org/show_bug.cgi?id=767065
2017-02-09 19:25:28 +01:00
Felipe Borges
8452bebe19 user-accounts: Make the user name label bold in the UmCarouselItem
https://bugzilla.gnome.org/show_bug.cgi?id=767065
2017-02-09 19:25:28 +01:00
Felipe Borges
d740a9ac98 user-accounts: Introduce UmCarousel
UmCarousel is an horizontal container that contains UmCarouselItem
children. These items are paginated 3 at 3 at the time.

UmCarousel intents to act as controller for content containers. It
emitis the "item-activated" signal whenever an UmCarouselItem gets
activated (clicked).

It automatically activates the first UmCarouselItem of the current
vsible page.

The visibility of the go-back and go-next button is automatically
set based on the number of children.

These changes are according to the new User Accounts panel mockups
at https://wiki.gnome.org/Design/SystemSettings/UserAccounts

https://bugzilla.gnome.org/show_bug.cgi?id=767065
2017-02-09 19:25:28 +01:00
Ondrej Holy
fc9b455bd6 user-accounts: Fix last login button sensitivity
The last login button should be insensitive for other accounts if the
panel is not unlocked.

https://bugzilla.gnome.org/show_bug.cgi?id=767065
2017-02-08 14:29:42 +01:00
Piotr Drąg
fdc9b35c6b Fix translator comments
They need to be exactly one line above a string to show up in .po files.
2017-01-27 23:02:44 +01:00
Felipe Borges
120956fad3 user-accounts: Use GtkRevealer instead of GdNotification
GtkRevealer combined with the "app-notification" class is enough
to represent the notification concept nowadays.

https://bugzilla.gnome.org/show_bug.cgi?id=775178
2016-11-30 13:06:28 +01:00
Felipe Borges
b995e16c98 user-accounts: Don't show_restart_notification when changing Language
Since commit 5e2ed8e, the user-accounts panel does not present an
option to change the Language for the current user. This should be
done in the "Region & Language" panel instead.

In doing so, the code for launching the restart notification is
never reached in the language_response callback method.

https://bugzilla.gnome.org/show_bug.cgi?id=767065
2016-11-29 15:19:52 +01:00
Piotr Drąg
1e1509240e user-accounts: use Unicode in translatable strings
See https://developer.gnome.org/hig/stable/typography.html

https://bugzilla.gnome.org/show_bug.cgi?id=772199
2016-10-03 15:21:21 +02:00
Felipe Borges
5b101946b9 user-accounts: Drop CcEditableEntry references from um-user-panel
There is no need to use this type in the new user accounts panel.

https://bugzilla.gnome.org/show_bug.cgi?id=767065
2016-08-01 14:51:23 +02:00
Felipe Borges
e3148af358 user-accounts: Use sensitivity to denote changes in "Account Type"
Instead of changing from "Account Type" buttons to label, set the
sensitivity of the buttons according to the current users' permission.

Now we hide the "Account Type" for a single user account.

https://bugzilla.gnome.org/show_bug.cgi?id=767065
2016-08-01 09:38:13 +02:00
Felipe Borges
e36a3654a0 user-accounts: Drop "Account Activity" button
Now the "Account Activity" dialog is launched by clicking in the
"Last Login" option.

https://bugzilla.gnome.org/show_bug.cgi?id=767065
2016-08-01 09:35:21 +02:00
Felipe Borges
1039642d93 user-accounts: Use GtkEntry instead of CcEditableEntry
https://bugzilla.gnome.org/show_bug.cgi?id=767065
2016-08-01 09:24:39 +02:00
Felipe Borges
e2d3b47a33 user-accounts: Drop usage of UmEditableButtons
Now using GtkButtons instead. Since we are denoting the permission
to edit an option by setting the option sensitivity.

https://bugzilla.gnome.org/show_bug.cgi?id=767065
2016-08-01 09:19:40 +02:00
Ondrej Holy
7e1d575798 user-accounts: Remove unused variable
https://bugzilla.gnome.org/show_bug.cgi?id=767065
2016-07-28 12:46:38 +02:00
Ondrej Holy
8e8d00541b user-accounts: Do not access already removed toolbar
Commit eb9c110 removed add-remove-toolbar, however, some leftovers are
in the code which causes the following errors:
Gtk-CRITICAL **: gtk_widget_get_style_context: assertion 'GTK_IS_WIDGET (widget)' failed
Gtk-CRITICAL **: gtk_style_context_set_junction_sides: assertion 'GTK_IS_STYLE_CONTEXT (context)' failed

https://bugzilla.gnome.org/show_bug.cgi?id=767065
2016-07-28 10:53:59 +02:00
Felipe Borges
eb9c110646 user-accounts: Move "Add User" button to header bar
This also introduces a change to the Lock/Unlock logic. From now
on, Unlocking the panel causes the "Lock" button to turn into the
"Add User" button.

https://bugzilla.gnome.org/show_bug.cgi?id=767065
2016-07-27 11:49:06 +02:00
Felipe Borges
1345cf36c5 user-accounts: Remove UmEditableCombo class
Revert this commit in order to bring the UmEditableCombo class back.

https://bugzilla.gnome.org/show_bug.cgi?id=767065
2016-07-25 15:22:35 +02:00
Felipe Borges
5e2ed8e7a7 user-accounts: hide language settings for current user
Language settings should not be shown. That's what the Region &
Language panel settings are for. See:
https://wiki.gnome.org/Design/SystemSettings/UserAccounts

https://bugzilla.gnome.org/show_bug.cgi?id=767065
2016-06-13 17:18:14 +02:00
Felipe Borges
1a6d716774 user-accounts: use radio buttons for account type
According to the mockups at
https://wiki.gnome.org/Design/SystemSettings/UserAccounts

https://bugzilla.gnome.org/show_bug.cgi?id=767065
2016-06-01 17:10:55 +02:00
Zeeshan Ali (Khattak)
afebec5d9a common: Move get_smart_date() to common utils
And rename it to cc_util_get_smart_date().

In a following patch, we'll need to use it from privacy panel.

https://bugzilla.gnome.org/show_bug.cgi?id=761245
2016-03-03 16:07:58 +00:00
Sebastien Bacher
ecaafb11bc user-accounts: Don't link directly to GStreamer
The panel uses cheese and not GStreamer directly

https://bugzilla.gnome.org/show_bug.cgi?id=761915
2016-03-02 11:46:40 +01:00
Rui Matos
958c0140bb user-accounts: Avoid a crash when gdm's schemas aren't installed
Commit de821d5922 implicitly added a
runtime dependency on gdm's settings schemas being installed. Since
GSettings aborts if schemas aren't installed this means we new crash
on systems without gdm.

See https://bugzilla.redhat.com/show_bug.cgi?id=1259935 .

https://bugzilla.gnome.org/show_bug.cgi?id=754682
2015-09-07 16:45:03 +02:00
Bastien Nocera
93414609fa user-accounts: Fix gtk_tree_model_get_iter_first() retval
https://bugzilla.gnome.org/show_bug.cgi?id=749892
2015-05-27 11:06:02 +02:00
Ondrej Holy
afe0a62267 user-accounts: show restart notification when account type changed
https://bugzilla.gnome.org/show_bug.cgi?id=674429
2015-04-15 16:27:24 +02:00
Ondrej Holy
3e6b741ad2 user-accounts: check for NULL on um_realm_object_get_common
um_realm_object_get_common can return NULL, which shouldn't be passed
into subsequent functions to avoid crashes.

https://bugzilla.gnome.org/show_bug.cgi?id=705351
2015-02-25 15:50:17 +01:00
Ondrej Holy
de821d5922 user-accounts: don't show fingerprint options if disabled
Don't show fingerprint configuraiton if the administrator disabled
fingerprint authentication:
https://help.gnome.org/admin/system-admin-guide/stable/login-fingerprint.html

https://bugzilla.gnome.org/show_bug.cgi?id=744332
2015-02-23 12:57:18 +01:00
Ondrej Holy
a4521c15d5 user-accounts: update padding on style-updated
Padding is updated for some widgets once, when creating the widgets.
But it seems style may not be loaded yet. Therefore the padding has
to be updated on "style-updated" signal to reflect style changes.

https://bugzilla.gnome.org/show_bug.cgi?id=743180
2015-01-27 16:35:48 +01:00
Ondrej Holy
dba7bf76c4 user-accounts: hidpi support for user's icons in tree view
This patch adds UmCellRendererUserImage object which respect scale factor.

https://bugzilla.gnome.org/show_bug.cgi?id=742395
2015-01-20 17:08:19 +01:00
Ondrej Holy
5c30530271 user-accounts: hidpi support for user's icons
This patch adds UmUserImage widget which respect scale factor.

https://bugzilla.gnome.org/show_bug.cgi?id=742395
2015-01-20 17:08:15 +01:00
Ondrej Holy
006b5970a6 user-accounts: render user's icons as surface with scale
This patch is needed for future hidpi support.

https://bugzilla.gnome.org/show_bug.cgi?id=742395
2015-01-20 17:08:11 +01:00
Ondrej Holy
8bd1a5f18d user-accounts: do not show notification if not needed
Restart notification is shown if there is different language in
accountsservice. However restart isn't needed if user selects original
language (after several changes), which is already used in the system.

https://bugzilla.gnome.org/show_bug.cgi?id=703392
2015-01-19 13:12:34 +01:00
Ondrej Holy
b0e6526c46 user-accounts: do not set the language twice
The act_user_set_language function is called twice as a result of
commit 96c0c0a, which is not necessary.

https://bugzilla.gnome.org/show_bug.cgi?id=703392
2015-01-19 13:05:36 +01:00
Ondrej Holy
b61c74aa60 user-accounts: don't show empty row for remote users
Empty row is shown instead of hidden autologin switch, because autologin
box is still visible. Set visibility on autologin box to hide this empty
row.

https://bugzilla.gnome.org/show_bug.cgi?id=742926#c0
2015-01-15 09:34:46 +01:00
Ondrej Holy
320f6e617b user-accounts: replace deprecated stuff 2014-11-20 11:32:33 +01:00
Ondrej Holy
5790368643 user-accounts: fix enterprise accounts deleting
Deleting enterprise accounts using act_user_manager_delete_user fails
with error: userdel failed, because enterprise accounts are added
using act_user_manager_cache_user and don't have entries in passwd
file. Thus enterprise accounts should be removed by
act_user_manager_uncache_user.

https://bugzilla.gnome.org/show_bug.cgi?id=727871
2014-11-03 18:13:10 +01:00
Ondrej Holy
ed13a62c1d user-accounts: use common function for error messages
https://bugzilla.gnome.org/show_bug.cgi?id=727871
2014-11-03 18:13:10 +01:00
Ondrej Holy
96c0c0a838 user-accounts: simplify language changing thru users panel
Do not show combo box with common languages and show the language
chooser immediately as it is done in the region panel.

https://bugzilla.gnome.org/show_bug.cgi?id=738077
2014-10-31 09:19:54 +01:00
Ondrej Holy
37a54b69d6 user-accounts: remove dead code
This lines are dead code, because act_user_get_language() returns empty
string if language isn't set. We don't want to fix the condition, because
cc_common_language_get_current_language is wrong for other users.

https://bugzilla.gnome.org/show_bug.cgi?id=737216
2014-10-07 12:19:01 +02:00
Ondrej Holy
4c6ef8568d user-accounts: fix language chooser response if language is unknown
If language is unknown and language chooser is cancelled, panel crash
with the following error:

(gnome-control-center:24952): Gtk-CRITICAL **: gtk_list_store_get_path:
assertion 'iter->stamp == priv->stamp' failed

(gnome-control-center:24952): Gtk-CRITICAL **: gtk_list_store_get_value:
assertion 'iter_is_valid (iter, list_store)' failed

(gnome-control-center:24952): GLib-GObject-WARNING **: gtype.c:4221:
type id '0' is invalid

(gnome-control-center:24952): GLib-GObject-WARNING **:
can't peek value table for type '<invalid>' which is not currently referenced
Segmentation fault (core dumped)

https://bugzilla.gnome.org/show_bug.cgi?id=738002
2014-10-07 12:09:43 +02:00
Ondrej Holy
6b3b223668 user-accounts: preset language chooser if language is known
Preset the language chooser similary as it is done in the region panel.
Also remove one goto command and share code.

https://bugzilla.gnome.org/show_bug.cgi?id=738002
2014-10-07 12:08:55 +02:00
Ondrej Holy
6f13d0ad8b user-accounts: fix language chooser response
If the language chooser is confirmed and no language is selected,
"Other..." is shown as user's language and the following error is printed:

(gnome-control-center:14608): AccountsService-CRITICAL **:
act_user_set_language: assertion 'language != NULL' failed
2014-10-07 12:08:38 +02:00