Commit graph

46 commits

Author SHA1 Message Date
Richard Hughes
5e78f3185c color: Do not select the device in the treeview if it changes
This prevents the treeview 'flickering' when going from selected
device1->profile1 to device2->profile1.
2012-03-10 09:03:57 +00:00
Richard Hughes
2606d607b2 color: Ensure the profile system-wide button is visible
Resolves: https://bugzilla.gnome.org/show_bug.cgi?id=670513
2012-02-21 19:23:26 +00:00
Richard Hughes
8c3b0bb995 color: Do not set the profile default using a syncronous call
Doing this async means the UI doesn't block waiting for it to complete.
2012-02-08 11:52:59 +00:00
Richard Hughes
545d700142 color: Do not print '(null)' for virtual profiles
Virtual profiles (e.g. from the PPD for printers) don't have filenames, and so
fall back to the ID for debugging.

NOTE: this warning uncovered a bug in libcolord, which is fixed by commit
876d961665d01f8c37094fe85b0130850a008051 in the colord project.
2012-02-08 11:51:36 +00:00
Richard Hughes
8283232b44 color: Fix a critical warning in the new GtkTreeIter code 2011-10-21 16:01:37 +01:00
Bastien Nocera
ff59277c91 color: Don't return pointer to local variables
We were returning the address of a variable allocated on the stack
inside the function to outside.
2011-10-20 15:46:32 +01:00
Bastien Nocera
7f8b2153c8 color: Remove useless NULL check
It cannot be NULL when we get to that point.
2011-10-20 15:39:05 +01:00
Bastien Nocera
474abc5272 color: Use a switch statement
A little bit cleaner.
2011-10-20 15:30:14 +01:00
Bastien Nocera
0bc99bdda3 color: Fix warning about uninitialised variable 2011-10-20 15:26:51 +01:00
Matthias Clasen
85b0c9c92c Drop duplicate code
Static analyzers complain about this kind of thing.
2011-10-19 18:57:33 -04:00
Richard Hughes
00fb703054 color: After removing a profile select the device so the UI is correct
Resolves https://bugzilla.gnome.org/show_bug.cgi?id=661658
2011-10-13 17:03:51 +01:00
Richard Hughes
5f6b8f0da9 color: Show 'Uncalibrated' when a device has a test profile assigned 2011-10-13 16:40:29 +01:00
Richard Hughes
d25fe273d2 color: Don't show profile ages for EDID, test and colorspace profiles
Resolves: https://bugzilla.gnome.org/show_bug.cgi?id=661669
2011-10-13 16:28:19 +01:00
Richard Hughes
9e1fa3c900 color: Prefix all the test profiles in the 'Add profile' UI 2011-10-13 16:08:29 +01:00
Richard Hughes
c9647e530d color: Do not show standard colorspaces in the 'Add profile' UI
NOTE: You need colord >= 0.1.4 and shared-color-profiles >= 0.1.5 for this
to work.
2011-10-13 15:58:02 +01:00
Richard Hughes
f4ac4f1a0f color: Improve the 'Add profile' modal dialog
Remove the 'Only profiles that are compatible with...' lightbulb helper and
instead just set the dialog title to include the device class, e.g.
'Available Profiles for Printers'.

Resolves https://bugzilla.gnome.org/show_bug.cgi?id=661657
2011-10-13 14:07:16 +01:00
Richard Hughes
104aadaca9 color: Escape profile titles that have markup in the titles
This ensures we can show profiles with '<', '>' and '&' in the title.

Resolves https://bugzilla.gnome.org/show_bug.cgi?id=659127
2011-09-15 09:30:56 +01:00
Rodrigo Moya
e09892b905 color: Disable 'View details' button if gcm-viewer is not installed 2011-09-14 14:01:46 +02:00
Richard Hughes
240a13f110 color: Do not allow the user to set default a profile they cannot access 2011-09-14 11:12:43 +01:00
Richard Hughes
c49b22027c color: Do not allow the user to choose profiles owned by other users
If there are multiple users in a system, don't show profiles we can't access.
2011-09-14 11:12:43 +01:00
Matthias Clasen
6506fdd08a color: Fix spawning of gcm-viewer
argv arrays passed to g_spawn need to be NULL-terminated.
2011-09-13 23:56:55 -04:00
Richard Hughes
21c11833b5 color: Don't assert if the user double clicks the delete profile button 2011-09-11 15:10:00 +01:00
Richard Hughes
7dd043fa25 color: If cancelling profile import don't show the empty assign dialog
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=658180
2011-09-05 09:11:24 +01:00
Jiro Matsuzawa
fc8213694f Fixed Bug 658167. Provided the Import-button for an ICC profile with a mnemonic character.
Signed-off-by: Richard Hughes <richard@hughsie.com>
2011-09-04 18:52:49 +01:00
Richard Hughes
6ba681b2a7 color: Ensure the calibrate program gets run correctly
We were not NULL-terminating the argv we were about to spawn, which caused it to
fail with 'bad address' for some people.
2011-09-02 15:08:07 +01:00
Richard Hughes
18365c1c56 color: When setting the default profile for a display, use the correct device
Using current_device breaks when you have more than one monitor that is color
managed, and you select device #1 and then click on a different profile for
device #2.

In this case we want to change the default profile on device #2, not device #1.
2011-08-26 12:15:31 +01:00
Richard Hughes
a999160bf7 color: If we have only a few devices and profiles expand the treeview at startup 2011-08-26 11:16:20 +01:00
Richard Hughes
118aa6d1f0 color: Add a small italic indication when there are no color managed devices
This happens on most virtual machines as we can't actually correct a virtual
screen an there's not going to be many interesting USB devices plugged in.

Thanks again to the guys in #gnome-design for all the help.
2011-08-24 13:11:20 +01:00
Richard Hughes
df30d9ea06 color: If there are no profiles or devices then hide the toolbar 2011-08-24 12:35:43 +01:00
Richard Hughes
76a21bdb54 color: Do not attempt to delete the device if it's already added
This was always a workaround for a bug in colord, and we dep on a high enough
version now.
2011-08-24 12:33:23 +01:00
Richard Hughes
37eef8abac color: Remove color managed devices if they are deleted by another process
We need to store the device 'Path' not the device 'Id' in the model as we can't
connect to a device that's already been removed which we need to do when using
the ID.
2011-08-24 12:30:48 +01:00
Richard Hughes
08c71b017f color: Only allow the user to import custom profiles with colord >= 0.1.12
When I was adding the color panel, we ripped out the import code as it was all
pretty hacky and hardcoded, with the intention of doing it the right way in
colord rather than in each client.

At the moment if the user selects 'Import' then the panel does nothing as the
code that would actually make it work was missing.

I've now added the required client code in colord 0.1.12 which makes it possible
to actually import files not listed in the dropdown.

This makes it possible to install a display profile that's been downloaded into
the 'Downloads' directory by firefox.
2011-08-22 23:05:40 +01:00
Richard Hughes
e06ccd9c9e color: Fix a crash where out internal state gets screwed up
I'm just looking for the real bug now.
2011-08-22 23:05:39 +01:00
Richard Hughes
90b3fb1c2a color: Mark a user visible string as translatable 2011-06-25 09:36:15 +01:00
Richard Hughes
6dd4817d68 color: Allow advanced users to create virtual devices using the context menu 2011-06-21 16:15:49 +01:00
Richard Hughes
24b2d2534e color: Add a popup menu for advanced users that want to set the system default
A menu popup was the best thing we could find after discussing it on
If anybody has any better ideas then please shout / send patches.

To show the menu, press the context menu key on the keyboard.
2011-06-21 16:15:49 +01:00
Richard Hughes
5912f00273 color: Don't emit a critical warning if the panel starts with a colorimeter already plugged in 2011-06-02 16:39:09 +01:00
Richard Hughes
6c691dacf2 color: Actually sort the new profile box by name by setting the sort column 2011-06-01 18:24:08 +01:00
Richard Hughes
f4228e48ce color: Only attempt to get the main window after the widget has been realized
This fixes a critical warning when adding a profile.
2011-06-01 18:24:08 +01:00
Richard Hughes
a44d36f993 color: Connect to the profile before doing cd_profile_equal -- we use the ID not the path 2011-05-31 10:43:31 +01:00
Richard Hughes
203046ccfb color: Fix a critical warning when devices are removed
It's a treeview, not a listview...
2011-05-30 23:08:00 +01:00
Richard Hughes
e51b037b76 color: Adapt to new async colord API
The libcolord async API used to use a thread to get the properties for the
device and profiles in the background.

This was racy as hell, and was not good API design. Connect to each device and
profiles explicitly before we access the properties.
2011-05-30 22:07:14 +01:00
Richard Hughes
63c7019e95 color: fix up some minor indenting issues 2011-05-30 22:07:14 +01:00
Richard Hughes
e7863d0e02 color: Add the virtual device UI which is used when a physical device connection is impossible
This is designed so power users can create virtual devices (just like in
ColorSync) that represent things like 'Hexachrome Press #2' or 'Cinema'.

This new UI isn't actually wired up yet, and there are no new UI controls as
the UI still needs love from the designers.

This was added at this point for two reasons:

1. To get the translations early so we can enable this later
2. To be able to delete the code out of gcm-prefs.c
2011-05-20 20:40:15 +01:00
Richard Hughes
d75adefd96 color: Force the color treeview scrolled window to be at least 6 rows in height 2011-05-20 16:34:35 +01:00
Richard Hughes
2e7e54c3c2 Add a color panel based on the functionality available in gnome-color-manager
All the major functionality is present, but the virtual device stuff needs
further work with the designers before being included.
2011-05-20 15:59:00 +01:00