The current Network panel class relies on GtkBuilder
when it could use a more modern feature that is the
template class.
By making it a template class, not only the Network
panel is slightly more performant, but it's also
simpler and easier to read.
This commit, then, turns the Network panel into a
template class, and cleans up the code to make it
work.
https://bugzilla.gnome.org/show_bug.cgi?id=785581
The Network panel UI file uses deprecated widgets and
has many lines of needless code. This commit just cleans
it up, as a preparation for turning the Network panel
into a template class.
https://bugzilla.gnome.org/show_bug.cgi?id=785581
The Network panel uses a GtkNotebook internally to manage
the different setup pages of the network devices. While it
does the job, we now have a modern widget for that: GtkStack.
With GtkStack, managing the pages becomes a lot easier and
we gain almost for free the nice transition between pages,
besides of course being a widget that consumes slightly less
resources.
Besides all these gains, using a GtkStack will allow us to
implement the new Wi-Fi panel in a more cohesive manner,
sharing large portions of code and avoiding copy pasta.
This commit then turns the GtkNotebook into a GtkStack, and
renames and adapts the code to reflect that. Fortunately,
the code got actually simpler with the move.
https://bugzilla.gnome.org/show_bug.cgi?id=784818
The list of networks is sorted by connection type. If a user has e.g. a
lot of VPN connections, then the unsorted list is hard to browse.
To fix this, include the title of the connection in the sort order and
ensure the list is kept sorted when a title is changed.
Reported-by: Oliver Haessler <oliver@redhat.com>
https://bugzilla.gnome.org/show_bug.cgi?id=778685
Make it possible for panels to go all the way to the edge of the
shell. This is particularly important for panels that scroll, such
as the new power panel. All other panels are changed to compensate
for the loss of external padding.
https://bugzilla.gnome.org/show_bug.cgi?id=691229
A source file with 4k lines of code is not understandable, and the glade file
was becoming quite a challenge for glade.
To add more features we need to split things up just to keep them maintainable.
This is the first patch that just splits out the proxy bits. Other device types
will follow in the next few days.
Keep the active network at the top, and 'Other' at the bottom.
the other access points are sorted by strength now.
https://bugzilla.gnome.org/show_bug.cgi?id=678505
Signed-off-by: Richard Hughes <richard@hughsie.com>
When switching between devices, the Options buttons were jumping
up and down. This patch makes them stay put in the lower right corner.
The patch also removes a bunch of glade placeholder gunk from the
ui file.
https://bugzilla.gnome.org/show_bug.cgi?id=677054
Signed-off-by: Richard Hughes <richard@hughsie.com>
This is an implementation of network sharing (aka 'Hotspot').
The new 'Use as hotspot' button lets you use a wifi device
as a hotspot for sharing network connections with others.
Currently, the panel generates a ssid based on the hostname,
sets the security to WEP, and generates a random key. These
parameters can be edited afterwards.
It is currently not possible to show how many connections
are using the hotspot. Apart from this, the implementation
is pretty much complete.
Due to size allocation changes in GTK+, wrapping labels without
a minimal width now become very high. So we need to set a reasonable
width-chars value to ensure the label shows up.