Commit Graph

2486 Commits

Author SHA1 Message Date
Matthias Clasen
ac907cd8aa Add a testcase for box sizing 2014-02-16 23:24:13 -05:00
William Jon McCann
9b81131003 tests: fix volume button 2014-02-13 20:47:24 -05:00
William Jon McCann
70a2772afd tests: add a visibility toggle to the action bar test
https://bugzilla.gnome.org/show_bug.cgi?id=723929
2014-02-12 08:08:03 -05:00
Matthias Clasen
59099cd6e7 Add a test for model-based popovers
https://bugzilla.gnome.org/show_bug.cgi?id=723014
2014-02-07 15:11:51 -05:00
Matthias Clasen
be60724d08 Add a testcase for various dialog headerbar scenarios 2014-02-02 17:35:11 -05:00
William Jon McCann
b69ac965ea tests: fix button underline in testassistant
https://bugzilla.gnome.org/show_bug.cgi?id=723212
2014-01-29 20:56:21 -05:00
Matthias Clasen
3948a485a7 Remove deprecations and warnings from tests
This removes one instance of gtk_dialog_get_action_area.
2014-01-24 21:09:34 -05:00
Matthias Clasen
4caf302498 Remove deprecation warnings from demos and tests
There were a few uses of gtk_widget_get_root_window that
need to be removed.
2014-01-24 21:08:59 -05:00
William Jon McCann
00326d3362 Add an expand button box type
https://bugzilla.gnome.org/show_bug.cgi?id=720059
2014-01-17 17:52:07 -05:00
Andika Triwidada
0a768d274d Changed obsolete FSF portal addresses to web address
Fixed https://bugzilla.gnome.org/show_bug.cgi?id=721530
2014-01-12 19:56:49 +07:00
Alexander Larsson
59bf558995 testtextview: Add test for gtk_text_view_add_child_in_window
https://bugzilla.gnome.org/show_bug.cgi?id=711826
2014-01-10 12:08:51 +01:00
Matthias Clasen
0f9f3e8fa2 Make testsplitheaders more robust
Same empty string issue that I fixed in GtkHeaderBar a few days
ago.
2014-01-07 13:45:55 -05:00
Matthias Clasen
07f9b3ffa2 Add an action bar test
https://bugzilla.gnome.org/show_bug.cgi?id=721665
2014-01-07 08:46:37 -05:00
William Jon McCann
0a95515bfe tests: use actionbar in headerbar test
This is a great example of where headerbar should not be used.

https://bugzilla.gnome.org/show_bug.cgi?id=721665
2014-01-07 08:46:37 -05:00
Matthias Clasen
c93182c416 Make testtitlebar more versatile
Test adding multiple custom widgets at each end. This exposes
that we're doing it wrong - the pack-end widgets are ordered
in the wrong way.
2014-01-06 23:37:05 -05:00
Matthias Clasen
ae4d82dc0c Avoid compiler warnings 2014-01-06 20:35:29 -05:00
William Jon McCann
dae65b7c62 tests: add menu alignments to the menubutton test
https://bugzilla.gnome.org/show_bug.cgi?id=720939
2014-01-06 13:55:42 -05:00
William Jon McCann
b2dbcea3a2 tests: add some space to menubutton test
https://bugzilla.gnome.org/show_bug.cgi?id=720939
2014-01-06 13:55:42 -05:00
Matthias Clasen
d28ca4cdce Add an example for split headers
This shows how to deal with variability in window decorations
with split header bars.
2014-01-06 10:32:19 -05:00
Colin Walters
c45057c88a testbbox: Remove unused variable
This was the only compiler warning in Continuous for gtk3.
2014-01-04 17:52:22 -05:00
Clayton Walker
568e867dad gtk: remove unused GTK_BUTTONBOX_DEFAULT_STYLE from gtkenums.h tests: remove GTK_BUTTONBOX_DEFAULT_STYLE from testbbox.c and fix crashing
https://bugzilla.gnome.org/show_bug.cgi?id=721317
2014-01-04 13:56:42 -05:00
Matthias Clasen
7e1a4800fa Redo header bar decorations once more
Applications need a way to fix or adapt the decoration layout,
for situations like split header bars. Setting the layout from
the theme with a style property did not offer a good way to do
this, and the ::show-close-button property does not provide
fine-grained control.

To improve the situation, move the layout string to a property of
GtkHeaderBar which is backed by a setting. This allows platforms to
set a default button layout independent of the theme, while applications
can override the default.

The style GtkWindow style property is now deprecated and ignored.
2013-12-21 21:58:24 -05:00
Matthias Clasen
8ba7c7f64d testtitlebar: Add custom content
This will help in tracking down size allocation issues
in GtkHeaderBar.
2013-12-16 20:35:23 -05:00
Matthias Clasen
abe994f1d7 testtitlebar: Set a window icon
This reveals that GtkHeaderBar does not pick up window icons
correctly for it menu button, currently.
2013-12-13 01:02:36 -05:00
Matthias Clasen
a9eb813054 testtitlebar: Fix initial values
Make sure that the controls show the initial values fo the
headerbar properties, not the other way around.
2013-12-12 21:18:11 -05:00
Matthias Clasen
2f90781073 testtitlebar: more tests
Turn this into a GtkApplication with an app menu.
Allow to override the gtk-shell-shows-app-menu setting
and the decoration-button-layout style property.
2013-12-12 21:12:44 -05:00
Matthias Clasen
7ab7a262c1 Make testtitlebar more testy
Now that the nice titlebar example is in gtk3-demo, we can
use testtitlebar as an actual testbed for headerbar stuff.

This immediately reveals size allocation issues when titlebar
widgets change size.
2013-12-12 16:56:41 -05:00
Volker Sobek
d881edd33a testtitlebar: Fix -Wunused-variable warning
GtkWidget *title is no longer used.

https://bugzilla.gnome.org/show_bug.cgi?id=720296
2013-12-12 02:15:20 +01:00
Matthias Clasen
0191760bdc Use ::has-subtitle in testtitlebar
This also gets simplified.
2013-12-10 23:03:12 -05:00
Matthias Clasen
56719c6363 Don't use depeprecated api
GtkPrintUnixDialog and testtitlebar were still using
gtk_widget_set_margin_left/right. Switch them over to
gtk_widget_set_margin_start/end.
2013-12-01 16:55:57 -05:00
Benjamin Otte
8765269478 tests: Add max-width-chars to testwindowsize test 2013-11-25 03:56:21 +01:00
Martin Renold
faf43e2e42 tests: Make testinput example not compress events 2013-11-16 01:50:53 +01:00
Martin Renold
f8ba25877d testgtk: Don't use GDK_POINTER_MOTION_HINT_MASK anymore 2013-11-16 01:50:53 +01:00
Yosef Or Boczko
719dd636a9 Replace all margin-left and margin-right with margin-start and margin-end
https://bugzilla.gnome.org/show_bug.cgi?id=710238
2013-11-15 02:54:35 +01:00
Matthias Clasen
f911d17e56 Test duplicate shortcuts
Add an application shortcut for the Music folder in testfilechooser.
The file chooser used to filter duplicates out, but this broke
in the sidebar merge.
2013-11-09 19:00:17 -05:00
Matthias Clasen
e245fd8e68 Fix testtoolbar
The conversion from stock to icon names left some items without
a label, which in turn shows up as empty menuitems in the overflow
menu.
2013-11-09 13:23:47 -05:00
Benjamin Otte
74dc941c22 tests: Make testflowbox test not emit warnings 2013-11-04 16:36:11 +01:00
Matthias Clasen
05907afc1c Add various tests for stock widgets
This test demonstrates that various deprecated ways
to construct buttons and menuitems still work as they
are supposed to, including always-show-image functionality.
2013-10-07 18:19:16 -04:00
Matthias Clasen
943d575ec3 Add GtkFlowBox
GtkFlowBox is a container that its children in a reflowing
grid, which can be oriented horizontally or vertically.

It is similar to GtkListBox in that the children can
be sorted and filtered, and by requiring a dedicated child
widget type, GtkFlowBoxChild. It is similar to GtkTreeView
in that is supports a full set of selection modes, including
rubberband selection.

This is the culmination of work that has happened in the
egg-list-box module, and earlier in libegg. The origins of
this code are the EggSpreadTable in libegg, which was written
by Tristan van Berkom. It was moved to egg-list-box and
renamed EggFlowBox by Jon McCann, and I gave it some finishing
touched in the flowbox-improvements branch of that module.
2013-10-06 23:31:17 -04:00
Benjamin Otte
859805bda4 testgtk: Remove idle test
The test is broken, written like it's 1999 and testing a feature that
I'm about to deprecate.
2013-10-05 14:57:24 +02:00
Benjamin Otte
3d4277facb tests: Don't call gtk_style_context_invalidate()
It's not needed anymore.
2013-10-05 13:57:51 +02:00
Matthias Clasen
256da35c11 Test new transition types
We should make teststack pick up new transitions automatically.
For now, we have to add them manually.

https://bugzilla.gnome.org/show_bug.cgi?id=707187
2013-09-25 23:54:31 -04:00
Paolo Borelli
e59c28743a Add a needs-attention child property to GtkStack
The child property is watched by the StackSwicther which in turns sets a
needs-attention css class on the corresponding button, so that the theme
can for instance show a throbbing animation if one of the hidden pages
needs the user attention.

https://bugzilla.gnome.org/show_bug.cgi?id=707153
2013-09-25 22:34:22 -04:00
Alexander Larsson
ae24cbc11f testicontheme: Add some tests for scales 2013-09-23 12:45:34 +02:00
Matthias Clasen
61ebc98a41 Add a test for icons in menu models
testmenubutton now features an icon.
2013-09-08 22:37:50 -04:00
Matthias Clasen
e725b05f79 Add a testcase for custom levels in GtkLevelBar
This is related to https://bugzilla.gnome.org/show_bug.cgi?id=707695
2013-09-08 16:45:25 -04:00
Matthias Clasen
94d5a40264 Don't use deprecated GSimpleActionGroup api
Instead, use the corresponding GActionMap api.
2013-09-05 18:51:04 -04:00
Matthias Clasen
5929103d88 Don't call deprecated combobox api
gtk_combo_box_set_title is not needed anymore, since we
dropped the tearoff support.
2013-09-05 18:51:04 -04:00
Matthias Clasen
88293f89f0 Add a test for animated row insertion/removal
This is just a crude example for how to use revealers to
animate insertion and removal of rows in a listbox.
2013-08-26 23:07:05 -04:00
Matthias Clasen
eed2799bfb Add a way to test titlebars in dark theme 2013-08-26 23:07:04 -04:00
Matthias Clasen
b38a096aee GtkHeaderBar: optionally add a close button
Add a boolean property that controls whether a window close button
will be shown in the header bar or not. Doing this in the toolkit
will ensure consistency of the visual apperance.

https://bugzilla.gnome.org/show_bug.cgi?id=702971
2013-08-05 01:37:58 +02:00
William Jon McCann
810313763e tests: don't use tearoff menus in combobox 2013-07-18 12:16:02 -04:00
Matthias Clasen
8137b282e9 fix close button in testtitlebar as well
Same disease as with the previous fix.
2013-07-06 23:11:19 -04:00
Matthias Clasen
6aa1d69978 Fix a copy-paste error 2013-07-01 13:18:22 -04:00
William Jon McCann
a9e82cd46a Deprecate and ignore gtk-enable-tooltips setting
It is enabled by default except on touch input devices.
2013-06-30 14:28:02 -04:00
William Jon McCann
7ca327c9bb Deprecate the unused gtk-file-chooser-backend setting 2013-06-30 13:44:24 -04:00
William Jon McCann
3d5d3e8eae Fix a couple of deprecation warnings related to stock items 2013-06-30 13:14:18 -04:00
William Jon McCann
c96a1c4980 Deprecate GtkAction and GtkUIManager
It is recommended to use GAction et al and GtkBuilder.
2013-06-30 11:19:50 -04:00
William Jon McCann
f7f46b9155 Port print-editor test to GtkBuilder from UIManager 2013-06-30 11:19:50 -04:00
Matthias Clasen
cf006cbee3 Add a titlebar testcase
This is an experiment towards how we want client-side titlebars
to look.
2013-06-29 08:52:04 -04:00
Matthias Clasen
860197a7d2 testheaderbar: fix a mmemonic 2013-06-28 16:08:15 -04:00
William Jon McCann
b86588e9f5 Deprecate GtkImageMenuItem
Use GtkMenuItem for menus with only text or GMenu for those
with icons for "nouns" and just text for "verbs".
2013-06-27 18:48:46 -04:00
William Jon McCann
aef9dca9d5 Deprecate GtkIconFactory, GtkIconSet, GtkIconSource
We want to use GtkIconTheme instead. It is worth noting that
the parts that remain undeprecated are GtkIconSize and gtk_icon_size_lookup.
2013-06-26 20:02:27 -04:00
Benjamin Otte
427d4195a1 tests: Ignore deprecation warnings 2013-06-26 15:51:32 +02:00
William Jon McCann
6e22c4cfde Fix some regressions from stock migration 2013-06-25 12:39:19 -04:00
William Jon McCann
fc71cbe5a6 Remove most of the stock API usage from the tests
With the exception of GtkActions and the tests for stock items.
2013-06-24 19:53:08 -04:00
Federico Mena Quintero
8d47410426 filechooser: In testfilechooser, be strict about the --action option
It would default to GTK_FILE_CHOOSER_ACTION_OPEN if the user's specified --action could not be
parsed.  I can never remember what the right options are, so make the program bail out
if the user specifies an unrecognized option.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2013-06-21 10:41:39 -05:00
Federico Mena Quintero
8b1c918867 filechooser: In testfilechooser, add buttons to get the selection and the current name 2013-06-19 13:37:40 -05:00
Alexander Larsson
cae7d05f24 testlist: Test double click mode 2013-06-17 15:15:07 +02:00
Erick Pérez Castellanos
33a1c4d6e0 GtkStack: Add position-dependent slide transitions
These go left/right or up/down depending on the relative
order of the children being switched between.
2013-06-13 20:33:42 +02:00
Alexander Larsson
6d71f7f61b testgtk: Test GtkListBox placeholder widgets 2013-06-13 12:17:07 +02:00
Alexander Larsson
cc4ac1ee70 GtkListBox: Rename separators to headers 2013-06-13 12:17:07 +02:00
Alexander Larsson
043d445a03 testgtk: Add ListBox test
This is a simple test of a scrolling listbox with sorting, filtering
and a header row.
2013-06-13 12:17:06 +02:00
Alexander Larsson
3c90b2c42c tests: Add testlist testing GtkListBox 2013-06-13 12:17:06 +02:00
Benjamin Otte
1e8640f294 testgtk: Disable deprecations when using old functions 2013-05-30 20:01:33 +02:00
Matthias Clasen
530edd0d9b Add more tests to testheaderbar
Check that one can use widgets other than GtkHeaderBar as
titlebars.
2013-05-25 20:56:14 -04:00
Matthias Clasen
47b2248eb3 testwindowsize: show the actual window size 2013-05-25 13:12:56 -04:00
Matthias Clasen
526958cd53 Add an interactive window sizing test 2013-05-25 11:42:28 -04:00
Matthias Clasen
895a81c793 Drop test images
These were left behind when gdk-pixbuf was split off.
2013-05-22 23:02:31 -04:00
Benjamin Otte
172303f550 build: Move tests/reftests to testsuite/reftests 2013-05-15 15:37:17 +02:00
Benjamin Otte
edde840513 build: Move tests/css to testsuite/css 2013-05-15 15:37:17 +02:00
Benjamin Otte
2c8e719b5a build: Move tests/a11y to testsuite/a11y 2013-05-15 15:37:16 +02:00
Matthias Clasen
c4f0ff9d77 Install the other a11y tests as well 2013-05-14 23:51:37 -04:00
Matthias Clasen
53b3d068cb Install the accessibility-dump tests 2013-05-14 23:21:18 -04:00
Matthias Clasen
a631056808 Add a --directory option to accessibility-dump
This will be used to tell it where its test data resides
when running the a11y tests installed.
2013-05-14 23:21:18 -04:00
Matthias Clasen
af7771a3be Update expected test output for some a11y tests 2013-05-14 23:21:17 -04:00
Matthias Clasen
1b99a016a3 Add a test for dialog placement with csd
Taken from
https://bugzilla.gnome.org/show_bug.cgi?id=700056
2013-05-13 06:06:10 -04:00
Matthias Clasen
8fcfbc179c Test a few more titlebar things
Add tests for fullscreening and disposing with custom titlebar
to testheaderbar.
2013-05-12 21:01:59 -04:00
Colin Walters
a8da29b8db Add --enable-installed-tests, use it for reftests
See https://live.gnome.org/GnomeGoals/InstalledTests

https://bugzilla.gnome.org/show_bug.cgi?id=699601
2013-05-09 19:09:49 +02:00
Benjamin Otte
2c1d7cf074 reftests: Automatically recurse into directories 2013-05-09 19:09:49 +02:00
Colin Walters
f297549139 reftests: Add a --directory/-d option
This sets the directory we chdir() to, so we can use relative filenames
in ui files.

Some properties like to take filenames...
2013-05-09 19:09:49 +02:00
Colin Walters
9e57d388e3 reftests: Split out shell scripts from tests
They are just utilities to create tests, don't dump them in with the
tests.

This is in preparation for installed tests.
2013-05-09 19:09:49 +02:00
Colin Walters
dc216cf537 reftests: Use $(NULL) in the Makefile 2013-05-09 19:09:49 +02:00
Benjamin Otte
19fcd12177 reftests: Make window size not influence test
The test is supposed to definitely wrap, make sure it does.
2013-05-07 14:06:11 +02:00
Colin Walters
41bf557012 reftests: Don't use spaces in Makefile first line
Otherwise Emacs makes one's life miserable.
2013-05-03 11:08:51 -04:00
Benjamin Otte
7cecc8e524 a11y: Remove AtkSelection implementation from combobox
AtkSelection requires that the immediate children of the object are the
selectable items. The combobox however is implemented with just 1 child:
The popup menu.

The popup menu is implementing the selectable interface.

Test are updated to reflect this change.
2013-05-02 15:31:26 +02:00
Matthias Clasen
6c79fb72bd Revert "Temporarily remove window-border reftest"
This reverts commit cf6695088e.
2013-05-01 22:23:11 -04:00
Matthias Clasen
3c7fbe237d Remove window-border tests from makefile too 2013-05-01 21:43:19 -04:00
Matthias Clasen
286d3466a1 Revert "Temporarily remove button-wrapping reftest"
This reverts commit 851b631c4e.
2013-05-01 21:31:12 -04:00
Matthias Clasen
e9e4c8b168 Disable broken picker a11y test
The GtkComboBox accessible implementation is pretty broken,
and it shows through in this a11y test. Disable it for now.
2013-05-01 21:03:55 -04:00
Matthias Clasen
b84b933cac Update a few a11y test results 2013-05-01 19:07:10 -04:00
Matthias Clasen
51bbb76d35 Fix image-load-from-file reftest
Need to reset css here to avoid theme interference.
2013-05-01 19:07:10 -04:00
Matthias Clasen
3605e6c900 Temporarily remove grid-span reftest
This was testing grid size allocation changes that had to be
reverted because they broke gnumeric.
2013-05-01 19:07:10 -04:00
Matthias Clasen
cf6695088e Temporarily remove window-border reftest
It is broken by unfinished csd changes.
2013-05-01 19:07:10 -04:00
Matthias Clasen
851b631c4e Temporarily remove button-wrapping reftest
Its broken by unsettled GtkBin size allocation changes.
2013-05-01 19:07:10 -04:00
Benjamin Otte
2d35f7a8e1 tests: make deprecated functions not warn
We still want to test them though.
2013-05-01 17:50:14 +02:00
Benjamin Otte
8f06590712 tests: Add reftest for broken button sizing
https://bugzilla.gnome.org/show_bug.cgi?id=698433
2013-05-01 16:41:11 +02:00
Matthias Clasen
ef759ef19d Add a testcase for empty grid rows
This adds a testcase described in bug 698660 to testgrid.
2013-04-28 18:46:11 -04:00
Owen W. Taylor
a082f4d804 animated-resizing, video-timer: Add missing return value from ::draw
When we connect to GtkWidget::draw, the signal handler should have
a return value. This fixes overdrawing client-side decorations.
2013-04-25 13:44:58 -04:00
Owen W. Taylor
8c68050af8 tests/scrolling-performance: Add a new test for GtkViewport performance
Add a test that takes four copies of the widget-factory widgets and
scrolls them around to test how smoothly we can scroll and draw.
2013-04-23 14:04:40 -04:00
Owen W. Taylor
b7063509f8 tests/animated-resizing: Split frame statistics out into a separate file
Split the code for computing frame rate and latency into a separate file
so we can use it from multiple tests.
2013-04-23 14:04:40 -04:00
Alexander Larsson
2b4c9983da Add tests/testbaseline 2013-04-23 05:58:07 +02:00
Matthias Clasen
d7f43c30a3 GtkRevealer: Add a fading animation
Using a container for this is not necessarily the most
elegant solution, but it lets us reuse the animation
machinery in GtkRevealer.
2013-04-22 12:42:38 -04:00
Matthias Clasen
0bd173e3d8 Forgotten file 2013-04-22 12:42:37 -04:00
Matthias Clasen
443459b52e Add GtkRevealer
This is a widget that can hide or show (ie reveal) its child
in an animated fashion.

This widget was initially developed in libgd.
2013-04-22 12:42:37 -04:00
Matthias Clasen
c37b30f317 GtkStack: add vertical slide transitions
We allow transitions that slide up or down.
2013-04-21 21:51:26 -04:00
Matthias Clasen
e72a78c4e6 Add a way to specify transition types on the fly
Add a gtk_stack_set_visible_child_full that takes a
transition type.
2013-04-21 21:51:25 -04:00
Matthias Clasen
2e39c4bab8 Add GtkStack
Add separate GtkStack and GtkStackSwitcher widgets that are an
alternative to GtkNotebook. Additionally, GtkStack supports
animated transitions when changing pages.
These widgets were initially developed in libgd.
2013-04-21 21:51:24 -04:00
Benjamin Otte
8687fbc15e reftests: Add a test for window default size
https://bugzilla.gnome.org/show_bug.cgi?id=697275
2013-04-06 10:47:55 +02:00
Benjamin Otte
70a0d1a32d tests: Remove multiscreen code from teststusicon 2013-04-06 10:47:55 +02:00
Benjamin Otte
4b75077ccd tests: Remove testmultiscreen example
There aren't multiple screens anymore, so no need to test that.

Multiple displays can be tested with gtk-demo and testgtk.
2013-04-06 10:47:55 +02:00
Benjamin Otte
06bd9200cd testgtk: Get rid of screen part in display & screen test 2013-04-06 10:47:55 +02:00
Thomas Hindoe Paaboel Andersen
4e1c9f16a0 reftests/Makefile.am: remove whitespace following trailing backslash 2013-04-05 23:10:32 +02:00
Benjamin Otte
d80dedf46e testsensitive: Remove deprecated part 2013-04-02 11:45:44 +02:00
Benjamin Otte
0a82b79012 reftests: Add a reftest for color resolving errors
This checks the fixes in the last two commits.
2013-03-28 23:18:59 +01:00
Kristian Rietveld
6f607fc8b4 quartz: move atom/pasteboard type conversions functions to GDK
(cherry picked from commit a269c2f8d2)
2013-03-28 13:10:38 +01:00
Matthias Clasen
7069f6a251 Pimp up testheaderbar some more 2013-03-26 20:46:30 -04:00
Matthias Clasen
7c8c242e7e Expand testgrid to cover row/column removal 2013-03-23 15:43:38 -04:00
Matthias Clasen
33d409d9fd Add an example for subtitles in header bars 2013-03-19 22:08:13 -04:00
Matthias Clasen
2648ba45c6 test custom titles more thoroughly
This adds a way to toggle between custom and non-custom titles
in testheaderbar, which is currently broken.
2013-03-19 20:51:43 -04:00
Matthias Clasen
55969a8a0c Use gtk_window_set_titlebar in testheaderbar
This demonstrates how custom titlebars work both with
and without csd.
2013-03-18 08:50:22 -04:00
Matthias Clasen
4fd67b8c62 Add a headerbar test
Add a testcase for GtkHeaderBar that shows how it can be used
without client-side decorations.
2013-03-18 01:03:39 -04:00
Matthias Clasen
cfc0118f6f Replace GLE reference
Recommending gtkparasite is more useful nowadays.
2013-03-17 19:01:25 -04:00
Matthias Clasen
e43956141b Add another grid sizing reftest
This test exercises spanning children such that there are
rows which contain only spanning cells.
2013-03-15 23:38:22 -04:00
Benjamin Otte
2ba15221c0 reftests: Add reftest for separator fixes
Reftest for 61c4425161be3146c0c753a766f35442549bfe72.

Includes a workaround for a grid bug which should be removed once
GtkGrid is fixed.
2013-03-15 18:18:40 +01:00
Matthias Clasen
7dd2539e1b Add a missing runtime check
The cursor theme and size settting code was ifdefed to only
be compiled with the X11 backend, but it didn't check for
running under X at runtime. Fix that.
http://bugzilla.gnome.org/695495
2013-03-13 06:04:58 -04:00
Benjamin Otte
b7aa15f505 reftests: Add animation loading test
XPM files weren't loaded properly.

https://bugzilla.gnome.org/show_bug.cgi?id=695228
2013-03-13 02:06:29 +01:00
Benjamin Otte
609723b3c1 tests: Add a test for loading images from file
Strictly, this belongs in gdk-pixbuf, but GtkImage should have this
working, too.

https://bugzilla.gnome.org/show_bug.cgi?id=694148
2013-02-19 14:33:39 +01:00
Owen W. Taylor
1db87c897f Add gdk_frame_clock_begin/end_updating()
Add an API to start or stop continually updating the frame clock.
This is a slight convenience for applcations and avoids the problem
of getting one more frame run after an animation stops, but the
primary motivation for this is because it looks like we might have
to use timeBeginPeriod()/timeEndPeriod() on Windows to get reasonably
accurate timing, and for that we'll need to know if there is an
animation running.

https://bugzilla.gnome.org/show_bug.cgi?id=693934
2013-02-18 17:14:24 +01:00
Jasper St. Pierre
367364a8e1 Fix deprecations for GtkIconInfo 2013-02-15 19:48:56 -05:00
Owen W. Taylor
7bb07317f3 GtkTickCallback: document use of G_SOURCE_CONTINUE/REMOVE for return value
Document that G_SOURCE_CONTINUE and G_SOURCE_REMOVE are the preferred
return values from a tick callback.
2013-02-14 17:19:53 -05:00
Owen W. Taylor
63a36aa434 Merge with Merge GdkFrameHistory into GdkFrameClock 2013-02-14 17:19:53 -05:00
Owen W. Taylor
bb11195ec0 GdkFrameClock: Clean up the public API
* remove gdk_frame_clock_get_frame_time_val(); a convenience
  function that would rarely be used.
* remove gdk_frame_clock_get_requested() and
  ::frame-requested signal; while we might want to eventually
   be able to track the requested phases for a clock, we don't
  have a current use case.
* Make gdk_frame_clock_freeze/thaw() private: they are only
  used within GTK+ and have complex semantics.
* Remove gdk_frame_clock_get_last_complete(). Another convenience
  function that I don't have a current use case for.
* Rename:
  gdk_frame_clock_get_start() => gdk_frame_clock_get_history_start()
  gdk_frame_clocK_get_current_frame_timings() => gdk_frame_clock_get_timings()
2013-02-14 17:19:52 -05:00
Owen W. Taylor
515e5f74aa Merge GdkFrameHistory into GdkFrameClock
Now that GdkFrameClock is a  class, not interface, there's no real advantage
to splitting the frame history into an aggregate object, so directly
merge it into GdkFrameClock.
2013-02-14 17:19:52 -05:00
Owen W. Taylor
449e8c8856 Add gtk_widget_add_tick_callback(), remove GtkTimeline, etc.
Add a very simple GtkWidget function for an "tick" callback, which
is connected to the ::update signal of GdkFrameClock.

Remove:

 - GtkTimeline. The consensus is that it is too complex.
 - GdkPaintClockTarget. In the rare cases where tick callbacks
    aren't sufficient, it's possible to track the
    paint clock with ::realize/::unrealize/::hierarchy-changed.

GtkTimeline is kept using ::update directly to allow using a GtkTimeline
with a paint clock but no widget.
2013-02-14 17:19:52 -05:00
Owen W. Taylor
40fa28de3d video-timer: add simple example of PLL-style clock adjustment
The first version of the video-timer simply played back the video
according to the wall clock, and showed each frame at the neareste
presentatin time. But an alternative strategy for playing back
video is that if the frame-rate is an integer-divisor of the
display refresh rate, or very close to that, is to change the playback
speed to complete avoid frame drops and changes in latency.
(This would require resampling audio if present.)

Demonstrate this technique by adding a --pll option to the
video-timer demo.

https://bugzilla.gnome.org/show_bug.cgi?id=685460
2013-02-14 17:19:51 -05:00
Owen W. Taylor
e77a96a0ea video-timer: add a test case for display at a constant frame rate
Add a test case that simulates the timing operaton that goes on
when showing a constant frame rate stream like a video - each
frame is shown at the VBlank interval that is closest to when it
would ideally be timed.

https://bugzilla.gnome.org/show_bug.cgi?id=685460
2013-02-14 17:19:51 -05:00
Owen W. Taylor
9690567d50 animated-resizing: enhance output
Show the average and standard deviation of the latency in addition to
the frame rate. Add options to print the output in machine-readable form,
and to control the frequency and total number of statistics that will be
output.

https://bugzilla.gnome.org/show_bug.cgi?id=685460
2013-02-14 17:19:51 -05:00
Owen W. Taylor
574301d34d animated-resizing: make circle size a #define
Clean up the code with a #define for circle size. This also allows
determining we're throttled by number-of-requests or number-of-pixels.

https://bugzilla.gnome.org/show_bug.cgi?id=685460
2013-02-14 17:19:50 -05:00
Owen W. Taylor
a69285da08 Compress motion synchronized with the paint cycle
When we have pending motion events, instead of delivering them
directly, request the new FLUSH_EVENTS phase of the frame clock.
This allows us to compress repeated motion events sent to the
same window.

In the FLUSH_EVENTS phase, which occur at priority GDK_PRIORITY_EVENTS + 1,
we deliver any pending motion events then turn off event delivery
until the end of the next frame. Turning off event delivery means
that we'll reliably paint the compressed motion events even if more
have arrived.

Add a motion-compression test case which demonstrates behavior when
an application takes too long handle motion events. It is unusable
without this patch but behaves fine with the patch.

https://bugzilla.gnome.org/show_bug.cgi?id=685460
2013-02-14 17:19:49 -05:00