Commit graph

4884 commits

Author SHA1 Message Date
Mohammed Sadiq
d5110977da printers: Check if printer name is NULL
This was causing a segfault when the user clicks the cancel button
on add new printer dialog (in case when no printers are listed, and no
printers are added).

output from sanitizer:

==22669==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x7fe1c7a4d409 bp 0x7ffd179f6410 sp 0x7ffd179f6410 T0)
    #0 0x7fe1c7a4d408 in g_str_hash /home/sadiq/jhbuild/checkout/glib/glib/ghash.c:1882
    #1 0x7fe1c7a4c814 in g_hash_table_lookup_node /home/sadiq/jhbuild/checkout/glib/glib/ghash.c:379
    #2 0x7fe1c7a4c814 in g_hash_table_lookup /home/sadiq/jhbuild/checkout/glib/glib/ghash.c:1153
    #3 0x55cef023a121 in new_printer_dialog_response_cb /home/sadiq/jhbuild/checkout/gnome-control-center/panels/printers/cc-printers-panel.c:914

https://bugzilla.gnome.org/show_bug.cgi?id=783406
2017-06-23 13:32:42 +02:00
Bastien Nocera
11c81f1809 network: Simplify the ignored Network interface types
We might want to add more ignored types later on, but this is a simple
cleanup.

https://bugzilla.gnome.org/show_bug.cgi?id=783998
2017-06-21 13:24:38 +02:00
Bastien Nocera
b7c4b30f63 network: Fix runtime warning
Create 2 veth interfaces without any names with, as root:
ip link add veth0 type veth peer name veth1
ip link set dev veth0 up
ip link set dev veth1 up

And run:
(gnome-control-center:28176): GLib-CRITICAL **: g_utf8_collate: assertion 'str1 != NULL' failed
(gnome-control-center:28176): GLib-CRITICAL **: g_utf8_collate: assertion 'str2 != NULL' failed

https://bugzilla.gnome.org/show_bug.cgi?id=783996
2017-06-21 13:24:38 +02:00
Rui Matos
f32b305a1a search: Fix a GFile leak
https://bugzilla.gnome.org/show_bug.cgi?id=783885
2017-06-19 11:31:06 +02:00
Mohammed Sadiq
38ac1d1d76 search: Fix memory leak
The container returned by g_variant_get_strv() should be
freed with g_free().

https://bugzilla.gnome.org/show_bug.cgi?id=783885
2017-06-19 11:23:42 +02:00
Rui Matos
ca667d9928 network: Avoid crashing if the NMDevice doesn't have a hw-address
The property might not exist and we would g_free() an uninitialized
pointer. Using the proper API avoids all that.

https://bugzilla.gnome.org/show_bug.cgi?id=783839
2017-06-16 19:39:39 +02:00
Felipe Borges
0d0b42eb50 printers: Hide supply level bar when there is no inklevel data
https://bugzilla.gnome.org/show_bug.cgi?id=779702
2017-06-15 15:39:22 +02:00
Georges Basile Stavracas Neto
8f78b27299 network: Use radio buttons instead of a combobox in IP pages
Per the latest mockups [1], the IP pages use a set of four radio
buttons to control the method, rather than a switch + a combobox,
which is what the current implementation uses.

This patch, then, adapts the IP pages of the connection editor
dialog to use a set of radio buttons at the top of the page.

[1] https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/system-settings/network/aday2/network-wires.png

https://bugzilla.gnome.org/show_bug.cgi?id=779841
2017-06-14 16:41:10 -03:00
Georges Basile Stavracas Neto
18a42a00b8 network: Move Security page to the end
Per the mockups at [1], the Security page is the last
visible page.

This patch also adds a small code refactoring to avoid
multiple string comparisons.

[1] https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/system-settings/network/aday2/network-wires.png

https://bugzilla.gnome.org/show_bug.cgi?id=779841
2017-06-14 16:41:10 -03:00
Georges Basile Stavracas Neto
3458566f7c network: Adapt forget button label according to connection type
Per the mockup [1], the Forget button has different labels depending
on the connection type. For example, when editing a VPN connection,
the Forget button reads "Remove VPN", while when editing a Wi-Fi
connection reads "Forget Connection".

This patch adapts the forget button label according to the connection
type.

[1] https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/system-settings/network/aday2/network-wires.png

https://bugzilla.gnome.org/show_bug.cgi?id=779841
2017-06-14 16:41:10 -03:00
Georges Basile Stavracas Neto
8137036675 network: Drop Reset page
Following the latest mockups [1], the "Forget" button
is now available in the Details page, and the Reset page
is gone.

This patch then removes the Reset page, and moves the
functionality to the Details page.

[1] https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/system-settings/network/aday2/network-wires.png

https://bugzilla.gnome.org/show_bug.cgi?id=779841
2017-06-14 16:41:10 -03:00
Georges Basile Stavracas Neto
ce289c3824 network: Move checkboxes to Details page
In the advanced connection editor dialog, currently, the
options to share a connection with all users and to connect
automatically are inside the Identity page.

The redesigned connection editor, however, features these
options in the Details page as per the mockup [1].

Fix this by moving these options to the Details page.

[1] https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/system-settings/network/aday2/network-wires.png

https://bugzilla.gnome.org/show_bug.cgi?id=779841
2017-06-14 16:40:50 -03:00
Georges Basile Stavracas Neto
10d4eea176 network: Align details page labels at start
Instead of keeping the labels centralized, align them at
the start of the dialog, as the mockup [1] proposes.

[1] https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/system-settings/network/aday2/network-wires.png

https://bugzilla.gnome.org/show_bug.cgi?id=779841
2017-06-14 16:35:50 -03:00
Felipe Borges
ee42831fcd printers: Add print "Test Page" button to Options Dialog
https://bugzilla.gnome.org/show_bug.cgi?id=779708
2017-06-14 10:45:25 +02:00
Felipe Borges
995d64292d printers: Introduce pp_printer_print_file_async
An asynchronous wrapper to print files.

https://bugzilla.gnome.org/show_bug.cgi?id=779708
2017-06-14 10:45:25 +02:00
Georges Basile Stavracas Neto
6da5f2ff58 network: Reduce connection editor dialog width
The current default width is 600px, which is a bit too much
and leaves a lot of blank space.

Fix that by reducing the default width to 500px.

https://bugzilla.gnome.org/show_bug.cgi?id=779841
2017-06-13 10:40:03 -03:00
Georges Basile Stavracas Neto
b62ed2f87b network: Rely on notebook tabs to switch connection editor pages
Instead of using a sidebar, which is what the current implementation
uses to switch pages, the latest mockups [1] rely on the notebook
tabs.

This patch then updates the connection editor dialog to use the
notebook tabs as the page switcher widget.

[1] https://github.com/gnome-design-team/gnome-mockups/blob/master/system-settings/network/aday2/network-wires.png

https://bugzilla.gnome.org/show_bug.cgi?id=779841
2017-06-13 10:40:03 -03:00
Alan Coopersmith
f090d7e3a0 tz.c: compiler warning: implicit declaration of function ‘islower’
https://bugzilla.gnome.org/show_bug.cgi?id=783641

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2017-06-12 16:54:35 +02:00
Mohammed Sadiq
bab859a44e info: Trivial, fix indentation
https://bugzilla.gnome.org/show_bug.cgi?id=779216
2017-06-10 09:24:10 -03:00
Mohammed Sadiq
0e01c7d1a4 info: Derive subpanels from CcPanel
This is required for adding these subpanels as panels
for the new g-c-c shell design.

https://bugzilla.gnome.org/show_bug.cgi?id=779216
2017-06-10 09:20:27 -03:00
Mohammed Sadiq
f82af13dd7 removable-media: Avoid use of GtkAlignment
GtkAlignment has been deprecated since Gtk 3.14.
So Let's replace it with properties like "valign", "halign",
"margin", and so on.

https://bugzilla.gnome.org/show_bug.cgi?id=779216
2017-06-10 08:40:20 -03:00
Mohammed Sadiq
572f9fe8c3 info-overview: Simplify UI code
Increasing width of a column makes column in each row to have the same
width. So it is unnecessary to set 3rd column of each row separately to
have the same width. Let's do it just once.

https://bugzilla.gnome.org/show_bug.cgi?id=779216
2017-06-10 08:35:46 -03:00
Mohammed Sadiq
4a06cff5c1 removable-media: Replace GtkTable with GtkGrid
https://bugzilla.gnome.org/show_bug.cgi?id=779216
2017-06-09 12:18:53 -03:00
Mohammed Sadiq
695887c7a0 info-overview: replace GtkTable with GtkGrid
GtkTable has been deprecated. So let it be replaced with
GtkGrid.

https://bugzilla.gnome.org/show_bug.cgi?id=779216
2017-06-09 12:18:52 -03:00
Mohammed Sadiq
d6db504945 info: Remove dead ui code
https://bugzilla.gnome.org/show_bug.cgi?id=779216
2017-06-09 11:22:33 -03:00
Silvère Latchurié
5508226405 background: handle EXIF orientation in chooser
The chooser ignores EXIF orientations embedded in the pictures when the
thumbnails are generated.

Because the EXIF informations are available after the file has been
loaded, it has to be reloaded if the transformed dimensions don't
match the thumbnails constraints.

The transformations are directly applied for EXIF orientations 1, 2,
3 and 4. For EXIF orientations 5, 6, 7 and 8, the pictures are reloaded
with swapped dimensions before the transformations are applied.

https://bugzilla.gnome.org/show_bug.cgi?id=783200
2017-06-07 18:24:26 +02:00
Bastien Nocera
99acb323d2 background: Add more information to run-time warning
It was impossible to know which background XML had an error with the
original message.
2017-06-07 18:24:26 +02:00
Bastien Nocera
60ad6a35b4 wacom: Fix compile-time warning
expected ‘GtkWidget * {aka struct _GtkWidget *}’ but argument is of type ‘CcWacomNavButton * {aka struct _CcWacomNavButton *}’
2017-06-07 18:17:33 +02:00
Mohammed Sadiq
8713eac981 details: Split removable media as a separate panel
As part of the preparation to split all these pages as
separate panels in the future.

https://bugzilla.gnome.org/show_bug.cgi?id=779216
2017-06-04 10:39:16 -03:00
Debarshi Ray
ebdaa85ba4 online-accounts: Increase the spacing above the "Remove Account" button
https://bugzilla.gnome.org/show_bug.cgi?id=779368
2017-05-31 16:38:16 +02:00
Rui Matos
4bb33fd878 region: Avoid starting with a gap at the bottom of the input chooser
We can simply let the natural size request determine the dialog's
height.

https://bugzilla.gnome.org/show_bug.cgi?id=783058
2017-05-30 18:31:00 +02:00
Rui Matos
c99f6b58aa region: Don't return the input chooser dialog if nothing is selected
In some cases we end up getting an input source row activated without
it being selected. This seems like a GtkListBox bug but we can easily
avoid it.

https://bugzilla.gnome.org/show_bug.cgi?id=783058
2017-05-30 18:31:00 +02:00
Rui Matos
6e4b4e944a region: Make the input source chooser back button activate on click
We lost this behavior with commit
3b14056a01 to fix keyboard navigation
but we can add it back by handling button events ourselves.

https://bugzilla.gnome.org/show_bug.cgi?id=783058
2017-05-30 18:31:00 +02:00
Georges Basile Stavracas Neto
e63accbf82 online-accounts: Move the margins and spacing lower down the hierarchy
The expired credentials GtkButton is going to be replaced with a
GtkInfoBar touching the top, start and end edges of the GtkDialog.
Therefore, the margins around the account details and GtkSwitches
cannot be set on the higher level GtkBoxes. Instead, they need to be
set lower down the hierarchy closer to the actual widgets that need
them.

Bump required GOA version for the new goa_provider_show_account
behaviour.

https://bugzilla.gnome.org/show_bug.cgi?id=779368
2017-05-30 17:06:44 +02:00
Felipe Borges
00a45b3d70 printers: Use headerbar in PpOptionsDialog
https://bugzilla.gnome.org/show_bug.cgi?id=779708
2017-05-29 19:29:28 +02:00
Felipe Borges
ca2d97f76a printers: Drop PpOptionsDialog action_area
There's no need for the dialog action_area since we are moving
towards a header bar dialog.

https://bugzilla.gnome.org/show_bug.cgi?id=779708
2017-05-29 19:29:28 +02:00
Michael Catanzaro
50160be2c6 printers: Move options dialog spinner out of the action area
For an infinitesimal amount of time after opening the options dialog, a
spinner is displayed at the start of the action area while the dialog
loads asynchronously. Display the spinner in the center of the dialog
instead, using a GtkStack to switch between spinner mode and normal
mode. Test by removing the calls to printer_get_ppd_async(),
get_named_dest_async(), and get_ipp_attributes_async() from the bottom
of populate_options().

Why? (1) It looks better this way. (2) Need to stop using the action
area in order to switch to a header bar.

https://bugzilla.gnome.org/show_bug.cgi?id=755713

https://bugzilla.gnome.org/show_bug.cgi?id=779708
2017-05-29 19:25:51 +02:00
Felipe Borges
6dcf057a53 printers: Scroll view to show newly added Printer
In scenarios with a long list of printers, it might be difficult
to find a newly added printer.

This patch make the view scroll to the allocated position of the
printer entry.

https://bugzilla.gnome.org/show_bug.cgi?id=779506
2017-05-29 17:49:11 +02:00
Felipe Borges
f3141e430b printers: Drop "select_new_printer" property leftover
The select_new_printer property used to be an indicator whether
the view should change to present the newly added printer.

With the Printers presented as a list in the new design, there's
no need for this flag.

https://bugzilla.gnome.org/show_bug.cgi?id=779506
2017-05-29 17:34:55 +02:00
Mohammed Sadiq
84ccb364c5 info: Remove unused struct members
These struct members has been moved to overview panel and is
no longer used here.

https://bugzilla.gnome.org/show_bug.cgi?id=779216
2017-05-27 12:07:30 -03:00
Piotr Drąg
21d697cbe5 printers: Use Unicode quotation marks in a translatable string
See https://developer.gnome.org/hig/stable/typography.html

https://bugzilla.gnome.org/show_bug.cgi?id=772199
2017-05-26 16:10:47 +02:00
Felipe Borges
e5624f90bf printers: Add 10s timeout for printer removal
Dismisses the Printer removal notification after 10 seconds,
removing the printer permanently.

The 10 seconds value is taken from the online-accounts panel.

https://bugzilla.gnome.org/show_bug.cgi?id=693187
2017-05-26 13:16:39 +02:00
Felipe Borges
f065f5005f printers: Allow undoing deletion of a printer
Instead of directly applying the deletion of a printer, we should
follow the GNOME in-app notification deletion guidelines.

This patch introduces the in-app notification following the HIG[0]
for the deletion of a printer. It allows to "undo" the deletion.

The default behavior for these notification is to dismiss a previous
notification. In doing so, when deleting multiple printers, the
"Undo" button only restores the last deleted one. We don't do batch/
bulk removal in the printers panel.

[0] https://developer.gnome.org/hig/stable/in-app-notifications.html.en

https://bugzilla.gnome.org/show_bug.cgi?id=693187
2017-05-26 13:16:39 +02:00
Felipe Borges
5aca01cd65 printers: Remove printers asynchronously
Introduce pp_printer_delete_async ()

https://bugzilla.gnome.org/show_bug.cgi?id=693187
2017-05-26 13:16:36 +02:00
Changwoo Ryu
fb2989dca4 region: Use locale aware date time formats for previewing
%x for date, %X for time, %c for date&time.

https://bugzilla.gnome.org/show_bug.cgi?id=687923
2017-05-25 12:12:10 +02:00
Mohammed Sadiq
1154658cd9 details: Split default apps as a separate panel
https://bugzilla.gnome.org/show_bug.cgi?id=779216
2017-05-24 10:56:13 -03:00
Georges Basile Stavracas Neto
4ac4f4a04e network: Make the history dialog use a headerbar
In order to start moving towards the new redesigned Network
panel [1], it is necessary to make the dialogs use a headerbar.

Currently, however, they don't, making the dialog sinconsistent
with the rest of the panels, and the GNOME desktop as a whole.

Fix that by setting the headerbar to the History dialog, and
adjusting the elements so hat they match the "Known Wi-Fi Networks"
dialog in the mockup [1].

[1] https://github.com/gnome-design-team/gnome-mockups/blob/master/system-settings/network/aday2/network-wires.png

https://bugzilla.gnome.org/show_bug.cgi?id=779841
2017-05-22 12:40:13 -03:00
Jonathan Kang
9cc065bb04 network: Update the hotspot dialog
Update the hotspot dialog according to the new redesigned Network
panel[1].

[1] https://github.com/gnome-design-team/gnome-mockups/blob/master/system-settings/network/aday2/network-wires.png

https://bugzilla.gnome.org/show_bug.cgi?id=779841
2017-05-22 12:28:32 -03:00
Georges Basile Stavracas Neto
fe2a21e696 network: Make connection editor dialog use a headerbar
In order to start moving towards the new redesigned connection
editor [1], it is necessary to make the dialog use a headerbar.

Currently, however, it doesn't, making the connection editor
dialog inconsistent with the rest of the panels, and the GNOME
desktop as a whole.

Fix that by exporting the buttons as action buttons, and setting
the use-header-bar property to TRUE.

[1] https://github.com/gnome-design-team/gnome-mockups/blob/master/system-settings/network/aday2/network-wires.png

https://bugzilla.gnome.org/show_bug.cgi?id=779841
2017-05-21 10:41:43 -03:00
Mohammed Sadiq
7bebbc0099 info: Remove unused code
The GraphicsData structure wasn't being used
in CcInfoPanel's code, and can be safely dropped.

https://bugzilla.gnome.org/show_bug.cgi?id=779216
2017-05-21 10:15:34 -03:00