Commit graph

96 commits

Author SHA1 Message Date
Martin Nordholts
3c2f0809e3 app/tests: Increase GIMP_UI_WINDOW_POSITION_EPSILON
Increase GIMP_UI_WINDOW_POSITION_EPSILON, we had a nightly build that
failed with

  assertion failed ((int)abs (y_before_hide - y_after_show) <=
                    GIMP_UI_WINDOW_POSITION_EPSILON): (21 <= 10)

so appearently we need to be more liberal.
2010-09-12 18:37:00 +02:00
Martin Nordholts
fa6eb03fb2 app/tests: Add 'paintbrush_is_standard_tool' regression test
Add 'paintbrush_is_standard_tool' regression test to prevent bug
624177 from happening again.
2010-08-26 19:05:57 +02:00
Martin Nordholts
3a447213a9 app/tests: Add layer group regression testing for XCF write and read 2010-08-21 11:14:20 +02:00
Martin Nordholts
81925e424b app/tests: Prepare test-core.c for other tests 2010-06-29 19:08:59 +02:00
Martin Nordholts
dd059635d4 app/tests: Rename test-layers to test-core
Rename test-layers to test-core so we can put more tests there, like
color processing algorithm tests for example.
2010-06-29 18:08:34 +02:00
Martin Nordholts
706900c4f6 Bug 589010 - Don't make Alt-Clicked layers active
Add a "pre-clicked" signal to GimpCellRendererViewable that can
prevent a selection from happening. Move the Alt-Click code in
GimpLayerTreeView to this signal and if a layer is Alt-Clicked, don't
go ahead and make the layer active. Also add a test for this use case.
2010-06-27 21:46:53 +02:00
Martin Nordholts
66e2866a78 app/tests: Make "create_new_image_via_dialog" result more useful
Also add a layer in "create_new_image_via_dialog" so the created
image is more useful in following tests.
2010-06-27 13:37:41 +02:00
Martin Nordholts
d8f8acdff3 app/tests: Add convenience macro GIMP_PAUSE() 2010-06-27 13:30:06 +02:00
Martin Nordholts
1a9eb3e923 app/tests: Use gtk_test_init() 2010-06-27 11:08:42 +02:00
Martin Nordholts
8d0fe6fc4a app/tests: Output session management test result
Output session management test result to be consistent with GLib test
framework test output.
2010-06-27 10:47:30 +02:00
Martin Nordholts
bbfb4b13df app/tests: Add "gimp-single-image-window" entry to sessionrc
Add "gimp-single-image-window" entry to sessionrc. Makes the UI test
behave a bit more nicely.
2010-06-27 10:43:58 +02:00
Martin Nordholts
a5c0d74599 app/tests: Merge some tests
Remove two GIMP initializations by putting
"gimp-window-management/window_roles" into "gimp-ui" and removing
"gimp-layer-groups/add_layer" which we already have in
"gimp-layers". And we can have layer group tests there too.
2010-06-27 10:40:55 +02:00
Martin Nordholts
7670ae7e87 app/tests: Add alt_click_is_layer_to_selection
Add a regression test that makes sure its possible to Alt-Click on a
layer in the layers dockable to create a selection from it.

Change sessionrc to have only one page in the GimpDockbook to
avoid problems with gtk_test_find_widget().
2010-06-27 10:40:55 +02:00
Martin Nordholts
1c72e5e406 app/tests: Make gimp_ui_find_dock_window() more generic 2010-06-27 10:40:55 +02:00
Martin Nordholts
f6781d15c4 Bug 565459 - newly opened images are put into the background
When we are going to open new image windows, unset the transient
window. We don't need it since we will use gdk_window_raise() to
keep the dialog on top. And if we don't do it, then the dialog
will pull the image window it was invoked from on top of all the
new opened image windows, and we don't want that to happen.

Patch heavily inspiried by hack from Massimo Valentini.

Also add a manual test case for the fix. (I don't think there is GTK+
API to automate it).
2010-06-23 20:17:44 +02:00
Martin Nordholts
f0e90007f7 app/tests: Remove gimp_ui_synthesize_plus_key_event() crack
Make gimp_ui_synthesize_plus_key_event() generic and implement it with
gdk_test_simulate_key(). We can't use gtk_test_widget_send_key()
because its input window logic doesn't seem to work very well.
2010-06-21 21:19:15 +02:00
Martin Nordholts
df731fecda Make 'make distcheck' pass
Add missing CLEANFILES, make distcheck passes now.
2010-06-20 20:30:24 +02:00
Martin Nordholts
ce33255588 app/tests: Also add error margin to 'gimpsessioninfo-book.c'
Also add error margin to 'gimpsessioninfo-book.c' and update reference
files. This makes 'make distcheck' pass, and it passes more reliably.
2010-06-20 20:30:24 +02:00
Michael Natterer
ba3d530c9b tests: fix the directory variables in TESTS_ENVIRONMENT
Apparently, $(abs_top_srcdir) and $(abs_top_builddir) aren't set as
shell variables any longer. Instead, use @abs_top_srcdir@ and
@abs_top_builddir@ so they get substituted at configure time.
2010-06-20 12:25:32 +02:00
Martin Nordholts
49d951d49e app: Introduce error margin in sessionrc in test cases
Introduce a few pixels of error margin in sessionrc, otherwise the
tests are too fragile, widgets have a tendency to change size a bit
and window managers have a tendency to move windows a bit.

Still needs more work, should probably do the same on book positions
too...
2010-06-19 23:55:35 +02:00
Martin Nordholts
4e78fc7279 Also distribute dockrc-expected 2010-06-19 23:55:35 +02:00
Martin Nordholts
1e6055060c app/tests: Also simply test-xcf.c
Simply test-xcf.c too, forgot to do that.
2010-06-19 08:26:30 +02:00
Martin Nordholts
7e3898da09 app/tests: Add keyboard zoom focus regression test
Add keyboard zoom focus regression test. We also need a new display
shell utility function
gimp_display_shell_push_zoom_focus_pointer_pos() for that.
2010-06-18 20:57:59 +02:00
Martin Nordholts
3f6a3e749c app/tests: cleanup 2010-06-18 20:31:33 +02:00
Martin Nordholts
782ba9bcb9 app/tests: Make it easier to add tests
Minimize the effort to add a new test by removing prototypes for tests
and adding macros to register tests.
2010-06-14 18:53:38 +02:00
Martin Nordholts
6812d5bdce Bug 346881 - Remove redundant title of tab and move menu button up
Remove the dockable drag handle and move the menu button it hosts up
to the GimpDockbook, with the gtk_notebook_set_action_widget() API.

This frees up quite a lot of screen estate which can be used for the
content of dockables instead.
2010-06-12 01:24:39 +02:00
Martin Nordholts
9b86acd16b Add 'Automatic' Tab Style support
Add support for a new type of Tab Style called 'Automatic'. This tab
style makes the GimpDockbook use the biggest actual tab style it can
for its auto tab style dockables, based on its widget allocation.

The tab style candidates for auto tab style are "Status + Blurb",
"Status + Text" and "Status". A docked widget can also say that it
wants to use "Icon" instead of "Status" for its auto tab style. The
'Tool Options' dockable does this. This is to be as backwards
compatible with the old tab style setup, we make 'automatic' the
default everywhere.

We have quite a bit of dependency to internal layout code in
GtkNotebook, but the current code should be pixel perfect and rather
complete.

Also add a basic regression test.
2010-06-12 01:23:42 +02:00
Martin Nordholts
c67a8c7546 app/tests: Don't have toolbox in sessionrc in session-management test
Enable it again when we have a way to handle that the toolbox size is
likely to change due to the use of GDK_HINT_RESIZE_INC.
2010-05-29 15:46:38 +02:00
Martin Nordholts
d7dc2dc1ab app: Make tooltips in the toolbox work again
We need to be able to pass a GimpUIManager to
gimp_dialog_factory_dialog_new(), so make that possible. Also make
sure to set ui_manager in gimp_dialog_factory_dialog_new_internal()
when we create both a dock window and a dock, so tooltips works in
toolboxes created from scratch.
2010-05-16 12:19:18 +02:00
Martin Nordholts
7b8352bfa0 app/tests: Make test that closes dock window use multi-column variant
Make test that closes dock window use multi-column variant so it
catches a bunch of warnings that occurs when closing multi-column dock
windows.
2010-03-07 09:00:08 +01:00
Martin Nordholts
bdfbddd5e8 app/tests: Generalize gimp_ui_find_non_toolbox_dock_window()
Generalize gimp_ui_find_non_toolbox_dock_window() by renaming it to
gimp_ui_find_dock_window() and adding a parameter with a function that
will be used to find the toolbox.
2010-03-07 08:55:18 +01:00
Martin Nordholts
11b1300b6f app: Introduce gimp_dialog_factory_get_singleton()
Instead of including dialogs/dialogs.h everywhere, introduce
gimp_dialog_factory_get_singleton(). The dialog factory singleton is
still initialized by dialogs.c though.

Right now the assumption is that we never will have another dialog
factory instance around. There were so many problems before when we
had four of them, so let's just keep one of them around.
2010-02-28 23:23:24 +01:00
Martin Nordholts
82c52974e2 app/tests: Don't exit before test-xcf.c tests are run 2010-02-28 23:23:23 +01:00
Martin Nordholts
947e28596f app: Remove gimp_dialog_factory_from_name()
We only have one dialog factory now, and
gimp_dialog_factory_from_name() doesn't provide compile-time type
safety, so use global_dialog_factory directly instead.
2010-02-28 20:02:45 +01:00
Martin Nordholts
18f3be6bd3 Bug 602223 - Can't hide docks with Tab in single-window mode
Add a "hide-docks" config and connect the Windows->Hide docks menu
item to it. Also connect the image window to the config property so it
can hide/show its docks when it needs to.

Also add and use a utility function
gimp_image_window_keep_canvas_pos() to ensure that the image in the
window remains fixed when toggling visiblity of docks. One problem:
When GimpDrawTool is active on the canvas, there is flicker. The end
position is correct though.

Also add regression testing for this fix to test-ui.c
2010-02-24 19:53:48 +01:00
Martin Nordholts
82b2e2cff5 app/tests: Update test-ui.c, gimp_dialog_factories_toggle() is removed 2010-02-24 19:53:48 +01:00
Martin Nordholts
1e9048ded9 app: Turn gimp_dialog_factory_dock_with_window_new() into util func
Turn gimp_dialog_factory_dock_with_window_new() into a utility
function, it doesn't make sense to let it be part of the generic
GimpDialogFactory.
2010-02-20 16:55:59 +01:00
Martin Nordholts
ea6efc3885 app: Make Recently Used Docks work with GIMP 2.6 dockrc files
In GIMP 2.6 dockrc did not contain the factory entries for the session
infos, so set that up manually if needed. Also take the opportunity to
add a copyright notice to dialogs.c since tha file is almost rewritten
by now...
2010-02-20 13:05:16 +01:00
Martin Nordholts
dec798e0df app: Serialize factory entry name along with GimpSessionInfo
Serialize factory entry name along with GimpSessionInfo so we can make
the Recently Closed Docks feature work across sessions in a natural
way.
2010-02-20 13:05:16 +01:00
Martin Nordholts
1d120d9b02 app/tests: Improve test-session-management.c output
Don't bail out if sessionrc fails, report result for dockrc too. And
change system() to g_spawn_sync().
2010-02-20 13:05:16 +01:00
Martin Nordholts
c3619fb85c app: Merge "toplevel" and "display" factories
Merge "toplevel" and "display" factories so that we only have one
dialog factory. This allows us to get rid of a lot of special casing.
2010-02-20 10:58:29 +01:00
Martin Nordholts
8b458fb591 app: Merge "toplevel" and "dock" dialog factories
Merge "toplevel" and "dock" dialog factories. The end goal is to have
only one dialog factory.
2010-02-20 09:28:26 +01:00
Sven Neumann
3c63462e43 app: always use snprintf(), even in tests 2010-02-19 19:30:55 +01:00
Martin Nordholts
3545bafc41 app/tests: When session management test fails, use system() to say why 2010-02-18 21:49:34 +01:00
Martin Nordholts
b081d91370 app/tests: Add regression test for hide/show of dock windows
Add regression test for hide/show of dock windows that makes sure that
dock window positions are kept after a hide/show cycle. Also introduce
a helper function gimp_ui_find_non_toolbox_dock_window().
2010-02-18 07:25:07 +01:00
Martin Nordholts
33d66f5c7e app/tests: Add regression test for Recently Closed Docks
Add a simple regression test for Windows → Recently Closed Docks.
2010-02-13 20:10:40 +01:00
Martin Nordholts
5093109122 app: Fix gimp_ui_get_ui_manager() to allow arbitrary test exec order
Make gimp_ui_get_ui_manager() in test-ui.c handle when there is no
empty display so we can put the new-image test before the
single-window mode tests. We want the single-window mode tests lasts
because they are so flickery.
2010-02-13 20:10:40 +01:00
Martin Nordholts
1438b9b31c app/tests: Make sessionrc more realistic
GIMP 2.6 can't have a toolbox top-level with an empty dock, remove the
dock. This gives us a more realistic test.
2010-01-31 19:04:51 +01:00
Martin Nordholts
f77c400957 app/tests: Generalize gimp_test_utils_set_gimp2_directory()
Support both builddir and srcdir with
gimp_test_utils_set_gimp2_directory() so we can have gimpdir-output in
the build dir.
2010-01-30 08:07:24 +01:00
Martin Nordholts
97bbde6e5b app/tests: Distribute sessionrc-expected 2010-01-30 08:06:09 +01:00