um_password_dialog_set_user() is called from on_permission_changed()
respective show_user(), which more or less means on every change in
the panel. It it pretty enough to call this before opening the password
dialog, which is already done over change_password() callback. Let's
remove the redundant call which may lead to unwanted failures among
others.
https://gitlab.gnome.org/GNOME/gnome-control-center/issues/171
The battery power level level bars are using the default offsets for low, high and full battery level, 0.25, 0.75 and 1.0.
Based on the suggestion from #68, this commit changes the high and full offset to 0.1 and 0.8, and the low battery level offset to 0.03 for primary batteries and UPSs, and 0.05 for other batteries and devices.
https://gitlab.gnome.org/GNOME/gnome-control-center/issues/68
Creating the restart file leaked GFile objects. It also stored the path in the
object, which is unnecessary as it can just be generated on demand.
This leak has was introduced when the feature was in
db551f1c5d
There was a GCancellable used for IBus operations that was generated each time
an operation was done. The cancellable was only used to cancel such operations
when the panel is closed. We can just use the shared cancellable for this.
"warning: passing argument 1 of ‘gtk_widget_destroy’ from incompatible
pointer type" is printed from g_clear_pointer, because it is more
type-safe now. See https://gitlab.gnome.org/GNOME/glib/issues/1425 for
more info. Add the necessary casts to suppress the warnings.
The commit targets to remove the behavior of implicit set of the language
when the user panel is clicked in g-c-c.
The behavior looks like introduced to partly resolve the bug [0] when the
gnome-initial-setup somehow did not set the language correctly. However the
gnome-initial-setup is able to handle the language nicely now.
Furthermore, the current user could not see its own language chooser in the
g-c-c User panel, instead the Region&Language panel is supposed to do the
task. And the Region&Language panel has already got a default locale set [1]
[2]. So even if the language is not set in the key file, it is less an issue
nowadays than when the issue was originally described in [0].
[0] https://bugzilla.gnome.org/show_bug.cgi?id=737216
[1] https://bugzilla.gnome.org/show_bug.cgi?id=767065
[2] https://gitlab.gnome.org/GNOME/gnome-control-center/commit/5e2ed8ehttps://gitlab.gnome.org/GNOME/gnome-control-center/merge_requests/161
As the main headerbar used by the shell is split, the title is not
propagated to the window. However, the "apply" header bar is not split
and the title is propagated to the toplevel GtkWindow.
Fix this issue by resetting the window title again.
Fixes https://gitlab.gnome.org/GNOME/gnome-control-center/issues/81
Some of the current string related to saving power by
turning something off are ambiguous, and can mean both
"yes, turn off" or "yes, keep it on" at the same time.
This commit slightly rewords those sentences in order
to disambiguate them.
https://gitlab.gnome.org/GNOME/gnome-control-center/issues/53
[skip ci]
Currently, we acquire the Rfkill D-Bus proxy and synchronize
the state right after that. However, we don't monitor for
subsequent changes by connecting to the 'g-properties-changed'
GDBusProxy signal, which causes the Airplane Mode not to stay
synchronized when modified from others places, such as GNOME
Shell's aggregate menu.
This commit adds the necessary signal monitoring code to react
to external applications changing the Rfkill properties.
According to the most recent mockups [1], when Airplane
Mode is switched on, the Wi-Fi connection will be turned
off and the Wi-Fi panel should show an empty state for
Airplane Mode. This is currently not implemented in the
codebase.
This commit adds an Airplane Mode empty state for the Wi-Fi
panel, and a small logic adjustment to show it under these
circumstances.
The current Wi-Fi panel ties the Airplane Mode row to the access
point list of a given Wi-Fi adapter. That has unintended but
bad side effects: when enabling Airplane Mode, the row disappears
and we have to switch to another panel (e.g. Bluetooth) in order
to disable it. This is functionally wrong: we should be able to
enable or disable Airplane Mode from where we initially changed
it.
This commit reorganizes the widget hierarchy in order to put the
Airplane Mode row outside of the main GtkStack page. This is
necessary in order to fully implement the proposed mockups[1]
and, in general, because it's the right thing to do.
Notice that the logic of the empty states in [1] is not fully
implemented yet; this commit only reorganizes the widgets that
already exist to get closer to the mockups. Subsequent commits
will implement more of the empty states.
[1] https://github.com/gnome-design-team/gnome-mockups/raw/master/system-settings/network/aday3/wi-fi-wires.png
Fixes https://gitlab.gnome.org/GNOME/gnome-control-center/issues/121
This commit renames {network|wifi}.ui to cc-{network|wifi}-pane.ui,
in order to match the corresponding C files. This introduces no
functional changes.
It's better for human-readable display than nm_device_get_product().
Unlike nm_device_get_product(), it never returns an empty string and
sanitizes the string.
With NM 1.12 it goes to great lengths to clean up the messy udev
strings.
The current widget has a very generic name "EditDialog" - rename it to something
that reflects better what it is for.
Implement it is as a full GtkWidget using GtkTemplate.
Move some of the logic from inside the dialog to the code that creates the dialog
so less data is passed around.
Store properties using functions instead of g_object_set_data - that passes
everything as a gpointer which is easy to make a mistake with.
The Password dialog uses "Verify New Password" and Add User dialog
"Confirm". Let's use "Confirm New Password" as it is on mockups to
be consistent in terminology.
The logic for the password mismatch warnings didn't handle the case where
you deleted both the passwords - it would still show them as not
matching.
Fix this by handling the three cases:
- Passwords are different
- Passwords are the same
- No passwords entered
If <tab> is pressed and password is not yet validated (ie. the verify
entry is not sensitive), focus skips the verify entry, even if the
password is strong enough. Let's validate the password when <tab> is
pressed (ie. before focus change) to prevent this <tab> breakage...
https://gitlab.gnome.org/GNOME/gnome-control-center/issues/38
Enable support for manipulating GNOME Remote Desktop settings. Settings
are done via the org.gnome.desktop.remote-desktop.vnc schema.
Configuring the VNC password is done via libsecret, thus libsecret is
added as a dependency.