Matthias Clasen
9f43a46b80
Adwaita: Include sources in dist
...
These things are necessary to work on the Adwaita theme,
so include them in the tarball.
2014-06-13 13:08:29 -04:00
Matthias Clasen
2c62803015
Adwaita: Drop no-longer exising resources
...
These css files were optimized away a few commits ago.
2014-06-13 12:57:19 -04:00
Matthias Clasen
290e61a9c0
Adwaita: Drop obvious comments
2014-06-13 12:47:41 -04:00
Matthias Clasen
e2aa229f1a
Adwaita: Drop app-specific css
2014-06-13 12:47:16 -04:00
Matthias Clasen
45cb7fc1e9
Forgotten files
2014-06-13 12:46:29 -04:00
Matthias Clasen
f2eeea69e0
Adwaita: Simplify css
...
Since this is now builtin, we don't need the extra redirection
anymore.
2014-06-13 12:23:40 -04:00
Matthias Clasen
fb8b8de721
Adwaita: Drop unused assets
...
These were imported from gnome-themes-standard, but are not
referenced from the css.
2014-06-13 11:22:05 -04:00
Matthias Clasen
a81d871e81
Use Adwaita as the default theme
...
This ensures that GTK+ applications have a high-quality theme on
all platforms, and look consistent.
2014-06-13 10:39:45 -04:00
Matthias Clasen
4389845bb8
Include the Adwaita theme
...
This adds the resources for the Adwaita theme, and includes them
in libgtk, on all platforms.
2014-06-13 10:32:44 -04:00
Matthias Clasen
4c95dbb05b
Don't include the win32 theme on Linux
...
No need to carry around these resources when we are not
going to use them.
2014-06-13 10:30:36 -04:00
Matthias Clasen
f1cf10fe86
Generate gtk.gresource.xml
...
This will help when including Adwaita. It will also let us
drop the win32 theme on Linux, hopefully.
2014-06-13 10:24:30 -04:00
Matthias Clasen
6fc65d5b0f
Rename cursor pngs to their resource name
...
This allows us to get rid of some aliases in the .gresource.xml.
2014-06-13 09:28:27 -04:00
Matthias Clasen
6de3741f18
Move theme resources into subdirectories
...
Preparing for Adwaita to come in here.
2014-06-13 08:40:56 -04:00
Matthias Clasen
2e5cda99f8
inspector: Allow Escape to cancel picking
2014-06-13 06:10:23 -04:00
Matthias Clasen
404149b2bf
inspector: Use a better icon for the picker
...
Recommended by Allan Day.
2014-06-13 06:10:23 -04:00
Matthias Clasen
c1270a19c3
Trivial formatting fix
2014-06-13 06:10:23 -04:00
Carlos Garnacho
6d8842ca96
gesturesingle: Implement GtkGesture::cancel better than GtkEventController:reset
...
The former can be called individually on each sequence, and the latter will
always call the former on all currently active sequences, so only implementing
resetting on cancel() works for both cases. Also, chain up on subclasses
implementing cancel.
This fixes clicking on nautilus' file list after popping up a menu, as broken
grabs are one of those situations where sequences get cancelled individually,
the "current button" wasn't properly reset, and further clicks with button != 3
were ignored.
2014-06-13 01:27:31 +02:00
Carlos Garnacho
05810f80a4
textview: Unobscure the mouse cursor on motion events
...
This used to be done before the gestures port, and was removed
accidentally, so keep the motion_notify_event handler just for
this, and fallback to having those events handled by gestures
too.
2014-06-12 23:23:43 +02:00
Dieter Verfaillie
daa8b48a33
Fix gtk_selection_data_get_data annotations
...
The annotations were intended for the return
value, not the instance argument.
https://bugzilla.gnome.org/show_bug.cgi?id=731299
2014-06-12 21:01:01 +02:00
Dieter Verfaillie
0c5b5fc053
docs: remove mention of old GtkList and GtkCList
...
Reported by andlabs in irc://irc.gnome.org/gtk+
https://bugzilla.gnome.org/show_bug.cgi?id=731382
2014-06-12 20:46:21 +02:00
Daniel Mustieles
e3af863bcb
Updated Spanish translation
2014-06-12 17:53:57 +02:00
Matthias Clasen
9bc07a2634
Add a message-dialog style class
...
This helps in separating message dialogs from other dialogs,
theming-wise.
2014-06-12 09:22:36 -04:00
Matthias Clasen
e97cf2fd0b
Add GTK_STYLE_CLASS_POPUP to the docs
2014-06-12 09:22:06 -04:00
Carlos Garnacho
3b636cbeb9
scrolledwindow: Deny scrolling sequences if pressed on the scrollbars
...
Scrollbars might be a bit too narrow for touch (and generally less useful
besides kinetic scrolling), but those should be functional nevertheless.
2014-06-12 15:17:47 +02:00
Carlos Garnacho
3ef1b387bc
window: Only claim a button=1 press sequence when dragging is about to happen
...
This way plain clicks can be handled in gtkmain through the usual delivery mechanism,
and get possibly handled too by widgets holding a GTK+ grab. If window dragging is to
be started, the sequence will be claimed (and a grab will happen afterwards), notifying
properly the grabbing widget that event delivery was interrupted.
This makes it possible to dismiss popovers by clicking on window headerbars, while
still making it possible to drag the window with the popover opened.
2014-06-12 14:27:35 +02:00
Sjoerd Simons
5b118a9fd7
wayland: Ensure the touch sequence pointer value is non-null
...
Weston numbers its touch sequences ids starting from 0, thus simply
setting the GtkEvents touch.sequence to the touch id value typically
causes gdk_event_get_event_sequence to return NULL. Unfortunately this
confuses other parts of GDK.
As both weston & mutter keep the sequence id between 0..max_dev_touches
-1 simply use + 1 to keep the id > 0. While this isn't entirely correct
(compositor could send -1 as the touch id), this keeps the touch id in
gtk tied to the touch id from weston which is useful for debugging. A
more thorough solution could be done when it turns out this is an issue
in practise
https://bugzilla.gnome.org/show_bug.cgi?id=731371
2014-06-12 12:35:23 +02:00
Benjamin Otte
45a64cd7d4
testsuite: Add a test for symbolic icons in specific sizes
...
Check that loading symbolics works, even if the symbolic is only
available in a fixed size.
2014-06-12 12:34:09 +02:00
Matthias Clasen
5ef4d71b15
widget-factory: Add some tooltips
2014-06-12 05:53:31 -04:00
Dieter Verfaillie
072e215ff3
docs: fix link to language bindings page
...
Reported on irc://irc.gnome.org/gtk+ by Rena.
https://bugzilla.gnome.org/show_bug.cgi?id=731377
2014-06-11 23:03:00 -04:00
Matthias Clasen
5334fb8921
Drop GDK_MULTIHEAD_SAFE
...
We don't support multiple screens anymore, so there is no need
for marking API as multihead safe any longer.
2014-06-11 21:55:15 -04:00
Matthias Clasen
41fd2ae898
Deprecate outside-border style properties
...
These should just be replaced by CSS margins, etc.
2014-06-11 19:38:22 -04:00
Matthias Clasen
48db936b70
GtkButton: Don't use a non-zero border by default
...
The non-zero default default-border was causing buttons to shrink as
the focus moves around them. Themes which want a default-border should
define it explicitly.
2014-06-11 19:06:36 -04:00
Carlos Garnacho
3e65655424
treeview: Check that :row-activated is only emitted on GDK_BUTTON_PRIMARY
...
It turned out not all code was fully prepared to handle multiple buttons,
this avoids respawning https://bugzilla.gnome.org/show_bug.cgi?id=731020 .
2014-06-11 23:18:34 +02:00
Carlos Garnacho
f321d3a50a
treeview: Make row area multipress gesture react to all buttons
...
The code is actually prepared for that, the gesture was initially limited
to only handling GDK_BUTTON_PRIMARY because it only used to handle row
activation.
2014-06-11 23:01:31 +02:00
Carlos Garnacho
e114717097
treeview: Remove unused variables from priv struct
...
These variables were last used before moving row activation to being
managed by a gesture.
2014-06-11 17:36:04 +02:00
Carlos Garnacho
89f38b5fc6
treeview: Move all button press/release management to the multipress gesture
...
The multipress gesture on the bin window now also does all the business related
to row selection. As row selection and activation can't be easily decoupled, this
fixes certain problems around ::row-activated being emitted on NULL paths.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=731455 and
https://bugzilla.gnome.org/show_bug.cgi?id=731018
2014-06-11 17:36:04 +02:00
Carlos Garnacho
3f084e3ab5
treeview: Use drag gesture for rubberband selection/DnD
...
This gesture acts only on events from the bin window, and checks that
either the pressed row is draggable, or the conditions for rubberband
selection apply.
2014-06-11 17:36:03 +02:00
Carlos Garnacho
50491f15ae
treeview: Use gestures for column dragging/resizing
...
A multipress gesture takes care of autosizing on double click, and
a drag gesture is used for both column dragging/resizing (only one
can happen at a time).
2014-06-11 17:36:03 +02:00
Carlos Garnacho
b8886436b3
treeviewcolumn: Avoid a device position query
...
This happens in an event handler, and the button event should be
expected to have the right coordinates on the event window already.
2014-06-11 17:36:03 +02:00
Carlos Garnacho
20a59985fe
gesturesingle: Ensure the current button stays set until after the touch/button release
...
This makes gtk_gesture_get_current_button() work properly on GtkGesture::end, and signals
spawn from there on subclasses.
2014-06-11 17:36:03 +02:00
Matthias Clasen
e7b3d8b414
GtkPaned: Make sure the raise the handle window above children
...
We need to show child windows and handle in the right order,
otherwise the input-only handle window ends up under the children
where it is useless.
2014-06-11 09:33:30 -04:00
Matthias Clasen
77cb6d8b4a
GtkTooltip: Ignore shadow when finding widgets
...
When placing tooltips, the csd shadow will get 'pushed up' and
may end up underneath the pointer. We don't want this to cause
the tooltip to be hidden, because that leads to flickering, so
ignore the shadow when finding the widget under the pointer.
2014-06-11 00:04:04 -04:00
Matthias Clasen
2d05bf1492
csd: Fix non-resizable windows
...
For csd override-redirect windows, we don't set up resize handles,
but we were not ignoring the margin in all places, causing some
size calculations to go wrong.
2014-06-11 00:04:04 -04:00
Matthias Clasen
a4b0d35649
Don't mention no longer existing widgets in the docs
...
GtkText, GtkList and GtkCList don't exist anymore.
2014-06-11 00:04:04 -04:00
Benjamin Otte
200bdf1aec
stylecontext: Get rid of StyleData struct
...
It's now just a GtkCssComputedValues + refcount. And
GtkCssComputedValues has its own refcount, so use that one instead.
2014-06-11 01:18:05 +02:00
Benjamin Otte
57c4f01e0d
stylecontext: Move property cache
...
... from per style data to only existing once per style context. This is
technically an API break because it no longer allows getting different
style properties between save()/restore() pairs, but I don't think this
was ever intended to work that way, as the style property API was to be
used and is used via gtk_widget_get_style().
And it simplifies code a lot.
2014-06-11 01:18:05 +02:00
Benjamin Otte
6f2eb1d627
docs: Remove unused variable
2014-06-11 01:18:04 +02:00
Benjamin Otte
6affe29c9a
testsuite: Add missing errors file
...
The file was forgotten in 98954bd1d1 and
caused test failure. Oops.
2014-06-11 01:18:04 +02:00
Benjamin Otte
4a6957f50d
stylecontext: Remove state from _peek_style_property()
...
It evaluates to "current state" in all cases, so no need to special case
it.
2014-06-11 01:18:04 +02:00
Matthias Clasen
e51e8a28dd
gtk3-demo: Use monospace font for source code
2014-06-10 18:47:49 -04:00
Robert Ancell
b95a6c7c62
GdkDisplay: Remove unused GdkKeyboardGrabInfo struct
...
I can't find anything that uses this struct and it seems to be replaced by GdkDeviceGrabInfo
2014-06-11 08:30:04 +12:00
Benjamin Otte
d1dd33d885
css: Fix uninitializaed variable
2014-06-10 15:58:17 +02:00
Matthias Clasen
b0c6263f6c
inspector: Add combobox popups to the tree
2014-06-10 08:54:12 -04:00
Matthias Clasen
ec9cf6d7c3
GtkComboBox: Add private api to get the popup
...
This will be used to make the popup appear in the inspector.
2014-06-10 08:54:12 -04:00
Matthias Clasen
634972e063
inspector: Add submenus to the tree
2014-06-10 08:54:12 -04:00
Benjamin Otte
c906aa7e08
menuitem: Use .arrow style class for submenu indicators
...
As requested by the Adwaita guys.
2014-06-10 13:47:51 +02:00
Benjamin Otte
b21c86f49a
treeview: Remove unused variable
2014-06-10 13:47:51 +02:00
Benjamin Otte
cdd341ed7d
viewport: Remove unused variable
2014-06-10 13:47:51 +02:00
Benjamin Otte
8ea013290b
cellrenderertoggle: Remove copy/paste leftovers
...
Introduced in 2d88a3ae30
2014-06-10 13:47:51 +02:00
Matthias Clasen
b355493d12
docs: Add GtkActionBar to the type list
...
Without this, we don't get object hierarchy, among other things.
2014-06-09 21:41:43 -04:00
Matthias Clasen
5b5cf89a63
Add GtkActionBar and GtkSearchBar to visual index
...
These were missing.
2014-06-09 21:41:43 -04:00
Benjamin Otte
4b793dd508
a11y: Remove an outdated comment
2014-06-10 01:17:00 +02:00
Benjamin Otte
98954bd1d1
testsuite: Add a test for recent fix
2014-06-10 01:07:57 +02:00
Benjamin Otte
3759190c26
css: Parse text-shadow values properly
...
We used to accept the same syntax for text-shadow and icon-shadow as
we accept for box-shadow. However, box-shadow does accept a spread and
the inset keyword while the others should not.
2014-06-10 01:07:57 +02:00
Joanmarie Diggs
fc00381d30
GtkEntryAccessible: Emit signal after insertion
...
The signal needs to be emitted after the text insertion as at-spi gets
the text to compute the inserted text due to the AtkText::insert-text
signal not containing it.
Also adjust position to reflect changes to the offsets.
https://bugzilla.gnome.org/show_bug.cgi?id=731429
2014-06-10 01:07:57 +02:00
Matthias Clasen
fbc6a0c400
Add some theming for csd popups
...
Not attempt to make this look good, just to demonstrate
that themes can in fact do it.
https://bugzilla.gnome.org/show_bug.cgi?id=731187
2014-06-09 14:16:12 -04:00
Matthias Clasen
a39985a43e
Request csd for tooltips
...
Use the new private GtkWindow api to request
client-side decorations for tooltips.
https://bugzilla.gnome.org/show_bug.cgi?id=731187
2014-06-09 14:15:28 -04:00
Matthias Clasen
179d6a4c7b
GtkTooltip: take csd shadows into account for placement
...
When placing tooltips, we don't want the shadow to influence
our choice.
https://bugzilla.gnome.org/show_bug.cgi?id=731187
2014-06-09 14:15:28 -04:00
Matthias Clasen
49bb39ecf5
GtkTooltip: remove hardcoded tooltip drawing
...
This is old code from dating back many years. Nowadays, we can
just use css drawing and csd windows to achieve much the same
effect.
Themes will need some adjustment for this change.
https://bugzilla.gnome.org/show_bug.cgi?id=731187
2014-06-09 14:15:27 -04:00
Matthias Clasen
dae252e3d2
Request csd for menus
...
Use the new private GtkWindow api to request
client-side decorations for menus.
https://bugzilla.gnome.org/show_bug.cgi?id=731187
2014-06-09 14:15:24 -04:00
Matthias Clasen
3cf916be8a
GtkMenu: Add a separate style class to the toplevel of menus
...
This is necessary in order to use .window-frame.csd.popup for
styling csd menus.
https://bugzilla.gnome.org/show_bug.cgi?id=731187
2014-06-09 14:14:48 -04:00
Matthias Clasen
e9ed210b0b
GtkMenu: take csd shadows into account for placement
...
When placing menus, we don't want the shadow to influence
our choice.
https://bugzilla.gnome.org/show_bug.cgi?id=731187
2014-06-09 14:01:42 -04:00
Matthias Clasen
bde4e86357
Allow csd for override-redirect windows
...
This commit makes it possible to use client-side decorations for
override-redirect windows by calling _gtk_window_request_csd()
before realizing the window. Since the wm won't do interactive
resizing for us in this case anyway, don't bother creating
the border windows we use for this purpose on regular toplevels.
To make this accessible to themes, we set a "csd" style class
on client-side decorated windows. With this, .window-frame.csd.menu
can be used to define the shadow for csd menus, and .menu can be
used to define a border for menus under non-composited wms.
https://bugzilla.gnome.org/show_bug.cgi?id=731187
2014-06-09 14:01:42 -04:00
Matthias Clasen
60cd7076cf
Add a csd style class
...
This will be used for client-side decorated windows.
https://bugzilla.gnome.org/show_bug.cgi?id=731187
2014-06-09 14:01:42 -04:00
Matthias Clasen
b22b2298be
GtkViewport: Don't do silly things in a setter
...
Just queue a resize instead of fiddling with the size allocation.
2014-06-09 13:51:58 -04:00
Matthias Clasen
ee8a3a4192
Mark GtkStyleContext::direction as deprecated
...
The setter was deprecated a while ago, do the same for the property.
2014-06-09 13:42:07 -04:00
Matthias Clasen
ac2329b842
Mark GtkContainer::resize-mode as deprecated
...
The setter was deprecated a while ago, do the same for the property.
2014-06-09 13:39:38 -04:00
Matthias Clasen
f870a50f1f
Add a test for property notification
...
This tests just a few basic things for now. Mainly, that we don't
emit redundant notifications for enum, flags, int and boolean
properties. It also checks that we do emit the expected notifications
when the value actually changes. This is checked for string, double
and float properties as well.
There is a large number of exceptions in the test, and a lot more
checks that could be done. One class of exceptions is all the places
where we have -set booleans to go along with another property. We
should have a dedicated test for these pairs. Another class of
exceptions is where naked objects created by g_object_new () just
don't have the full functionality - e.g. a tree selection without
a tree view does not work very well. We set up the instance object
better for these situations.
2014-06-09 13:31:14 -04:00
Matthias Clasen
46803aae11
GtkVolumeButton: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:14 -04:00
Matthias Clasen
bcd804613f
GtkViewport: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:14 -04:00
Matthias Clasen
785e4d376e
GtkTreeViewColumn: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:13 -04:00
Matthias Clasen
fe31f87bf0
GtkTreeView: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:13 -04:00
Matthias Clasen
d169f409b0
GtkTreeSelection: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:13 -04:00
Matthias Clasen
71ac4d626e
GtkToolPalette: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:13 -04:00
Matthias Clasen
cf6274c979
GtkToolItemGroup: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:13 -04:00
Matthias Clasen
40c3804ecd
GtkToolbar: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:12 -04:00
Matthias Clasen
6e64bc13de
GtkTextView: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:12 -04:00
Matthias Clasen
eed1ae682b
GtkSwitch: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:12 -04:00
Matthias Clasen
17059f9c17
GtkToolItem: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:12 -04:00
Matthias Clasen
3074fcf31d
GtkToolButton: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:11 -04:00
Matthias Clasen
db8101c998
GtkToggleToolButton: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:11 -04:00
Matthias Clasen
b73e810613
GtkStyleContext: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:11 -04:00
Matthias Clasen
1208539eff
GtkStatusIcon: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:10 -04:00
Matthias Clasen
9321b30b0b
GtkSpinner: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:10 -04:00
Matthias Clasen
d03752cdcc
GtkSpinButton: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:10 -04:00
Matthias Clasen
83669856b2
GtkSizeGroup: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:09 -04:00
Matthias Clasen
4867e95291
GtkSeparatorToolItem: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:09 -04:00
Matthias Clasen
710a5b3a90
GtkSearchBar: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:09 -04:00
Matthias Clasen
115faae371
GtkSearchBar: Handle lack of an entry
...
We were not dealing with the possibility of priv->entry being
NULL in all places.
2014-06-09 13:31:09 -04:00
Matthias Clasen
0dd1102cc4
GtkSeparator: Explicitly notify orientation
2014-06-09 13:31:08 -04:00
Matthias Clasen
ed6f9c1ee9
GtkScrolledWindow: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:08 -04:00
Matthias Clasen
570194640e
GtkScrollable: Use G_PARAM_EXPLICIT_NOTIFY
...
Implementors will have to be adjusted.
2014-06-09 13:31:08 -04:00
Matthias Clasen
0505a189d3
GtkScaleButton: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:08 -04:00
Matthias Clasen
1740663584
GtkScale: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:07 -04:00
Matthias Clasen
f80ff85745
GtkRecentChooserMenu: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:07 -04:00
Matthias Clasen
e6f413c6a7
GtkRange: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:07 -04:00
Matthias Clasen
f446ffdd5d
GtkProgressbar: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:07 -04:00
Matthias Clasen
e1d1ed863e
GtkPrintOperation: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:07 -04:00
Matthias Clasen
8915e9cf42
GtkPopover: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:06 -04:00
Matthias Clasen
22cc9749c9
GtkPaned: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:06 -04:00
Matthias Clasen
c93355616f
GtkNotebook: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:06 -04:00
Matthias Clasen
47615f32bf
GtkMessageDialog: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:06 -04:00
Matthias Clasen
c1540464b7
GtkMenuShell: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:06 -04:00
Matthias Clasen
cfbfeb1b3c
GtkMenuButton: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:06 -04:00
Matthias Clasen
0d528ab391
GtkMenuBar: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:05 -04:00
Matthias Clasen
60fbb2bb89
GtkMenu: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:05 -04:00
Matthias Clasen
3f3f26d8a1
GtkLinkButton: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:05 -04:00
Matthias Clasen
45c84a63a3
GtkLevelBar: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:05 -04:00
Matthias Clasen
46828a41b0
GtkLayout: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:05 -04:00
Matthias Clasen
6ac00a7ff7
GtkInfoBar: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:04 -04:00
Matthias Clasen
726d603f61
GtkIMContext: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:04 -04:00
Matthias Clasen
720561475d
GtkIconView: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:04 -04:00
Matthias Clasen
68673963fc
GtkImage: Use G_PARAM_EXPLICIT_NOTIFY
...
And make use of the new icon helper API to avoid
redundant notification.
2014-06-09 13:31:04 -04:00
Matthias Clasen
7e40d74b0b
GtkIconHelper: Change setters to return success
...
This makes it easier to avoid redundant notifications in users.
2014-06-09 13:31:04 -04:00
Matthias Clasen
d1f6858b36
GtkHeaderBar: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:04 -04:00
Matthias Clasen
efc2166c25
GtkGrid: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:03 -04:00
Matthias Clasen
f195322254
GtkGestureSingle: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:03 -04:00
Matthias Clasen
11224f521d
GtkGesturePan: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:03 -04:00
Matthias Clasen
372223ac94
GtkRecentChooserDefault: Adapt to explicit notify
2014-06-09 13:31:03 -04:00
Matthias Clasen
f6e5f88454
GtkRecentChooser: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:03 -04:00
Matthias Clasen
92e30dadc2
GdkOffscreenWindow: Fill in a few more vfuncs
...
Mostly to avoid special cases in testcases.
2014-06-09 13:31:03 -04:00
Matthias Clasen
110f859899
GtkEventController: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:02 -04:00
Matthias Clasen
eebb73032a
GtkFontButton: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:02 -04:00
Matthias Clasen
2a7bed6858
GtkFontButton Trivial cleanup
...
Replace GTK_PARAM_READABLE|GTK_PARAM_WRITABLE by GTK_PARAM_READWRITE.
2014-06-09 13:31:02 -04:00
Matthias Clasen
eb34ff5b48
GtkFontButton: Fix the handling of show-preview-button
...
We were not storing the value at all, and not notifying.
2014-06-09 13:31:02 -04:00
Matthias Clasen
595a44680a
GtkFontChooser: Use G_PARAM_EXPLICIT_NOTIFY for show-preview-entry
...
Implementors will have to be adjusted.
2014-06-09 13:31:01 -04:00
Matthias Clasen
6877253e14
GtkFlowBox: Explicitly notify orientation
2014-06-09 13:31:01 -04:00
Matthias Clasen
43ba93971c
GtkExpander: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:01 -04:00
Matthias Clasen
544b5b0fe6
GtkEventBox: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:01 -04:00
Matthias Clasen
e3dc90dc9b
GtkToggleButton: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:01 -04:00
Matthias Clasen
bce70ca75e
GtkMenuItem: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:00 -04:00
Matthias Clasen
3ae562aca2
GtkFrame: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:31:00 -04:00
Matthias Clasen
331c28b369
GtkEntryCompletion: Use G_PARAM_EXPLICIT_NOTIFY
...
Also, use the setter for text-column, internally.
2014-06-09 13:31:00 -04:00
Matthias Clasen
07af47ce3e
GtkEntryBuffer: Use G_PARAM_EXPLICIT_NOTIFY
...
Also avoid redundant notification for max-length.
2014-06-09 13:31:00 -04:00
Matthias Clasen
ec6056a574
GtkEntry: Explicitly notify for populate-all
2014-06-09 13:30:59 -04:00
Matthias Clasen
056acf92ec
GtkEntry: Don't forget to notify for the tooltip markup props
2014-06-09 13:30:59 -04:00
Matthias Clasen
c411de437a
GtkColorChooserWidget: Explicitly notify for use-alpha
2014-06-09 13:30:59 -04:00
Matthias Clasen
a215a4c762
GtkColorChooserDialog: Explicitly notify for use-alpha
2014-06-09 13:30:59 -04:00
Matthias Clasen
d5a119ae9b
GtkColorChooser: Use G_PARAM_EXPLICIT_NOTIFY for use-alpha
...
Implementors will need to adjust.
2014-06-09 13:30:58 -04:00
Matthias Clasen
b28123dd3c
GtkColorButton: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:58 -04:00
Matthias Clasen
2f82250cc1
GtkCheckMenuItem: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:58 -04:00
Matthias Clasen
bfc1a2118f
GtkCellView: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:58 -04:00
Matthias Clasen
d33b14bfbe
GtkCellView: Explicitly notify for orientation
2014-06-09 13:30:57 -04:00
Matthias Clasen
2d88a3ae30
GtkCellRendererToggle: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:57 -04:00
Matthias Clasen
c96f5b953a
GtkCellRendererText: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:57 -04:00
Matthias Clasen
ce76a47d68
GtkCellRendererSpin: Use G_PARAM_EXPLICIT_NOTIFY
...
Also avoid redundant notification for ::digits.
2014-06-09 13:30:56 -04:00
Matthias Clasen
31654f4515
GtkCellRendererProgress: Use G_PARAM_EXPLICIT_NOTIFY
...
Also add explicit notification and avoid redundant notification
for some properties.
2014-06-09 13:30:56 -04:00
Matthias Clasen
af4d142df5
GtkCellRendererCombo: Use G_PARAM_EXPLICIT_NOTIFY
...
And add explicit notification for some properties.
2014-06-09 13:30:56 -04:00
Matthias Clasen
da4a1e1594
GtkCellRenderer: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:56 -04:00
Matthias Clasen
be25e4ebcb
GtkCellAreaBox: Explicitly notify orientation
2014-06-09 13:30:56 -04:00
Matthias Clasen
510c2cdfb6
GtkWindow: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:55 -04:00
Matthias Clasen
05cabd3557
GtkWindow: Trivial cleanup
2014-06-09 13:30:55 -04:00
Matthias Clasen
8677446fe0
GtkLabel: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:55 -04:00
Matthias Clasen
1720eb4713
GtkComboBox: Notify for has-frame and editing-canceled
2014-06-09 13:30:55 -04:00
Matthias Clasen
9722ae0458
GtkCellEditable: Use G_PARAM_EXPLICIT_NOTIFY
...
This is an interface property, so all implementors will have
to adjust to this.
2014-06-09 13:30:55 -04:00
Matthias Clasen
5ce3d8e74f
GtkAppChooserButton: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:54 -04:00
Matthias Clasen
d6cae074a6
GtkContainer: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:54 -04:00
Matthias Clasen
acad03f77b
GtkWidget: Use G_PARAM_EXPLICIT_NOTIFY
...
A few properties here are special, and can't benefit from it:
those which are just shorthands, like ::margin and ::expand,
and those that have explicit -set properties, like::hexpand
and ::vexpand.
2014-06-09 13:30:54 -04:00
Matthias Clasen
2e04899ee5
GtkOrientable use G_PARAM_EXPLICIT_NOTIFY
...
This one is a little tricky, since we override this property
in many places, and you cannot add flags when overriding. So,
all places where this is overridden will have to make sure to
notify explicitly.
2014-06-09 13:30:54 -04:00
Matthias Clasen
126942f04c
GtkEntry: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:54 -04:00
Matthias Clasen
1139b21997
GtkCellRendererText: Use G_PARAM_EXPLICIT_NOTIFY for 'alignment'
2014-06-09 13:30:54 -04:00
Matthias Clasen
8b1757b6e0
GtkCellAreaBox: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:54 -04:00
Matthias Clasen
d5c56ea780
GtkCalendar: Use G_PARAM_EXPLICIT_NOTIFY
...
And make sure we correctly notify for all properties.
2014-06-09 13:30:53 -04:00
Matthias Clasen
c5c3c335a6
GtkAspectFrame: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:53 -04:00
Matthias Clasen
b9e7d1e8a6
GtkApplicationWindow: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:53 -04:00
Matthias Clasen
1bb880af36
GtkApplicationWindow: Avoid a crash
...
In several places, we were not correctly dealing with the
possibility of application not being set.
2014-06-09 13:30:53 -04:00
Matthias Clasen
81c35b5b6e
GtkAppChooserWidget: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:53 -04:00
Matthias Clasen
ed28a71bf2
GtkAppChooserButton: Fix a possible crash
...
We were not correctly dealing with content_type being NULL
in one place.
2014-06-09 13:30:53 -04:00
Matthias Clasen
5727a86760
GdkDevice: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:53 -04:00
Matthias Clasen
a27ba44331
GtkComboBox: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:53 -04:00
Matthias Clasen
5e04bd04c8
GtkCellRendererSpinner: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:52 -04:00
Matthias Clasen
f4e60bc36d
GtkCellRendererAccel: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:52 -04:00
Matthias Clasen
e423c045d5
GtkButtonBox: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:52 -04:00
Matthias Clasen
f531b0757c
GtkBox: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:52 -04:00
Matthias Clasen
06564f5df6
GtkBox: Convert to g_object_install_properties
2014-06-09 13:30:52 -04:00
Matthias Clasen
e54525729e
GtkBox: Move overridden property ids to the end
...
This will make it easier to convert to g_object_install_properties
in the next commit.
2014-06-09 13:30:52 -04:00
Matthias Clasen
d218e17a2a
GtkButton: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:52 -04:00
Matthias Clasen
62d591a550
GtkButton: Convert to g_object_class_install_properties
2014-06-09 13:30:51 -04:00
Matthias Clasen
fba83da3ee
GtkAccelLabel: use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:51 -04:00
Matthias Clasen
10f8ea27bf
GtkAccelLabel: Convert to g_object_class_install_properties
2014-06-09 13:30:51 -04:00
Matthias Clasen
bc46df34fc
GtkAboutDialog: Use a setter for wrap-license
...
This avoids redundant notification.
2014-06-09 13:30:51 -04:00
Matthias Clasen
09a589b716
GtkAboutDialog: Fix a parameter check
...
When we expanded the GtkLicense enumeration in 3.12, we forgot
to update the limit check in gtk_about_dialog_set_license_type.
Caught by testing property notification for enum properties.
2014-06-09 13:30:51 -04:00
Matthias Clasen
06ab3e7477
GtkAboutDialog: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:51 -04:00
Matthias Clasen
c8acad2816
GtkAboutDialog: Convert to g_object_class_install_properties
2014-06-09 13:30:51 -04:00
Matthias Clasen
fae5302eae
GtkRevealer: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:51 -04:00
Matthias Clasen
07e180fef0
GtkRevealer: Convert to g_object_class_install_properties
2014-06-09 13:30:51 -04:00
Matthias Clasen
51d17910a1
GtkFlowBox: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:50 -04:00
Matthias Clasen
b549e52c2c
GtkFlowBox: Convert to g_object_class_install_properties
2014-06-09 13:30:50 -04:00
Matthias Clasen
45801c8f2c
GtkFlowBox: Move overridden prop ids to the end
...
This makes it easier to convert to g_object_class_install_properties
in the next commit.
2014-06-09 13:30:50 -04:00
Matthias Clasen
ac08d6a421
GtkFlowBox: Drop unused prop ids
...
No h/valign properties here.
2014-06-09 13:30:50 -04:00
Matthias Clasen
6e03ac9958
GtkListBox: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:50 -04:00
Matthias Clasen
d591341bd1
GtkStack: Avoid a few redundant notify emissions
...
A few of the property setters were missing the
standard checks.
2014-06-09 13:30:50 -04:00
Matthias Clasen
0a681f9224
GtkStack: Use G_PARAM_EXPLICIT_NOTIFY
2014-06-09 13:30:49 -04:00
Matthias Clasen
1edfc8c372
Bump required GLib version
...
For G_PARAM_EXPLICIT_NOTIFY.
2014-06-09 13:30:49 -04:00
Benjamin Otte
bb3174c913
reftests: Fix random failures of reftest
...
The reftest is testing "transparent" works as expected by drawing a
purple background once with purple and once with transparent and
expecting the same result. This works fine unless anti-aliasing happens
at rounded corners. The overdraw of the 2nd background changes the
antialiased pixels.
Fix this by explicitly setting the border radius to 0.
Also reindent the file to make it more readable.
2014-06-09 19:18:48 +02:00
Chun-wei Fan
37fbffaa1c
Fix MSVC 2008 Projects
...
...Make up for a missed 
 required for a new line in commands...
2014-06-09 14:39:35 +08:00
Chun-wei Fan
e26bdbda9b
MSVC Builds: Update Introspection Build
...
The a11y headers are now listed with the main Makefile.am of GTK, and
GDK introduced deprecated headers, so we need to account for them for the
build of the introspection files.
2014-06-09 12:44:46 +08:00
Chun-wei Fan
bdc9d17edc
Visual Studio Builds: Update Headers "Installation"
2014-06-09 12:42:56 +08:00
Chun-wei Fan
8e88a2e136
MSVC 2010+ Projects: Update "Installation" Process
...
Currently, due to the way that Visual Studio 2010+ projects are handled,
the "install" project does not re-build upon changes to the sources, as it
does not believe that its dependencies have changed, although the changed
sources are automatically recompiled. This means that if a part or more
of the solution does not build, or if the sources need some other fixes
or enhancements, the up-to-date build is not copied automatically, which
can be misleading.
Improve on the situation by forcing the "install" project to trigger its
rebuild, so that the updated binaries can be copied. This does trigger an
MSBuild warning, but having that warning is way better than not having an
up-to-date build, especially during testing and development.
2014-06-09 11:48:54 +08:00
Juan R. Garcia Blanco
15c34b22d2
inspector: Fix build with quartz backend
...
Add -xobjective-c to libgtkinspector_la_CFLAGS to handle objc headers.
2014-06-08 11:52:45 +02:00
Matthias Clasen
111b3bca0b
docs: Sort style classes alphabetically
...
Otherwise, it is pretty hard to keep track of what
classes are missing from the list. As a consequence,
several of the existing classes were missing. Add those
at the same time.
2014-06-06 22:07:15 -04:00
Matthias Clasen
3aa1350bd0
GtkWindow: always input-shape csd windows
...
Even if we don't have border windows, we need to set the input
shape so we ignore clicks in the shadow region.
2014-06-06 22:07:14 -04:00
Matthias Clasen
3266b4dd9b
inspector: Make picking more robust
...
Apparently ClutterOffscreen returns NULL as a window.
While that is not cool, we shouldn't crash.
2014-06-06 13:35:40 -04:00
Matthias Clasen
02a44c454c
GtkDialog: Be a little more careful about button placement
...
We were applying response based heuristics, even if the button
is explicitly put in the headerbar. That broke button placement
in some epiphany dialogs, such as the Cookies one. Therefore,
restrict the heuristics to action widgets that are added through
gtk_widget_add_action_widget() or <child type="action">, where it
is not possible to specify placement explicitly.
2014-06-06 13:00:06 -04:00
Matthias Clasen
9c6c4fdeb8
GtkDialog: avoid a crash
...
Just because use-header-bar is set, it is not safe to assume
every action widget is in the headerbar, so be careful when
setting child properties.
2014-06-06 12:20:57 -04:00
Florian Müllner
add67b516c
wayland: Explicitly handle classic mode for now
...
There are plans to add session-dependent defaults to GSettings
(based on the newly standardized XDG_CURRENT_DESKTOP); until
then, the WM uses a different schema for its button-layout
setting in classic mode. So for the time being, do the same
and pick the alternative schema when XDG_CURRENT_DESKTOP
indicates that we are in a classic session.
(It's not pretty, but hopefully won't be with us for too long ...)
https://bugzilla.gnome.org/show_bug.cgi?id=731273
2014-06-06 15:32:59 +02:00
Florian Müllner
f4c963ef74
wayland: Set gtk-decoration-layout
...
Pick up the setting from the org.gnome.desktop.wm.preferences schema
if available. It is slightly more involved than other settings, as
the actual button names used in the schema differ from the ones we
use, so we need an additional translation step.
https://bugzilla.gnome.org/show_bug.cgi?id=731273
2014-06-06 15:32:59 +02:00
Chun-wei Fan
d8de23bef6
gtk/gtkkineticscrolling.c: Include fallback-c89.c
...
... as round() is being used, which is for C99 and later. fallback-c89.c
includes math.h as well.
2014-06-06 14:47:19 +08:00
Matthias Clasen
763f0a37c1
inspector: Avoid a crash
...
An unset action-name should not cause us to crash.
2014-06-05 21:08:56 -04:00
Matthias Clasen
1e63d94a06
widget-factory: Avoid a crash
...
We want to be able to show the dialogs more than once, so just
hide them on delete.
2014-06-05 18:46:50 -04:00
Matthias Clasen
7aadd6fd2e
Remove unintentional addition
...
Debugging leftovers.
2014-06-05 18:12:42 -04:00
Matthias Clasen
fbc3c1494f
widget-factory: Show some 'standard' dialog types
...
Add examples for the types of dialog that are mentioned
in the GNOME HIG: information dialogs, action dialogs and
preference dialogs.
2014-06-05 18:08:45 -04:00
Matthias Clasen
d724175e49
GtkDialog: Improve the buildable implementation
...
When combining action child type with <action-widgets> to assign
response ids, we were not properly updating buttons that ended up
getting added to the headerbar before they have a response id.
Fix this by reapplying the headerbar button setup after parsing
<action-widgets>, and make sure to also update the suggested-action
style class.
2014-06-05 18:08:45 -04:00
Matthias Clasen
85a4b65f11
Trivial string change
...
Capitalize 'Expander' in the widget-factory UI.
2014-06-05 18:08:44 -04:00
Carlos Garnacho
246e6cd0b9
combobox: Fix reentrancy in gtk_combo_box_popdown()
...
If called when already popped down, warnings would be issued due
to priv->grab_pointer being unexpectedly NULL, this would happen
in regular operation when selecting items in appears-as-list mode.
So both add a NULL check for priv->grab_pointer, and bail out early
if the popup window is already hidden.
2014-06-05 21:16:05 +02:00
Piotr Drąg
0e8e550187
Updated POTFILES.in and POTFILES.skip
2014-06-05 17:27:15 +02:00
Lieven van der Heide
828594d5bd
scrolledwindow: Replace kinetic scrolling with GtkKineticScrolling
...
Two GtkKineticScrolling helpers are used, one per axis direction.
https://bugzilla.gnome.org/show_bug.cgi?id=729608
2014-06-05 16:49:23 +02:00
Lieven van der Heide
c726226825
gtk: Add kinetic scrolling helper
...
GtkKineticScrolling implements the actual physics laws for friction
and springs. When created, position/velocity/boundaries/constants are
given, so at every gtk_kinetic_scrolling_tick() it returns the current
position, and whether the system is in rest.
https://bugzilla.gnome.org/show_bug.cgi?id=729608
2014-06-05 16:49:23 +02:00
Carlos Garnacho
3ffb4fa699
flowbox: Use gestures for event management
...
A multipress gesture takes care of item selection/activation, and
a drag gesture is used to manage events when rubberbanding selection
is performed.
2014-06-05 16:15:54 +02:00
Carlos Garnacho
933ff62f66
listbox: Use multipress gesture for row selection/activation
...
This gesture replaces the button_press/release_event handlers.
2014-06-05 16:15:54 +02:00
Carlos Garnacho
8dcdec58eb
label: Use gestures for event management
...
A multipress gesture takes care of link handling, and char/word/all
selection mode on selectable labels. A drag gesture is used for both
text selection and DnD checks on selectable labels.
2014-06-05 16:15:54 +02:00
Carlos Garnacho
26dff0d783
range: Use GtkGesture for event management
...
A multipress gesture takes care of clicks, and where those happened.
If the click is meant to move the slider while pressed, the drag gesture
takes over, dragging the slider while active.
2014-06-05 16:15:54 +02:00
Carlos Garnacho
fbb3fdda8c
expander: Use multipress gesture for event management
...
This actually acts regardless of the value n_press, alternatively
expanding and collapsing the GtkExpander.
2014-06-05 16:15:54 +02:00
Carlos Garnacho
90424289fb
widget: reset all controllers when the widget becomes insensitive
...
Widgets becoming insensitive won't receive further events, but there
could be chances the controllers don't get properly notified and reset
in those situations.
2014-06-05 16:15:54 +02:00
Matthias Clasen
14d1a5cba4
inspector: Make GMenu content show up
...
My problem was that all the content is usually hidden away
in sections, so without recursion, nothing shows up. So,
implement the recursion then.
2014-06-05 09:29:18 -04:00
Matthias Clasen
af8bd96e6e
Forgotten file
2014-06-05 08:35:07 -04:00
Matthias Clasen
2346ccde43
inspector: show GMenus
...
This does not quite work yet, and I have no idea why.
2014-06-05 08:32:15 -04:00
Ryan Lortie
8011d853e1
GtkMenuTracker: fix signal handler argument list
...
The signal handler for the visibility of menu items changing had the
wrong signature, resulting in the GParamSpec from the notify signal
being treated as a boolean (which was always true). This resulted in
items being added over and over and never being removed.
Fix that...
2014-06-05 08:29:59 -04:00
Yosef Or Boczko
797a45bcf9
Updated Hebrew translation
2014-06-05 14:07:46 +03:00
Matthias Clasen
582504cc33
inspector: Actually destroy the property editors
...
We were never finalizing any of the popovers used for editing
properties. Fix that.
2014-06-05 05:57:50 -04:00
Matthias Clasen
7a8092998a
inspector: Fix a memory leak
2014-06-05 05:57:50 -04:00
Matthias Clasen
27f692da2d
inspector: Add an initial action editor
...
Use a popup, like we do for properties. For now, it allows
activating the action (with parameter, if necessary) and
setting the state.
2014-06-05 05:57:49 -04:00
Chun-wei Fan
bbed824320
gtk/deprecated/gtkcolorsel.c: Include gtkwindowgroup.h
...
Since commit 872fbfac the GtkWindowGroup was split out from the GtkWindow
sources, so include gtkwindowgroup.h to avoid C4013 warnings/errors
(implicit declaration of ...) on gtk_window_group_add_window().
2014-06-05 14:45:35 +08:00
Matthias Clasen
2bbea2bc93
Expand GtkWindowGroup docs
2014-06-04 21:25:05 -04:00
Matthias Clasen
23aeb955ce
inspector: Lower the inspector window when picking
...
This avoids the problem of the inspector window covering the
widget you want to pick.
2014-06-04 20:29:10 -04:00
Matthias Clasen
205e8f7e58
inspector: Show the widget tree when picking
...
Makes more sense that way.
2014-06-04 20:12:42 -04:00
Matthias Clasen
1c232066b8
inspector: Go to the desired tab
...
We were setting the next-tab properly, but were trying to
read it off the wrong object. Now, going from a cell renderer
attribute mapping to the model, or from an action-name to the
action actually works.
2014-06-04 19:28:24 -04:00
Carlos Garnacho
524e28a13c
tests: Add multitouch gesture tests
...
So far, gesture behavior on lack/excess of touchpoints is tested, as well
as sequence hand-in between gestures in these situations.
2014-06-04 13:54:41 +02:00
Carlos Garnacho
cb059bfc1b
widget: Set GDK_BUTTON1_MASK on emulated pointer events
...
The touch_event handler was missing those when emulating pointer events
for the widgets that get GDK_TOUCH_MASK set, but have no specialized
touch handlers.
2014-06-04 13:44:56 +02:00
Matthias Clasen
7a0642743d
Fix up internal function naming
...
Even if you believe this functionality belongs into gdk, it
is not ok to name internal functions in gtkwindow.c gdk_window...
2014-06-04 06:38:20 -04:00
Matthias Clasen
872fbfacd3
Split GtkWindowGroup into its own file
...
gtkwindow.c is too big and too messy. This is a small step
towards making it better.
2014-06-04 06:24:05 -04:00
Matthias Clasen
d467850af0
Shorten test paths
2014-06-03 14:22:55 -04:00
Matthias Clasen
c11b7e44a0
label-sizing reftest: Hardcode ltr
...
This reftest doesn't work in rtl.
2014-06-03 12:28:06 -04:00
Matthias Clasen
ac59f0ac08
reftests: Add a way to hardcode text direction
...
Some tests don't work in rtl, so add a way to hardcode
the expected text direction. This is in preparation for
running reftests in an rtl locale.
2014-06-03 12:28:06 -04:00
Carlos Garnacho
94f573d8a4
tests: Add tests for grab interaction with gestures
...
The behavior of gestures that are kept outside/inside a grab is tested,
to ensure the former are cancelled and the latter remain unchanged.
2014-06-03 16:13:25 +02:00
Carlos Garnacho
25f5da5018
widget: Ensure all gestures outside a grab scope are cancelled
...
This code is a product of early stages in the gestures branch, where
capturing would have an effect outside grab boundaries. But this isn't
really the case, so every gesture outside the grab scope must be reset
to avoid keeping stale data.
2014-06-03 16:13:25 +02:00
Carlos Garnacho
93f72985bf
tests: Add gesture tests for early/late sequence claiming
...
This tests both a sequence being claimed early to be then denied
(and handled deeper in propagation chain), and a sequence being
claimed late in the capture phase (and thus being cancelled deeper
in the propagation chain)
2014-06-03 16:13:25 +02:00
Carlos Garnacho
fd1a566d46
tests: Inform of gesture updates during recognition
...
May be useful to find out which gestures are still being triggered
by a sequence.
2014-06-03 16:13:25 +02:00
Carlos Garnacho
fe7215e369
testsuite: Prepare gestures testsuite for mouse/touch events
...
state is preserved for mouse emulation, and up to 10 touchpoints for touch
emulation.
2014-06-03 15:59:03 +02:00
Carlos Garnacho
26ced6abad
widget: Only deny a sequence if it was previously claimed
...
Before this change, a sequence being claimed deep in the event propagation
chain would make the sequence go denied on every ancestor, regardless of
previous state.
To make things more consistent, only deny the sequence if it was previously
claimed, so the behavior is the same for gesture groups within the widget
than for those outside the widget.
The gestures testsuite has been updated to reflect this new behavior.
2014-06-03 15:59:03 +02:00
Carlos Garnacho
c773859c99
gesture: Ensure late gestures handling the sequence get the group state
...
It might happen that a gesture claims a sequence before any other gesture
in its group even handled a single event from that sequence. In that case,
ensure the state is set accordingly right when the sequence is handled in
those.
The "group" gesture testcase has been updated to observe this behavior.
2014-06-03 15:59:03 +02:00
Matthias Clasen
f6cf7fee73
inspector: Parse custom css with a delay
...
The CSS editor was feeling a little sluggish, because it was
reparsing and reapplying the CSS on every keystroke. Add a small
delay, to make this feel smoother.
2014-06-03 09:44:28 -04:00
Benjamin Otte
45dbd84ff3
reftests: Use "all" property in inherit-and-inital test
2014-06-03 14:35:00 +02:00
Chun-wei Fan
61b9bcf1d5
MSVC Projects: "Generate" the gtk-inspector Projects
...
Like the GDK and GTK portions, use autotools scripts to generate the
complete projects for gtk-inspector as sources there seem to change from
time to time.
It might be so that this, like the a11y sources, will be referenced from
the main Makefile.am of GTK directly, but just do this so that the
projects can build properly.
2014-06-03 17:03:40 +08:00
Chun-wei Fan
dd4bc9fd09
gdk/Makefile.am: Fix MSVC Project Generation
...
We need to account for the sources that moved to gdk/deprecated/, so the
slashes must be converted here.
2014-06-03 17:00:02 +08:00
Chun-wei Fan
ddc3f8eae7
MSVC Builds: Update the gtk-demo Projects
...
Add the gestures demo sources into the build, so that the build will
complete properly.
2014-06-03 16:55:46 +08:00
Chun-wei Fan
48533b7b60
Update Visual Studio Solution Files
...
Remove all references to the gtka11y projects as they are all built
together with the GTK DLL.
https://bugzilla.gnome.org/show_bug.cgi?id=730615
2014-06-03 16:46:53 +08:00
Matthias Clasen
42945f0d74
Run reftests repeatedly
...
Install test files that run the reftests in the
Adwaita:dark and HighConstrast themes. It works,
so why not.
2014-06-02 22:46:23 -04:00
Matthias Clasen
7f8d0552f0
Drop debug spew from installed tests
...
This is no longer needed, we found the problem.
2014-06-02 22:37:29 -04:00
Matthias Clasen
5bebbb06fa
Add an expander reftest
...
This test check that resizing the window when expanding
the expander yields the same end result as having the
expander expanded to begin with. The test uses the inhibit
mechanism introduced in the previous commit.
2014-06-02 22:36:01 -04:00
Matthias Clasen
b86f5a4086
Add a way to delay snapshots in reftests
...
This adds an inhibit api that code from the reftest module
can use to delay the taking of the snapshot. Also refactor
the code in gtk-reftest to use the inhibit mechanism for
its own delaying of the snapshot until after the first
expose.
2014-06-02 22:35:59 -04:00
Matthias Clasen
16c89eb5f7
Forgotten file
2014-06-02 21:43:04 -04:00
Matthias Clasen
94c065d647
Add a reftest for flipping icons
...
Taking advantage of our new direction flipping ability.
2014-06-02 21:41:32 -04:00
Carlos Garnacho
3c0ebf65cf
window: Only check for the event widget if clicked on the "content" region
...
Every button press/release event reaching the the multipress gesture in GtkWindow
and happening in the "title" region must be handled, regardless of the event widget.
Children there wanting the event(s) for themselves are (and were always) expected
to stop event propagation.
So the only place to check for the event widget's "window-dragging" style property
is the "content" region, which matches the pre-gestures behavior.
This fixes some issues with sequences being mistakenly claimed (and events not
propagated further) on situations it shouldn't.
2014-06-02 18:38:25 +02:00
Carlos Garnacho
00656ed10b
window: Handle manually bubbled events
...
The multipress gesture must react to either direct events on the
GtkWindow (special cased through _gtk_widget_check_handle_wm_event),
or bubbled events from child widgets. Ensure bubbled events go
through the gesture, those are fed manually to make sure events are
only handled once, in either one or other place. The implicit grab
will ensure that doesn't change mid-action.
2014-06-02 18:38:25 +02:00
Carlos Garnacho
7f33706c12
window: Refactor _gtk_window_check_handle_wm_event()
...
Separate the event widget check from event handling
2014-06-02 18:38:25 +02:00
Carlos Garnacho
e1c425a24d
treeview: Ensure the event is consumed on ::row-activate
...
Otherwise the event is possibly handled, but still propagated further anyway.
Ensure the event is consumed by claiming the current sequence on the
GtkGestureMultiPress::pressed handler.
2014-06-02 18:38:25 +02:00
Carlos Garnacho
541ed65a51
treeview: restrict the multipress gesture to GDK_BUTTON_PRIMARY
...
::row-activated only used to be triggered by GDK_BUTTON_PRIMARY, so make
the multipress gesture handling this now to be only triggered by that same
button.
https://bugzilla.gnome.org/show_bug.cgi?id=731020
2014-06-01 21:57:15 +02:00
Matthias Clasen
a3cd0ee7d8
Revert "Use minimum/natural size semantics"
...
This reverts commit 6d53c2339f .
https://bugzilla.gnome.org/show_bug.cgi?id=731054 showed some
major regressions caused by this commit.
2014-06-01 10:20:08 -04:00
Matthias Clasen
73ff6a8e0f
Revert "Better resize of expandable columns"
...
This reverts commit 0050d469b5 .
Conflicts:
gtk/gtktreeview.c
2014-06-01 10:19:14 -04:00
Matthias Clasen
fd62353e25
Avoid another revert conflict
...
Moving this bit up a few lines lets the following revert apply
cleanly.
2014-06-01 10:18:38 -04:00
Matthias Clasen
210453b79e
Revert "treeview: Remove unneeded checks"
...
This reverts commit a158a2aa48 .
The commit conflicts with a later revert, so move it out of the way.
2014-06-01 10:17:59 -04:00
Matthias Clasen
97930a774b
Add more gestures tests
...
Some of these sequences look wrong/questionable to me.
2014-05-31 18:46:43 -04:00
Matthias Clasen
bdf81a7c70
gestures test: make more readable
2014-05-31 12:54:36 -04:00
Matthias Clasen
4298e88f48
gestures: Add a test for grouping
...
I'm not entirely convinced the test produces the expected
outcome, here.
2014-05-31 12:48:14 -04:00
Matthias Clasen
1c24b288b0
Expand gesture tests a big more
...
Print out sequence state changes, and cancellation, and verify that
claiming a gestures causes the expected state changes.
2014-05-31 12:26:15 -04:00
Carlos Garnacho
995b6d1fd4
textview: Only trigger drag gesture on GDK_BUTTON_PRIMARY
...
This gesture was only meant to react on GDK_BUTTON_PRIMARY (either
through real pointer events, or implicitly assumed from touch events),
as it used to behave before gestures. Otherwise the gtk_drag_begin*()
call assumes being triggered by button 1, and the drag misbehaves
because that button isn't really in the state mask.
https://bugzilla.gnome.org/show_bug.cgi?id=731016
2014-05-31 15:11:05 +02:00
Piotr Drąg
fc1e274b89
Updated POTFILES.skip
2014-05-31 15:08:21 +02:00
Benjamin Otte
86267fd9bd
gtk-reftest: Add GMODULE_CFLAGS/LIBS
...
They aren't included in GTK_DEP_CFLAGS/LIBS so they need to be added
manually.
2014-05-31 14:40:13 +02:00
Matthias Clasen
98cf67ddba
testsuite: put installed tests in the right place
...
Follow the prevailing practice and put the installed tests
into $libdir/installed-tests/$PACKAGE instead of
$pkglibdir/installed-tests.
2014-05-31 00:16:07 -04:00
Matthias Clasen
921b6519f1
inspector: better type detection for resources
...
Pass the name to g_content_type_guess. With this, most
CSS gets sniffed as C source code.
2014-05-30 23:45:11 -04:00
Matthias Clasen
5880c9e365
gtk-reftest: Don't warn needlessly
...
Only warn about the --direction argument if the option was
actually specified.
2014-05-30 23:30:56 -04:00
Matthias Clasen
e4ba5b6ab6
inspector: Go to the right tab when changing objects
...
When going from attribute mapping to model, it makes most sense
to go directly to the data tab, and when going from an action
name to the owner, we want to show the actions tab. Make it so.
2014-05-30 23:22:29 -04:00
Matthias Clasen
5ed6653859
inspector: Allow jumping to actions
...
The property editor for action-name properties now offers
to go to the object where the action is defined.
2014-05-30 23:22:29 -04:00
Matthias Clasen
d33ff810cc
inspector: Trivial string change
...
'Size Groups' looks better than 'Sizegroups'.
2014-05-30 23:22:29 -04:00
Benjamin Otte
a18ec83b3b
reftests: Add reftest for direction change
...
This reftest makes use of the new feature to add signal handlers.
It adds a libreftest.so module containing all the code for the reftests.
When adding a test named reftest.ui, please keep code contained in a
source file names reftest.c and add that file to Makefile.am.
https://bugzilla.gnome.org/show_bug.cgi?id=730833
2014-05-31 05:19:41 +02:00
Debarshi Ray
047d2b5f6d
Update GtkImage icons when the direction is changed
...
Don't call gtk_widget_set_state_flags(), it filters the direction flags.
Instead, call gtk_widget_update_state_flags() directly.
https://bugzilla.gnome.org/show_bug.cgi?id=730833
2014-05-31 05:19:41 +02:00
Benjamin Otte
690fb31fb4
gtk-reftest: Clarify --direction argument parameters
...
... and print a proper error message when the parameter is not
recognized.
2014-05-31 05:19:41 +02:00
Benjamin Otte
8bba9b6a4a
gtk-reftest: Allow loading code for reftests
...
When connecting signal names, gtk-reftest now allows you to use a colon
in the signal handler name like so:
module:function_name
where module is a module loaded from the same directory (or the .libs
subdirectory for compatibility with uninstalled libtool) as the running
test and the function is resolved in that module. Of course, normal
function names work as before.
2014-05-31 05:19:41 +02:00
Benjamin Otte
030140ccc4
reftests: Add a reftest with signals
2014-05-31 05:19:40 +02:00
Benjamin Otte
1e4fea7ca9
reftests: Automatically connect signals
2014-05-31 05:19:40 +02:00
Benjamin Otte
3df52ae6d5
builder: Cleanup
...
Use the usual way of providing user data to vfuncs:
- Don't allocate it, use the stack
- Use CamelCase for naming the struct
2014-05-31 05:19:40 +02:00
Matthias Clasen
bb9bf4b408
inspector: Handle attribute mapping changes better
...
When the mapping is changed, notify the property and
queue a draw on the widget. This makes both the inspector
and the app update their display.
2014-05-30 21:56:07 -04:00
Matthias Clasen
2e4c87038e
inspector: some code reshuffling
2014-05-30 21:35:39 -04:00
Matthias Clasen
6a9ea3487e
inspector: Support saving CSS
...
We have a file chooser, lets use it.
2014-05-30 20:35:43 -04:00
Matthias Clasen
eec1bc7ed1
GtkPrintUnixDialog: Remove some dead code
...
Automatic template children get cleaned up and NULLed out in destroy,
the g_clear_pointer() calls in finalize never do anything.
2014-05-30 19:33:11 -04:00
Evan Nemerson
54ec42f035
gtk: port many nullability annotation fixes from Vala bindings
...
https://bugzilla.gnome.org/show_bug.cgi?id=730745
2014-05-30 13:24:20 -07:00
Matthias Clasen
4d1930cf74
Make notebook content redraw during drag
...
The extra condition here that caused the current child to
not redraw during reordering was introduced in f383e1f1
during the port to ::draw, but was not explained in the
commit message, and removing it has no obvious negative
effect.
https://bugzilla.gnome.org/show_bug.cgi?id=730767
2014-05-30 13:39:27 -04:00
Matthias Clasen
6de6656d1f
GtkBuilder: Ensure types are fully initialized
...
Just calling get_type() does not ensure that the signals, properties
and everything else gets set up properly. Ensure it is, by calling
g_type_class_ref() before using the type. This fixes the testcase
added in the previous commit.
2014-05-30 12:39:07 -04:00
Matthias Clasen
1153ea86ed
Add a failing builder testcase
...
This shows <signal> failing because class_init hasn't been run
yet.
2014-05-30 12:09:43 -04:00
Matthias Clasen
1af5f6d507
GtkActionable: Update the docs
...
Actionable is no longer restricted to "app" and "win" actions.
2014-05-30 07:05:50 -04:00
Matthias Clasen
8817fa9e3d
GtkScrolledWindow: Add some NULL checks back
...
Turns out these were not quite redundant, gtk_container_forall
may be called very early during construction.
https://bugzilla.gnome.org/show_bug.cgi?id=730924
2014-05-29 21:52:40 -04:00
Matthias Clasen
489b59867c
Revert "GtkMisc: Keep gtk_misc_set_alignment working"
...
This reverts commit aabc356b80 .
Labels are back to looking at x/yalign (for now).
2014-05-29 10:32:46 -04:00
Carlos Garnacho
618e3d3157
eventcontroller: Ensure controllers stay alive during event emission
...
Those might trigger the destruction of some widget that would dispose the
event controller while the event is still being handled, so keep an extra
ref on the controller during event processing.
2014-05-28 19:39:07 +02:00
Carlos Garnacho
8c21b0bee5
docs: Add some more information in the "input handling model" chapter
...
Grabs/Touch/Gestures are now fairly well covered. Only keyboard handling
is left.
2014-05-28 15:52:14 +02:00
Evan Nemerson
9db729f5a6
gtk: fix several out argument annotations
...
These mostly just switch from allow-none to optional, nullable, or
both, as necessary.
https://bugzilla.gnome.org/show_bug.cgi?id=730745
2014-05-27 21:10:33 -07:00
Evan Nemerson
a77765f172
gtk: add missing ownership annotations ported from Vala
...
https://bugzilla.gnome.org/show_bug.cgi?id=730745
2014-05-27 21:10:33 -07:00
Evan Nemerson
07d825574f
gtk: add missing type annotations ported from Vala bindings
...
https://bugzilla.gnome.org/show_bug.cgi?id=730745
2014-05-27 21:10:33 -07:00
Evan Nemerson
bda145b19f
gtk: fix annotation syntax and missing some missing annotations
...
These changes clean up various errors and omissions resulting from
either slightly incorrect G-I/gtk-doc syntax or missing documentation
blocks.
https://bugzilla.gnome.org/show_bug.cgi?id=730745
2014-05-27 21:10:32 -07:00
Evan Nemerson
e596e58c51
gtk: port missing array annotations from Vala bindings
...
https://bugzilla.gnome.org/show_bug.cgi?id=730745
2014-05-27 21:10:32 -07:00
Evan Nemerson
e568903360
gtk: fix many callback annotations to include closure information
...
Without this information introspection-based consumers don't realize
they can include context information, but instead think that they
receive an extra gpointer argument (which they don't know how to
handle).
https://bugzilla.gnome.org/show_bug.cgi?id=730745
2014-05-27 21:10:32 -07:00
Matthias Clasen
2388c69f0c
Add some gesture tests
...
This test starts to assemble tests related to event propagation,
interaction with traditional event signal handlers, claiming of
events, etc.
2014-05-27 19:15:40 -04:00
Matthias Clasen
4841f8f773
Forgotten file
...
Oops.
2014-05-27 17:56:39 -04:00
Matthias Clasen
255b877915
Bump version
2014-05-27 17:49:22 -04:00
Matthias Clasen
a28d2cb923
Move extract-strings to its own directory
...
This will hopefully help resolve the circular dependency between
libgtk linking against inspector/libgtkinspector and inspector/
needing extract-strings from gtk/.
I didn't preserve the EXEEXT decorations in this operation -
automake gave me stern warnings about it, so I just dropped them
all. Somebody who cross-builds GTK+ will have to reconstruct this.
2014-05-27 17:28:10 -04:00
Matthias Clasen
ea2d20e313
Fix distcheck
2014-05-27 15:14:02 -04:00
Matthias Clasen
d51c6af247
3.13.2
2014-05-27 14:33:32 -04:00
Matthias Clasen
3bb404f40c
Don't assert in gtk_event_controller_constructed
...
This prevents some of our generic object implementation tests
from working with gesture objects. Instead, add g_return_if_fail
checks in all the gesture constructors.
2014-05-27 14:33:32 -04:00
Matthias Clasen
e4680d64a0
Documentation fixes
...
Add a few missing symbols, and match up parameters in headers
and doc comments.
2014-05-27 14:33:32 -04:00
Kristian Høgsberg
6cd26e0939
wayland: Use event->key.time for setting key event time
...
We were using event->button.time before. That works because it's part of
the common event header, but it's wrong.
2014-05-27 10:24:34 -07:00
Kristian Høgsberg
544e1ac1d1
wayland: Remove unused XSERVER_TIME_IS_LATER macro
2014-05-27 10:24:34 -07:00
Matthias Clasen
4ce2f3e769
Silence gtk-doc warnings
2014-05-27 13:17:34 -04:00
Matthias Clasen
7fa0228755
Revert "GtkImage: Drop use of GtkMisc::x/yalign"
...
This reverts commit 54d5b426fc .
Conflicts:
gtk/gtkimage.c
2014-05-27 13:08:25 -04:00
Matthias Clasen
24863a0b6a
Revert "GtkLabel: Drop use of GtkMisc::x/yalign"
...
This reverts commit b320c198b6 .
2014-05-27 13:07:03 -04:00
Matthias Clasen
6ce2a8fb13
Revert "Fix up GtkLabel and GtkImage sizing"
...
This reverts commit 3b30cfa344 .
2014-05-27 13:04:43 -04:00
Matthias Clasen
7c83a71239
Revert "More label and image sizing fixes"
...
This reverts commit 68c1e83cf0 .
2014-05-27 13:04:34 -04:00
Carlos Garnacho
d9bdb9a137
window: Do not raise border windows on each size allocation
...
This prevents these windows from being raised above popovers, which
is about the only child widget that may overlap with those anyway.
https://bugzilla.gnome.org/show_bug.cgi?id=730589
2014-05-27 17:56:59 +02:00
Carlos Garnacho
4cf111aab3
treeview: Make the multipress gesture listen only to bin_window
...
This gesture is meant to handle row-activated signaling, so make the
gesture ignore events from any other window.
2014-05-27 17:47:13 +02:00
Carlos Garnacho
2012b67c5b
button: Claim the sequence on multipress::pressed
...
In order to avoid the event from bubbling, as it used to (not) do.
2014-05-27 17:47:12 +02:00
Carlos Garnacho
e0fd901722
gesture: Fix wrong assert in gtk_gesture_set_window
...
The window must be part of the event controller widget, so
fix the inverted logic.
2014-05-27 17:47:12 +02:00
Carlos Garnacho
49a6626884
eventcontroller: Hide more details
...
Signals are left hidden, so the only entry point to handle_event/reset
is API.
2014-05-27 17:47:12 +02:00
Carlos Garnacho
907e9f1946
gtk: Update GtkGesture users to the GtkPropagationPhase semantics change
...
Mainly doing s/TARGET/BUBBLE/ on the fully ported widgets, but GtkTreeView
where the double click handler has moved to GTK_PHASE_TARGET so it runs
parallelly to the still existing event handlers.
2014-05-27 17:47:12 +02:00
Carlos Garnacho
505efbb3f3
widget: Change GtkCapturePhase behavior in event controllers' handling
...
Previously, there would be globally just a capture and a bubble phase,
with the event just going down the hierarchy once, and the up once.
GTK_PHASE_TARGET actually meaning "run within event handlers", so in
a hierarchy of 3 widgets, emission would be:
Capture(C)
Capture(B)
Capture(A)
Target(A) (if event handlers allow)
Bubble(A)
Target(B) (if event handlers allow)
Bubble(B)
Target(C) (if event handlers allow)
Bubble(C)
This commit changes this behavior and uses GTK_PHASE_TARGET in a less
misleading way, running only on the widget that was meant to receive
the event. And GTK_PHASE_BUBBLE has taken over the execution place of
GTK_PHASE_TARGET, so the emission remains:
Capture(C)
Capture(B)
Capture(A)
Target(A)
Bubble(A) (if event handlers allow)
Bubble(B) (...)
Bubble(C) (...)
As it was, GTK_PHASE_BUBBLE was useful for running event controllers
paralelly to event handlers, without modifying a single line in those.
For those mixed scenarios, Any of the other phases will have to be
used at discretion, or the event handlers eventually changed to chain
up and let the default event handlers in GtkWidget to be run.
2014-05-27 17:47:12 +02:00
Carlos Garnacho
a8e833dc5c
window: Avoid double event processing in the multipress event controller
...
The events to those are fed outside the regular event propagation scheme,
through _gtk_window_check_handle_wm_event(), so set the controller to
GTK_PHASE_NONE so events aren't processed first manually, and then
automatically.
2014-05-27 17:47:12 +02:00
Carlos Garnacho
9f8bd7a2bc
gesturezoom: Just return a double in get_scale_delta()
...
Checking whether the gesture is active is a responsibility of the caller.
2014-05-27 17:47:12 +02:00
Carlos Garnacho
8f7d5fb2c0
gesturerotate: Just return a double in get_angle_delta()
...
Whether the gesture is active or recognized should be checked before in
callers, or just not used naively.
2014-05-27 17:47:12 +02:00
Carlos Garnacho
d05a9f9a7b
gesture: Replace gtk_gesture_attach/detach with event controller API
...
Event controllers now auto-attach, and the GtkCapturePhase only determines
when are events dispatched, but all controllers are managed by the widget wrt
grabs.
All callers have been updated.
2014-05-27 17:47:12 +02:00
Carlos Garnacho
ad6606e8af
gtk: Update callers of GtkGesturePan orientation
2014-05-27 17:47:12 +02:00
Carlos Garnacho
2e903243c6
eventcontroller: Make the event-mask property and methods private.
...
This will rarely have any use if no subclassing is allowed, so just make it
private for our own.
2014-05-27 17:47:12 +02:00
Carlos Garnacho
ef61c9c58b
gtk: Replace GtkPanOrientation with GtkOrientation
...
And document GtkOrientation to be more generic. There's little added
value in a separate enum for this.
2014-05-27 17:47:12 +02:00
Matthias Clasen
68c1e83cf0
More label and image sizing fixes
...
Go back to respecting GtkMisc::xpad/ypad. Not doing so breaks
the misc-alignment reftest. As long as we still derive from
GtkMisc, we may as well do this.
2014-05-27 06:00:21 -04:00
Matthias Clasen
3b30cfa344
Fix up GtkLabel and GtkImage sizing
...
When GtkMisc was removed, I forgot to apply the style context
padding. This caused the info-bar-message-types reftest to fail.
2014-05-27 00:22:40 -04:00
Matthias Clasen
2488b954f2
Don't use hicolor as the default icon-theme
...
The icontheme lookup code has a special-case that prefers builtin icons
if the theme name is "hicolor". This is problematic for our reftests,
which run in a barebones environment with not settings.
2014-05-26 23:17:32 -04:00
Matthias Clasen
38daabd838
docs: enum cleanup
...
Move GtkIMPreeditStyle nad GtkIMStatusStyle to the settings where
they are solely used.
2014-05-26 10:37:34 -04:00
Matthias Clasen
0bd0f39576
docs: enum cleanup
...
Move GtkStateType to the GtkWidget apis where it is used, and
mark the enum as deprecated.
2014-05-26 10:37:06 -04:00
Matthias Clasen
4ae95157ae
docs: remove markup
...
The overview chapters don't go through shorthand processing, so
don't use them there.
2014-05-26 10:17:07 -04:00
Kalev Lember
750f6b9913
GtkApplication: Fix two muxer-related memory leaks
...
Drop the ref on the action muxer in finalize, and also make sure
shutdown() tears down the muxer setup done in startup().
When GtkApplication adds itself to a muxer, it causes the muxer to take
a ref on the GtkApplication. This has to be undone in shutdown() to make
sure the GtkApplication doesn't end up holding a ref on itself.
https://bugzilla.gnome.org/show_bug.cgi?id=730383
2014-05-25 10:49:27 +02:00
Matthias Clasen
8230299748
inspector: Allow changing attribute mappings
2014-05-24 23:31:54 -04:00
Matthias Clasen
83f9649c9c
docs: Move GdkColor off into a deprecated section
2014-05-24 23:31:54 -04:00
Kalev Lember
edb4c65c5b
Bump ATK dependency to 2.12
...
... for the new AtkValue interface that we implement.
2014-05-25 00:17:55 +02:00
Matthias Clasen
df0f14fe2a
Some more updates
2014-05-24 18:41:16 -04:00
Matthias Clasen
8a6aca31a8
Typo fixes
2014-05-24 18:20:31 -04:00
Matthias Clasen
44d76fbcdc
Organize the icons
...
Sort the icon list in check-icon-theme.c, and add
comments so we have a chance of keeping the order.
2014-05-24 18:20:31 -04:00
Matthias Clasen
e916391e6c
Drop an unused object
...
A downside of using templates is that we can have 'parasitic'
objects in there that don't get used for anything.
2014-05-24 18:20:31 -04:00
Matthias Clasen
72c79deb3b
GtkIconTheme: Add more debug spew
...
Still trying to track down test problems in gnome-continuous.
2014-05-24 18:20:31 -04:00
Jasper St. Pierre
0d402601b2
wayland: Add support for show_window_menu
2014-05-24 15:55:55 -04:00
Benjamin Otte
0430ae0ca5
image: Draw the image again
...
An important line of code was removed in
54d5b426fc that lead to an undefined
variable. Add that line back.
2014-05-24 19:38:56 +02:00
Benjamin Otte
1cbace5f68
combobox: Implement clip
2014-05-24 16:21:02 +02:00
Benjamin Otte
750178e1ed
entry: Implement clip
2014-05-24 16:20:48 +02:00
Benjamin Otte
4bbca44512
gestureswipe: Fix return value
2014-05-24 16:16:41 +02:00
Benjamin Otte
b03d54b75f
image: Remove unused variable
2014-05-24 16:16:32 +02:00
Benjamin Otte
a9bcea5118
button: Implement clip
2014-05-24 16:12:21 +02:00
Benjamin Otte
f5b1e75d93
widget: Include box-shadow in the clip
...
This allows all widgets that implement clip to use box shadows.
2014-05-24 16:12:21 +02:00
Benjamin Otte
0cd63faee2
widget: Add _gtk_widget_set_css_clip()
...
... and use it in GtkBox and GtkGrid.
2014-05-24 16:12:21 +02:00
Benjamin Otte
434f91feff
spinner: Implement clip
...
We now allow you to gtk-icon-transform() the spinner outside of the
spinners allocation.
2014-05-24 16:12:20 +02:00
Benjamin Otte
4f89eb05cf
API: widget: Add gtk_widget_set_clip() API
...
And handle the fact that drawing bounds are now handled by this API and
the corresponding gtk_widget_get_clip().
Also add _gtk_widget_supports_clip() function to check if a widget has
been ported to the new world.
2014-05-24 16:12:20 +02:00
Matthias Clasen
1d897a9bf2
docs: Flesh out the inspector section a bit
2014-05-24 10:07:46 -04:00
Matthias Clasen
a13d12a445
inspector: Make picking widgets work again
...
This broke when I accidentally removed the line that adds
each object to the hash table. Bring it back.
2014-05-24 09:55:41 -04:00
Rico Tzschichholz
3f140d5391
docs: Fix make dist
2014-05-24 12:16:56 +02:00
Rico Tzschichholz
0b586e52c2
build: Fix typo
2014-05-24 09:52:41 +02:00
Rico Tzschichholz
86d4c26420
gtk: Fix make dist
2014-05-24 09:24:46 +02:00
Rico Tzschichholz
eab39253ec
build/win32: Drop a11y library references
...
In addition to 4a4b23bfad
2014-05-24 09:23:52 +02:00
Rico Tzschichholz
7eaea2a849
Updated POTFILES.in
2014-05-24 09:22:53 +02:00
Matthias Clasen
9037f7b64e
docs: more input handling docs
2014-05-24 01:56:44 -04:00
Matthias Clasen
f52dd9fc04
Fix a start/end mixup
...
The headerbar example in gtk3-demo was showing two start buttons
after the arrow removal.
2014-05-24 00:48:12 -04:00
Matthias Clasen
aabc356b80
GtkMisc: Keep gtk_misc_set_alignment working
...
Now that labels and images no longer use x/yalign in their code,
we need to make gtk_misc_set_alignment set the h/valign for these
widgets, to keep it stumbling along until its final demise.
https://bugzilla.gnome.org/show_bug.cgi?id=730613
2014-05-24 00:48:12 -04:00
Matthias Clasen
1008e15414
GtkToolButton: Drop use of GtkMisc
...
Use h/valign instead of x/yalign.
https://bugzilla.gnome.org/show_bug.cgi?id=730613
2014-05-24 00:48:02 -04:00
Matthias Clasen
687eae4b51
GtkAssistant: Drop use of GtkMisc
...
Use halign instead of xalign.
https://bugzilla.gnome.org/show_bug.cgi?id=730613
2014-05-24 00:04:41 -04:00
Matthias Clasen
4d002d5e6a
GtkAccelLabel: Drop use of GtkMisc
...
Just use 0 instead of xpad.
https://bugzilla.gnome.org/show_bug.cgi?id=730613
2014-05-24 00:04:41 -04:00
Matthias Clasen
54d5b426fc
GtkImage: Drop use of GtkMisc::x/yalign
...
Instead, use GtkWidget::h/valign to position the image inside
the allocation. And just stop using GtkMisc::x/ypad.
https://bugzilla.gnome.org/show_bug.cgi?id=730613
2014-05-24 00:04:41 -04:00
Matthias Clasen
b320c198b6
GtkLabel: Drop use of GtkMisc::x/yalign
...
Instead, use GtkWidget::h/valign to position the text inside
the allocation. And just stop using GtkMisc::x/ypad.
https://bugzilla.gnome.org/show_bug.cgi?id=730613
2014-05-24 00:04:41 -04:00
Matthias Clasen
0011c9dae4
Fix filechooser actionbar visibility
...
The actionbar was always visible, even when there is no filter
and no extra widget to show. Now we only show it when there is
something to show.
2014-05-24 00:00:00 -04:00
Matthias Clasen
51a09af076
inspector: Treat resources the same as in gtk/
2014-05-23 23:00:43 -04:00
Matthias Clasen
ef38d6e397
Add two more icon names to check
...
These were found in the trash monitor.
2014-05-23 22:59:22 -04:00
Matthias Clasen
00d02491d8
Drop no-longer-used gtkrc files
...
These were replaced by css files long ago.
2014-05-23 22:00:51 -04:00
Matthias Clasen
45e1128472
Drop a pointless function
...
No need to have a finalize function if it just chains
up to the parent class.
2014-05-23 21:56:44 -04:00
Matthias Clasen
716ecff28d
Trivial: slight code rearrangement
2014-05-23 21:41:58 -04:00
Matthias Clasen
38cbd87cac
tests: Stop using GtkAlignment
...
Fix up all other tests to not use GtkAlignment anymore.
2014-05-23 21:32:51 -04:00
Matthias Clasen
1af417a82d
testadjustsize: Keep using an alignment
...
We are explicitly comparing GtkAlignment with its replacements
here.
2014-05-23 20:42:01 -04:00
Matthias Clasen
e74bb3db2a
gtk-demo: Drop use of GtkAlignment
2014-05-23 20:31:38 -04:00
Matthias Clasen
04703689b8
Deprecate GtkAligment
...
This has been dangling ever since 3.0.
https://bugzilla.gnome.org/show_bug.cgi?id=645781
2014-05-23 20:31:25 -04:00
Matthias Clasen
4928d5e401
Drop an unneeded include
...
There's no GtkGesture in gtkwidget.h anymore. We do need an include
in gtkwidgetprivate.h though.
2014-05-23 20:09:50 -04:00
Evan Nemerson
4a4b23bfad
a11y: build directly into libgtk instead of an internal library
...
https://bugzilla.gnome.org/show_bug.cgi?id=730615
2014-05-23 19:20:59 -04:00
Matthias Clasen
d4771d4a95
More updates
2014-05-23 17:32:14 -04:00
Matthias Clasen
cd1cd40e9a
Some updates
2014-05-23 16:11:48 -04:00
Piotr Drąg
83c1869250
Updated POTFILES.in
2014-05-23 20:48:12 +02:00
Carlos Garnacho
bd35df05a5
Merge branch 'gestures'
2014-05-23 19:58:46 +02:00
Carlos Garnacho
60e15deb83
spinbutton: Avoid touch text handles to pop up
...
Those get in the middle more than help on these widgets, the widget
is already packed with clickable areas and having handles (and their
invisible clickable area around) hovering above don't help, plus the
purpose in most likely numeric values is a bit doubtful.
All touch events are either consumed by the up/down panels, or
the swipe gesture, all GtkEntry handling of touch events on the text
window is avoided, so handles to not appear anymore.
2014-05-23 19:54:33 +02:00
Carlos Garnacho
a4a122c8e8
colorswatch: Set gestures in GTK_PHASE_TARGET
...
That's the right phase for gestures replacing entirely event handlers.
2014-05-23 19:54:33 +02:00
Carlos Garnacho
d59c909663
spinbutton: Use GTK_PHASE_CAPTURE for touch swipes
...
The gesture must be able to catch first events for it to be seen
as recognized in event handlers.
2014-05-23 19:54:33 +02:00
Carlos Garnacho
01d74f86a0
widget: Flip execution order of GTK_PHASE_TARGET/BUBBLE
...
the "bubble" phase used to run before event handlers before GTK_PHASE_TARGET
was added, in order to keep phases in the expected order, move GTK_PHASE_BUBBLE
to be run (still invariably) after event handlers.
The only behavioral change should be wrt widgets wanting mixed event handler/
gesture handling, they could previously attach the gesture to the bubble phase
and check for gtk_gesture_is_active() in the event handler to bail out, they'll
have to use GTK_PHASE_CAPTURE for that purpose from now on.
2014-05-23 19:54:33 +02:00
Carlos Garnacho
ca1510177c
texthandle: Mind the invisible area when moving the handle
...
The handle is still centered horizontally, but the extra vertical
space wasn't taken into account, leading to misplacing the dragging
point (and the handle) during motion events.
2014-05-23 19:54:33 +02:00
Carlos Garnacho
c9f54aef69
textview: Check first whether the sequence is handled, fetch later the event
...
And always unset/hide the selection popover if unhandled, that means the
sequence went grabbed/claimed somewhere else and cancelled here.
2014-05-23 19:54:33 +02:00
Carlos Garnacho
f54277204f
entry: Check first whether the sequence is handled, fetch later the event
...
And always unset/hide the selection popover if unhandled, that means the
sequence went grabbed/claimed somewhere else and cancelled here.
2014-05-23 19:54:33 +02:00
Carlos Garnacho
485da90a2e
gesture: Use GdkEventSequence GType in signals
2014-05-23 19:54:33 +02:00
Carlos Garnacho
7e61216105
gesture: Introspection fixes
...
Set annotations on return values for gtk_gesture_get_device() and
gtk_gesture_get_window().
2014-05-23 19:54:33 +02:00
Carlos Garnacho
03a3b2ccab
eventcontroller: introspection fix
...
Set transfer annotation on gtk_event_controller_get_widget()
2014-05-23 19:54:33 +02:00
Carlos Garnacho
0d4e75f078
gdk: Make GdkEventSequence a boxed type
...
Not much to copy nor free, but this'll make bindings happy
2014-05-23 19:54:33 +02:00
Carlos Garnacho
5fdf07547f
paned: Handle pointer events from touchscreen devices
...
GtkPaned may just capture pointer events because the child widget
doesn't happen to have GDK_TOUCH_MASK set, resort to checking the
device in that case.
2014-05-23 19:54:33 +02:00
Matthias Clasen
0442431943
Docs: Cosmetic fixes
2014-05-23 19:54:33 +02:00
Matthias Clasen
9f3f634c16
docs: Correct a reference
2014-05-23 19:54:33 +02:00
Matthias Clasen
70bccb38c3
Revert "docs: GtkEventController was dropped from public api"
...
This reverts commit eefac03b395a6b885fd61c100b48652200beb996.
2014-05-23 19:54:32 +02:00
Matthias Clasen
c83d3f054b
Revert "docs: More GtkEventController removal"
...
This reverts commit 75f503fb1fc9068c9e1a0d02126c55addbe8eb3e.
2014-05-23 19:54:32 +02:00
Matthias Clasen
ae5f930d1b
Docs: Add information about event propagation
2014-05-23 19:54:32 +02:00
Matthias Clasen
aead8a360b
Docs: Minor changes
2014-05-23 19:54:32 +02:00
Matthias Clasen
729a3a98d9
Document gtk_gesture_set_state
2014-05-23 19:54:32 +02:00
Matthias Clasen
9917b15bd3
docs: gtk_gesture_cancel_sequence was made private
2014-05-23 19:54:32 +02:00
Matthias Clasen
01cd5cf382
docs: More GtkEventController removal
2014-05-23 19:54:32 +02:00
Matthias Clasen
6cc9744558
docs: GtkEventController was dropped from public api
2014-05-23 19:54:32 +02:00
Carlos Garnacho
681164564e
paned: Use GtkGesture to handle handle dragging
...
Dragging is all handled by a GtkGesturePan now, matching the
paned orientation.
On touch events, a wider area is listened for, so touch events
don't need to be as accurate to initiate dragging, if no dragging
is truly initiated in this case, events are just forwarded for
child widgets to handle.
2014-05-23 19:54:32 +02:00
Carlos Garnacho
8f20780fb9
switch: Use GtkGesture to handle input events
...
A pan gesture is used to handle switch dragging, which is only triggered
by horizontal panning movements. A multipress gesture handles the cases
where clicking without dragging happens, just toggling the switch.
2014-05-23 19:54:32 +02:00
Matthias Clasen
a47d0406a7
inspector: Add more complete gesture support
...
Add a dedicated tab that shows how gestures are grouped,
and allows changing the propagation phase.
2014-05-23 19:54:32 +02:00
Matthias Clasen
1c5f14a9e4
inspector: Minimal support for gestures
...
We're just showing them as objects in the tree, for now.
2014-05-23 19:54:32 +02:00
Matthias Clasen
a727c41e4a
Add back a private api to list controllers
...
This will let us show them in the inspector.
2014-05-23 19:54:32 +02:00
Carlos Garnacho
2ba89256f4
texthandle: Make a bigger hit area around texthandles
...
The hit area now extends to all sides around the handle, instead
of just towards where the text is. This makes it easier to grab
handles once shown.
2014-05-23 19:54:32 +02:00
Carlos Garnacho
f322e55e19
gesture: Declare GtkGesture:window as an object property
2014-05-23 19:54:32 +02:00
Carlos Garnacho
f81f00ed6b
widget: 3-way merge ate my g_object_ref()
...
Move it to the right place.
2014-05-23 19:54:32 +02:00
Carlos Garnacho
d351c52114
scrolledwindow: Handle directional cancellation if there is a single scroll direction
...
A pan gesture is optionally attached if there is only one scrolling direction, the pan
gesture orientation is changed so movements tangential to the scroll direction get
scrolling cancelled (The pan gesture is automatically denied when that happens, and
that state change spreads to the others gestures in the group). If the pan direction
happens in the expected directions, no cancellation happens, and scrolling eventually
takes place.
2014-05-23 19:54:32 +02:00
Carlos Garnacho
57eca4f445
widget: remove check on whether the controller was already added
...
Multiple calls are supposedly allowed to change the phase (although
unlikely to happen), so remove the g_return_if_fail() checking whether
the controller was already added.
2014-05-23 19:54:31 +02:00
Carlos Garnacho
bd68db4b25
pan: Remove wrong check
...
From the very early days where there were a NONE=0 GtkPanOrientation
value. This makes vertical pan operations work as expected.
2014-05-23 19:54:31 +02:00
Carlos Garnacho
e70e3963dd
entry: Ensure the cursor text handle is shown after touching to reposition cursor.
2014-05-23 19:54:31 +02:00
Carlos Garnacho
cf7bb9a3bf
popover: Hide widget first when disposing
...
In order to ensure invariants are kept.
2014-05-23 19:54:31 +02:00
Carlos Garnacho
15f7170358
entry: Obey implementations' frame when placing handles/popovers around
...
Y=0 was assumed in a few places, not necessarily right on eg. vertical
spinbuttons.
2014-05-23 19:54:31 +02:00
Carlos Garnacho
10c47fa6d6
entry: Improve touch popover interaction
...
Presses alternatively show and dismiss the popover, the popover is still
always shown invariably after any dragging happens (either text selection,
or dragging a text handle)
2014-05-23 19:54:31 +02:00
Carlos Garnacho
bd5fb3a09f
textview: Show the magnifier popover a bit farther from the touch position
...
Somewhat arbitrary at the moment, would be nice to have minimal units
support for this, or at least hidpi support.
2014-05-23 19:54:31 +02:00
Carlos Garnacho
b2d56c588a
textview: Improve touch popover interaction
...
Presses alternatively show and dismiss the popover, the popover is still
always shown invariably after any dragging happens (either text selection,
or dragging a text handle)
2014-05-23 19:54:31 +02:00
Carlos Garnacho
e580c29f07
entry: Use gestures to handle pointer/touch events
...
Similarly to GtkTextView, a GtkGestureMultiPress gesture handles
button/touch presses to initiate one selection mode or other, and
a GtkGestureDrag is used to handle text selection and DnD checks.
The code from button press/release, motion, and grab_notify handlers
has been shuffled into the actions triggered by those gestures.
2014-05-23 19:54:31 +02:00
Carlos Garnacho
d559cade42
spinbutton: Attach "swipe to spin" controllers to the bubble phase
...
It is unnecessary to have those process events manually, just attach
those to the bubble phase.
2014-05-23 19:54:31 +02:00
Carlos Garnacho
70ea24b9e8
colorplane: Fully port to GtkGesture
...
A GtkGestureDrag is used for color selection, removing also the
need to track the pointer state in widget data. The GDK grab performed
just to set the crosshair cursor has been replaced by a call
to gdk_window_set_device_cursor(), which will be unset if the
drag operation is finished, or cancelled due to the implicit grab
being broken.
2014-05-23 19:54:31 +02:00
Carlos Garnacho
a6526eb820
gdk: Lookup both device and global cursor when checking up the hierarchy
...
When the pointer cursor is updated on CSW, lookup for either a device
cursor, or a global one. It would previously lookup for windows with
a global cursor, and then check if it had a device cursor, which would
skip windows with only device cursors set, and unexpectedly set the
global cursor.
2014-05-23 19:54:31 +02:00
Carlos Garnacho
ced7e7c08d
button: Make multipress gesture exclusive
...
We only want actions to be triggered by a single sequence there,
so buttons trigger no actions on further simultaneous touches
happening.
2014-05-23 19:54:31 +02:00
Carlos Garnacho
0b3f4d5555
gesturesingle: Add an "exclusive" boolean property
...
All "exclusive" gestures listen for either pointer events, or
"pointer emulating" touch events, so only a single sequence at
a time can make these run.
2014-05-23 19:54:31 +02:00
Carlos Garnacho
fd9925141b
button: Use GtkGestureMultiPress for signal emission
...
It is now useful for that purpose with a ::release signal, so replace
the custom GtkGestureSingle with one of these.
2014-05-23 19:54:31 +02:00
Carlos Garnacho
e638ff7974
drag: Allow gtk_gesture_get_start_point/offset() to be called on ::drag-end
2014-05-23 19:54:30 +02:00
Carlos Garnacho
d2db31ee5e
multipress: Add matching ::released signal
...
This signal will always be paired with a ::pressed signal, unless
the sequence is cancelled, or the controller is reset. the n_press
argument in the signal always matches the ::press signal one, even
if GtkGestureMultiPress::stopped was emitted in between.
2014-05-23 19:54:30 +02:00
Carlos Garnacho
04c8b4c705
multipress: Protect against fleeting touches mistriggering events
...
The current sequence (as per gtk_gesture_single_get_current_sequence)
is used to find out the coordinates. And only emit ::pressed if the
gesture began through a GDK_BUTTON_PRESS/TOUCH_BEGIN (eg. not due to
an extra touch being lifted)
2014-05-23 19:54:30 +02:00
Carlos Garnacho
24f20864b4
textview: Set up controllers on the GTK_PHASE_TARGET propagation phase
...
This way events are managed by gestures in the event handlers themselves,
respecting the execution order already assumed by subclasses around.
2014-05-23 19:54:30 +02:00
Carlos Garnacho
dd164502f7
widget: Hook GTK_PHASE_TARGET controllers to the default event handlers
...
Just call the controllers on that phase if the default widget handlers
are run.
For compatibility reasons, in the touch event handler, let the pointer
emulating touch be transformed to a pointer event as usual, in order to
have widget handlers a chance to run at all. If they have to be managed
by a controller in that phase, it'll have to be through the default pointer
event handlers.
2014-05-23 19:54:30 +02:00
Carlos Garnacho
1c48cc253d
gesture: Add GTK_PHASE_TARGET
...
This phase is meant to run in the default widget handlers, as opposed
to externally as in the bubble/capture phase. This will be most usually
the expected phase for every controller replacing code in event handlers
in GTK+, just so invocation and triggering order is kept unaltered.
2014-05-23 19:54:30 +02:00
Carlos Garnacho
3d34f26a6a
gesture: Handle GdkEventGrabBroken
...
That may happen separately from grab-notify, and also due to external
reasons, so ensure all sequences are cancelled if a grab is taken
in some GdkWindows that would obscure events on the controller.
2014-05-23 19:54:30 +02:00
Matthias Clasen
6a290bdecb
GtkColorSwatch: Use gesture for button events too
2014-05-23 19:54:30 +02:00
Matthias Clasen
6896c979a9
GtkWindow: Only use a multipress gesture for toplevels
...
There is no point in creating and attaching this gesture
for override-redirect windows, so don't do it.
2014-05-23 19:54:30 +02:00
Matthias Clasen
bad1dd4ac7
Be careful about the list of event controllers
...
We can end up with _gtk_widget_remove_controller getting called
while we are iterating over the list in _gtk_widget_run_controllers.
To avoid trouble, only mark the event controller as dead by
setting data->controller to NULL, and defer the actual freeing
and list manipulation to the loop in _gtk_widget_run_controllers.
Update other places that operate on controllers to handle
data->controller being NULL.
2014-05-23 19:54:30 +02:00
Carlos Garnacho
d97e4bf6b7
textview: Convert gestures' coordinates to text window ones
...
And make some code shared between multipress/drag gesture.
2014-05-23 19:54:30 +02:00
Carlos Garnacho
f47138b653
textview: Use GtkGestureDrag for text selection/DnD
...
remaining code in button press/release, motion notify, and grab
notify handlers has been shuffled to be managed by this gesture.
2014-05-23 19:54:30 +02:00
Carlos Garnacho
a4da4f8dfa
textview: Use GtkGestureMultiPress for click handling
...
The button press handler is no longer necessary, and most of its
code has been shuffled into the GtkGestureMultiPress::pressed
handler.
2014-05-23 19:54:30 +02:00
Carlos Garnacho
fe9685bca1
widget: tighten the conditions at which a press event is emulated
...
Make it really sure that the event is only emitted after every gesture
that consumed the button press is done with the sequence.
The event must only be emulated if a gesture in the capture phase happened
to consume the event, be cancelled, and
2014-05-23 19:54:30 +02:00
Carlos Garnacho
6e9b054543
widget: Fix gesture event handler retval for bubbled events
...
Do not clobber the return value if the regular event handler happens
to return FALSE, even if the gesture meant to consume the event.
2014-05-23 19:54:30 +02:00
Carlos Garnacho
2a0bf33bc9
gesture: Prevent against sequence cancellation within gtk_gesture_set_state()
...
Sequences may be cancelled within the ::sequence-state-changed handler, which
would change the points hashtable as it's being iterated in this function. So
iterate over a list of sequences and let the hashtable change freely.
2014-05-23 19:54:29 +02:00
Carlos Garnacho
44a960199b
gesture: Make gtk_gesture_get_last_update_time() private
2014-05-23 19:54:29 +02:00
Carlos Garnacho
83d5795154
gesture: Remove gtk_gesture_get_last_event_type
2014-05-23 19:54:29 +02:00
Carlos Garnacho
8ab35016a6
gesture: make gtk_gesture_cancel_sequence() private
2014-05-23 19:54:29 +02:00
Carlos Garnacho
0288fd0a88
gesture: Make gtk_gesture_check() private
2014-05-23 19:54:29 +02:00
Carlos Garnacho
994c94c25b
dnd: Check on the right gesture sequence when starting the drag op
2014-05-23 19:54:29 +02:00
Carlos Garnacho
5369c77029
gesture: Simplify gesture/widget interaction public API
...
The propagation phase property/methods in GtkEventController are gone,
This is now set directly on the GtkWidget add/remove controller API,
which has been made private.
The only public bit now are the new functions gtk_gesture_attach() and
gtk_gesture_detach() that will use the private API underneath.
All callers have been updated.
2014-05-23 19:54:29 +02:00
Carlos Garnacho
f0940c962f
widget: Keep a widget reference around _gtk_widget_run_controllers()
...
The widget may be destroyed within the loop, in reaction to the signals
sent by the controllers. Protect against that.
2014-05-23 19:54:29 +02:00
Carlos Garnacho
db55f8a4e5
gesture: Add explanatory note in GtkGesture::end
...
Explain that this signal may be triggered by an extra touch that causes
the gesture to surpass GtkGesture:n-points.
2014-05-23 19:54:29 +02:00
Carlos Garnacho
5c9f4bd078
gesture: Cancel sequences that make a gesture exceed the number of touches as they happen
...
This makes it possible to track those through gtk_gesture_handles_sequence(),
without guessing from last event type or sequence state.
2014-05-23 19:54:29 +02:00
Carlos Garnacho
134acf3fda
widget: Change slightly the gesture cancellation policy in a same widget
...
Within a widget, if a gesture accepts a sequence, it would previously
cancel every other gesture that not in the same group. Change this to
only cancelling gestures that previously claimed the gesture, and let
gestures with state=NONE for that sequence remain like that.
This enables late recognition of gestures, even on the presence of
another gesture group that was more eager at claiming the gesture.
One usecase is user-defined panning gestures on scrolledwindows,
if ::capture-button-press is TRUE (eg. the default), the gesture is
claimed early in order to consume the button press, but that would
tipically make every other gesture group deny the sequence. With
this change, the pan gesture can keep state=NONE, and later claim
the sequence for itself if the panning gesture is recognized.
Also, do not propagate state=DENIED to every gesture in the widget,
that was unintended.
2014-05-23 19:54:29 +02:00
Carlos Garnacho
4589f0e0c8
rotate: Ensure delta is between [0..2π]
2014-05-23 19:54:29 +02:00
Carlos Garnacho
c34280d97b
pan: make the direction factor less narrow in v/h directions
2014-05-23 19:54:29 +02:00
Carlos Garnacho
e080eafef8
gesture: Handle GDK_TOUCH_CANCEL events
...
The wayland windowing backend emits such events for instance, so
have gestures cancel the sequence as those events get through.
2014-05-23 19:54:29 +02:00
Carlos Garnacho
d9e6395ee9
gesture: Protect against odd window hierarchies
...
If no match is found with the gesture widget when poking the event
window parents, bail out safely instead of falling in an infinite
loop. This was seen on Mutter.
2014-05-23 19:54:29 +02:00
Carlos Garnacho
cbe47c02a1
swipe: Don't emit ::swipe if there are still active touches
...
Avoids sending spurious signals when an extra touch happens.
2014-05-23 19:54:28 +02:00
Matthias Clasen
42df9eda2d
Prevent subclassing of gestures
...
For now, at least. We do this by hiding the instance and
class structures in private headers.
2014-05-23 19:54:28 +02:00
Matthias Clasen
93b7883372
GtkSpinButton: Don't leak the gestures
2014-05-23 19:54:28 +02:00
Matthias Clasen
c6c41262b6
GtkWindow: Don't leak the gesture
2014-05-23 19:54:28 +02:00
Matthias Clasen
17088e4add
GtkTreeView: Remove unused field
2014-05-23 19:54:28 +02:00
Matthias Clasen
c63c1caac0
gtk3-demo: Don't leak the color chooser
2014-05-23 19:54:28 +02:00
Matthias Clasen
3a752658ab
GtkColorPlane: Actually add the long press gesture
...
This was missed because gtk_widget_remove_controller silently
does nothing on unowned controllers.
2014-05-23 19:54:28 +02:00
Matthias Clasen
487ac50e93
GtkButton: Don't leak the gesture
2014-05-23 19:54:28 +02:00
Matthias Clasen
616aac8d82
Forgotten file
2014-05-23 19:54:28 +02:00
Matthias Clasen
0106099f5b
GtkButton: Port to GtkGesture
...
Quick-and-dirty patch to use a GtkGestureSingle for both
button press/release and touch event handling.
2014-05-23 19:54:28 +02:00
Carlos Garnacho
f73f4d82e0
widget: remove GtkGesture-related signals
...
The utility of those signals is somewhat dubious now that there is
gtk_gesture_group(), so make that the only way to coordinate gestures.
The cooperation model offered by gtk_gesture_group() is flexible
enough,
2014-05-23 19:54:28 +02:00
Carlos Garnacho
bf6181a382
docs: Add missing GtkEventController functions
2014-05-23 19:54:28 +02:00
Carlos Garnacho
35bed1ac14
widget: Add docs for GtkGesture-related API
2014-05-23 19:54:28 +02:00
Carlos Garnacho
63dd7a568e
gesturesingle: doc fixes
2014-05-23 19:54:28 +02:00
Carlos Garnacho
556eb398e5
zoom: doc fixes
2014-05-23 19:54:28 +02:00
Carlos Garnacho
ad2346f762
swipe: doc fixes
2014-05-23 19:54:28 +02:00
Carlos Garnacho
1f8cf3c322
rotate: doc fixes
2014-05-23 19:54:27 +02:00
Carlos Garnacho
135a653ee2
pan: doc fixes
2014-05-23 19:54:27 +02:00
Carlos Garnacho
24dc172b46
multipress: doc fixes
2014-05-23 19:54:27 +02:00
Carlos Garnacho
fa168e202e
longpress: doc fixes
2014-05-23 19:54:27 +02:00
Carlos Garnacho
3cbd2b97b8
drag: doc fixes
2014-05-23 19:54:27 +02:00
Carlos Garnacho
ec50d776ce
gesture: doc fixes
2014-05-23 19:54:27 +02:00
Carlos Garnacho
dbc7f011b3
eventcontroller: doc fixes
2014-05-23 19:54:27 +02:00
Carlos Garnacho
958efad71d
docs: Add missing controller/gesture docs
2014-05-23 19:54:27 +02:00
Carlos Garnacho
a0e9de671b
pan: Add missing documentation
2014-05-23 19:54:27 +02:00
Carlos Garnacho
c10998edb5
zoom: Add missing documentation
2014-05-23 19:54:27 +02:00
Carlos Garnacho
dc1e8454a7
rotate: Add missing documentation
2014-05-23 19:54:27 +02:00
Carlos Garnacho
2df48ba886
swipe: Add missing documentation
2014-05-23 19:54:27 +02:00
Carlos Garnacho
28237f80f5
drag: Add missing documentation
2014-05-23 19:54:27 +02:00
Carlos Garnacho
90b2f386e7
longpress: Add missing documentation
2014-05-23 19:54:27 +02:00
Carlos Garnacho
4602f34111
multipress: Add missing documentation
2014-05-23 19:54:27 +02:00
Carlos Garnacho
862f9d876e
gesturesingle: Add missing documentation
2014-05-23 19:54:27 +02:00
Carlos Garnacho
ac8dcccb32
gesture: Add missing documentation
2014-05-23 19:54:27 +02:00
Carlos Garnacho
c60c0fe4c5
eventcontroller: Add missing documentation
2014-05-23 19:54:27 +02:00
Carlos Garnacho
48367b1432
enums: Add missing docs to controller/gesture enums
2014-05-23 19:54:27 +02:00
Carlos Garnacho
d768c2cb84
Remove GtkPressAndHold
...
This is replaced by GtkGestureLongPress, and all its callers have
been updated to use the replacement.
2014-05-23 19:54:26 +02:00
Carlos Garnacho
4401be22ad
enums: Document GtkPropagationPhase
2014-05-23 19:54:26 +02:00
Carlos Garnacho
6296aa84b2
spinbutton: increase/decrease value on upwards/downwards touch swipes
...
This is somewhat analogous to scroll events on pointer devices, the
greater the velocity, the faster the spinbutton spins.
2014-05-23 19:54:26 +02:00
Carlos Garnacho
c7da5b54f5
Add GtkGesturePan
...
This gesture reports events on horizontal/vertical panning gestures.
2014-05-23 19:54:26 +02:00
Carlos Garnacho
75b6f4aa52
range: Replace GtkPressAndHold with GtkGestureLongPress
2014-05-23 19:54:26 +02:00
Carlos Garnacho
2166be96d2
swipe: Add function to retrieve the current velocity
...
This can be used to fetch the current velocity on update(), as opposed
to swipe() which happens after the sequence is finished.
2014-05-23 19:54:26 +02:00
Carlos Garnacho
bd722499dc
colorswatch: Replace GtkPressAndHold
...
GtkGestureLongPress and GtkGestureMultiPress are both used
to replace it.
2014-05-23 19:54:26 +02:00
Carlos Garnacho
d5cb4841c8
colorscale: Replace GtkPressAndHold with GtkLongPressGesture
2014-05-23 19:54:26 +02:00
Carlos Garnacho
8c139c1fca
colorplane: Replace GtkPressAndHold with GtkLongPressGesture
2014-05-23 19:54:26 +02:00
Carlos Garnacho
e3d25b3c3c
entry: Don't show text handles too eagerly on button press
...
Instead do so on button release, or after text selection dragging
starts.
2014-05-23 19:54:26 +02:00
Carlos Garnacho
c3075f1d56
longpress: Ensure check() happens after cancel()
...
And delegate on GtkGesture::check(), it does deal better with
extra fleeting touches.
2014-05-23 19:54:26 +02:00
Carlos Garnacho
c506dfe600
longpress: fix reentrancy on ::reset()
2014-05-23 19:54:26 +02:00
Carlos Garnacho
3cc9543e64
gesturemultipress: fix reentrancy on ::reset()
2014-05-23 19:54:26 +02:00
Carlos Garnacho
cdb5ba9426
gesturesingle: check the current sequence before resetting the pressed button
2014-05-23 19:54:26 +02:00
Carlos Garnacho
490c356954
scrolledwindow: update to gesture widget-level API changes
2014-05-23 19:54:26 +02:00
Carlos Garnacho
ff627511b7
window: update to gesture widget-level API changes
2014-05-23 19:54:26 +02:00
Carlos Garnacho
6350f58c1c
treeview: update to gesture widget-level API changes
2014-05-23 19:54:25 +02:00
Carlos Garnacho
c4a39f5abf
drag: remove unused #define
2014-05-23 19:54:25 +02:00
Carlos Garnacho
3221d53010
eventcontroller: Add documentation blurb
2014-05-23 19:54:25 +02:00
Carlos Garnacho
040c82f0e8
dnd: Update to gesture widget-level API changes
2014-05-23 19:54:25 +02:00
Carlos Garnacho
51b5fa3bf0
demo: Update to gesture widget-level API changes
2014-05-23 19:54:25 +02:00
Carlos Garnacho
7a71c16317
widget: refactor gesture integration
...
Listen for notify::sequence-state-changed on the controller, so the
only way to manipulate a sequence state are gtk_gesture_set_sequence_state()
and gtk_gesture_set_state().
Also, make use of gesture groups, so the sequence state is set at once
on all gestures pertaining to a single group. Within a widget, if a sequence
is claimed on one group, it is made to be denied on every other group.
2014-05-23 19:54:25 +02:00
Carlos Garnacho
b0a23dbfbd
gesture: Add grouping API
...
This API eliminates the need for overriding
GtkWidget::sequence-state-changed virtually everywhere. Grouped
gestures share common states for a same GdkEventSequence, so the
state of sequences stay in sync across those.
2014-05-23 19:54:25 +02:00
Carlos Garnacho
6433a5452e
gesture: Add gtk_gesture_set_state() helper.
...
This function sets the state on all sequences where it actually
can, just a helper function to avoid iterating over sequences
yourself.
2014-05-23 19:54:25 +02:00
Carlos Garnacho
72f8c673da
gesture: emit the current state on ::sequence-state-changed
2014-05-23 19:54:25 +02:00
Carlos Garnacho
ae241714c4
gesture: group continue conditions together
2014-05-23 19:54:25 +02:00
Carlos Garnacho
8ebcca2ef6
gesture: return TRUE if the sequence state was already set
2014-05-23 19:54:25 +02:00
Carlos Garnacho
f3257e1a54
gesture: fix compiler warning
2014-05-23 19:54:25 +02:00
Carlos Garnacho
4570837e48
gesture: ignore events if now widget window was found
2014-05-23 19:54:25 +02:00
Carlos Garnacho
759705d3e6
eventcontroller: Add propagation-phase property
...
This is so we don't have to specify the capture phase for
every controller. The default "bubble" value will be sane
on most situations.
2014-05-23 19:54:25 +02:00
Carlos Garnacho
2ed086748f
treeview: remove superfluous GTK+ grabs
2014-05-23 19:54:25 +02:00
Carlos Garnacho
2ef4f1bc61
textview: remove superfluous GTK+ grabs
2014-05-23 19:54:25 +02:00
Carlos Garnacho
bae68b5511
iconview: remove superfluous GTK+ grabs
2014-05-23 19:54:24 +02:00
Carlos Garnacho
46b4e5d388
combobox: remove superfluous GTK+ grabs
2014-05-23 19:54:24 +02:00
Carlos Garnacho
db14e22f06
cellrendereraccel: remove superfluous GTK+ grabs
2014-05-23 19:54:24 +02:00
Carlos Garnacho
f766109b5b
Revert "gtk: Remove propagation limit of captured events on the grab widget"
...
This reverts commit 6511f411955adba4f960b8b07d39b93785afe33e.
2014-05-23 19:54:24 +02:00
Carlos Garnacho
cdcc536ddc
longpress: Use xsettings to determine long press duration
...
GtkSettings::gtk-long-press-time is used to this effect.
2014-05-23 19:54:24 +02:00
Carlos Garnacho
1403ebb097
settings: Add gtk-long-press-time setting
...
This setting determines the duration of a button/touch press to
be considered a long press.
2014-05-23 19:54:24 +02:00
Carlos Garnacho
61e88c251e
window: Use gestures for window moving/resizing
...
A multipress gesture is used to control all this, replacing
single/double click custom code, and triggering window dragging
when the multipress is stopped, yet active (ie. the sequence remains
pressed).
2014-05-23 19:54:24 +02:00
Carlos Garnacho
185da29b68
treeview: Use multipress gesture for row activation
...
Replace custom double click detection with multipress gesture
2014-05-23 19:54:24 +02:00
Carlos Garnacho
b0eef458d1
dnd: Use GtkGestureDrag to initiate DnD
...
This gesture is used by gtk_drag_source_set() to determine
whether dragging moved past the threshold. The gesture events
are handled via the usual ::event callbacks, so we don't mess
up with callers expecting that to happen in a signal handler.
If the sequence gets claimed somewhere else in the event widget
stack, the DnD gesture will be cancelled.
2014-05-23 19:54:24 +02:00
Carlos Garnacho
6c78716531
scrolledwindow: Ensure the dragging sequence gets denied if more touches come in
...
This allows children to receive an emulated press, and handle it together with
the new touch that made the scrolledwindow sequence denied.
2014-05-23 19:54:24 +02:00
Carlos Garnacho
564789777a
scrolledwindow: Fix overshoot coordinates
...
With gtk_gesture_get_point() returning events in
gtk_event_controller_get_widget() coordinates, we no longer need
to compensate for the overshoot here.
2014-05-23 19:54:24 +02:00
Carlos Garnacho
38e40a55f4
widget: Add gtk_widget_set_gesture_state()
...
This helper function ensures the state is propagated for
all the active sequences in the given gesture.
2014-05-23 19:54:24 +02:00
Carlos Garnacho
8e1d5f98de
widget: Improve button press emulation on sequence denied
...
Ensure that state being set on pointer emulating touches actually
gets propagated properly on widgets with gestures that only handle
pointer events.
2014-05-23 19:54:24 +02:00
Carlos Garnacho
c49ac32393
swipe: Dont emit swipe() if the gesture was denied rather than finished
2014-05-23 19:54:24 +02:00
Carlos Garnacho
55683c075c
drag: Make API offsets based
...
It is generally more useful to get offsets right away,
than having to calculate those from the start point.
2014-05-23 19:54:24 +02:00
Carlos Garnacho
6cd0e733f5
scrolledwindow: Use GtkGestureSingle API
2014-05-23 19:54:24 +02:00
Carlos Garnacho
cece9cac07
scrolledwindow: Update gesture API change.
2014-05-23 19:54:23 +02:00
Carlos Garnacho
84885c6e26
demo: Update to gesture API change
2014-05-23 19:54:23 +02:00
Carlos Garnacho
a56a9e4a62
widget: Reset gestures on grab-notify
...
If it is determined that the gesture will stop receiving
events, reset the gesture altogether.
2014-05-23 19:54:23 +02:00
Carlos Garnacho
997f05d99b
widget: Make helper gesture API take GtkGestures
...
GtkEventController may be certainly useful to keep event
handling self-contained in other places than gestures, but
the current widget API is highly related to gestures, so
just using GtkGesture as the argument there will be quite
more convenient. The other places where GtkEventController
make sense as a base object will better provide their own
hooks.
2014-05-23 19:54:23 +02:00
Carlos Garnacho
026b5014e8
Add: GTK_PHASE_NONE value to GtkCapturePhase.
...
Gestures attached with this phase will expect callers to have it
receive events through gtk_event_controller_handle_event(), but
the gesture will still be notified of sequence state changes,
grabs, etc...
2014-05-23 19:54:23 +02:00
Carlos Garnacho
ed5d73b49a
gesture: check the gesture after denying a sequence.
...
So the gesture emits end() timely.
2014-05-23 19:54:23 +02:00
Carlos Garnacho
03381beacc
gesture: Offer always coordinates in the gesture widget coordinate space
...
Translate events meant for other widgets/windows, so gtk_gesture_get_point()
always returns coordinates based on the gtk_event_controller_get_widget()
allocation.
2014-05-23 19:54:23 +02:00
Carlos Garnacho
4c34d4566c
multipress: Remove unused signal argument
2014-05-23 19:54:23 +02:00
Carlos Garnacho
dca169d9f1
swipe: Make a subclass of GtkGestureSingle
2014-05-23 19:54:23 +02:00
Carlos Garnacho
315aedf5c8
drag: Make a subclass of GtkGestureSingle
2014-05-23 19:54:23 +02:00
Carlos Garnacho
000f38ed97
multipress: Make a subclass of GtkGestureSingle
...
The redundant API has been removed here.
2014-05-23 19:54:23 +02:00
Carlos Garnacho
3db87cb0b7
longpress: Make a subclass of GtkGestureSingle
...
the redundant API here has been removed.
2014-05-23 19:54:23 +02:00
Carlos Garnacho
5f24d1a519
gesture: Only recognize gestures with as many interacting touches as those handled
...
If a gesture has denied sequences (so those are presumably handled above/below
the widget), it shouldn't attempt to handle extra touches, even if those end
up matching the expected number of touches.
2014-05-23 19:54:23 +02:00
Carlos Garnacho
b5c319b56f
gesture: Limit API calls to non-denied sequences
...
Gestures do track those internally, but information about those
shouldn't be leaked on calls.
2014-05-23 19:54:23 +02:00
Carlos Garnacho
2285157c7d
gesture: Require BUTTON_PRESS/TOUCH_BEGIN for sequences to be initiated.
...
Gestures should always receive one of such events in order to be activated,
and the propagation mechanism will ensure they do so if the original event
was caught up the widget hierarchy by another gesture that is now declining
the sequence.
2014-05-23 19:54:23 +02:00
Carlos Garnacho
d89e810bd9
gesture: Only track non denied sequences in get_last_updated_sequence()
2014-05-23 19:54:23 +02:00
Carlos Garnacho
b7435a0290
gesture: cancel all ongoing sequences on reset()
2014-05-23 19:54:23 +02:00
Carlos Garnacho
d2c9b9c2aa
gesture: Skip non-device events early.
2014-05-23 19:54:23 +02:00
Carlos Garnacho
25ece22013
gesture: Add gtk_gesture_[sg]et_window()
...
This can be used to restrict a gesture to an specific GdkWindow,
all events will be checked to happen on/within that window.
2014-05-23 19:54:22 +02:00
Carlos Garnacho
7f787e1d3b
docs: Add GtkGestureSingle to docs
2014-05-23 19:54:22 +02:00
Carlos Garnacho
c4944b0376
gesture: Remove the touch-only property
...
This is handled in GtkGestureSingle.
2014-05-23 19:54:22 +02:00
Carlos Garnacho
d4d0f13c3a
Add GtkGestureSingle
...
This is a GtkGesture subclass, specific to single-touch (or
mouse operated) gestures.
2014-05-23 19:54:22 +02:00
Matthias Clasen
49e9ba122a
...and add the right include instead
2014-05-23 19:54:22 +02:00
Matthias Clasen
a1aeaa6b07
Remove a doubled line
2014-05-23 19:54:22 +02:00
Carlos Garnacho
8d2f81cca4
scrolledwindow: Use gesture button/touch press synthesization
...
This makes scrolled window fully compatible again wrt the
GtkScrolledWindow::capture-button-press property.
2014-05-23 19:54:22 +02:00
Carlos Garnacho
36106c19d4
widget: Propagate touch/button press events when a sequence is denied
...
If the captured touch begin or button press event have been consumed
for the given sequence, propagate it upwards if the sequence goes from
claimed to denied, so the widgets on the way to the event widget receive
a coherent event stream now that they're going to receive events.
2014-05-23 19:54:22 +02:00
Carlos Garnacho
83dd050ab2
gesture: Add private getter to know whether a touch begin was handled
...
If GDK_TOUCH_BEGIN was handled/consumed for a sequence, or GDK_BUTTON_PRESS was
handled for the mouse gesture, this function will return TRUE.
2014-05-23 19:54:22 +02:00
Carlos Garnacho
a9fa0151f1
widget: Implement hierarchy-level mechanism to claim/deny sequences
...
The policy of sequence states has been made tighter on GtkGesture,
so gestures can never return to a "none" state, nor get out of a
"denied" state, a "claimed" sequence can go "denied" though.
The helper API at the widget level will first emit
GtkWidget::sequence-state-changed on the called widget, and then
notify through the same signal to every other widget in the captured
event chain. So the effect of that signal is twofold, on one hand
it lets the original widget set the state on its attached controllers,
and on the other hand it lets the other widgets freely adapt to the
sequence state changing elsewhere in the event widget chain.
By default, that signal updates every controller on the first usecase,
and propagates the default gesture policy to every other widget in the
chain on the second. This means that, by default:
1) Sequences start out on the "none" state, and get propagated through
all the event widget chain.
2) If a widget in the chain denies the sequence, all other widgets are
unaffected.
3) If a widget in the chain claims the sequence, then:
3.1) Every widget below the claiming widget (ie. towards the event widget)
will get the sequence cancelled.
3.2) Every widget above the claiming widget that had the sequence as "none"
will remain as such, if it was claimed it will go denied, but that should
rarely happen.
This behavior can be tweaked through the GtkWidget::sequence-state-changed and
GtkGesture::event-handled vmethods, although this should be very rarely done.
2014-05-23 19:54:22 +02:00
Carlos Garnacho
4ec1fafe2f
docs: Add GtkWidget gesture functions
2014-05-23 19:54:22 +02:00
Carlos Garnacho
83ef067ae1
scrolledwindow: port to GtkGesture
...
The kinetic scrolling feature is now implemented using a
GtkGestureDrag and a GtkGestureSwipe, plus a GtkGestureLongPress
in order to denying the sequence, so it is possibly handled
underneath.
2014-05-23 19:54:22 +02:00
Carlos Garnacho
76213ab209
widget: Add widget-level handling of touch sequence state.
...
These functions ATM do nothing but proxying the controller(s) state
with the given sequence.
2014-05-23 19:54:22 +02:00
Carlos Garnacho
f1bb0283dd
widget: Hook GtkEventController to widget event processing.
...
A controller can be optionally hooked on the capture or the bubble
phase, so the controller will automatically receive and handle events
as they arrive without further interaction.
2014-05-23 19:54:22 +02:00
Carlos Garnacho
d0da82fed6
gtk: Remove propagation limit of captured events on the grab widget
...
Now, all captured events run from the toplevel to the deepmost widget,
regardless of GTK+ grabs. This makes captured events more useful to
event controllers if used together in the hierarchy with widgets doing
old fashioned event handling and GTK+ grabs.
2014-05-23 19:54:22 +02:00
Carlos Garnacho
71e382cf42
gtk-demo: Add simple gestures demo
2014-05-23 19:54:22 +02:00
Carlos Garnacho
73c2964e85
hook GtkGesture* into docs generation
2014-05-23 19:54:21 +02:00
Carlos Garnacho
450c754c7c
Add GtkGestureMultiPress
...
This gesture handles any number of clicks, ensuring multiple presses
stay within thresholds and timeouts. When anything of that happens,
the gesture is reset and press count starts from 1 again.
Optionally, the gesture can be given a rectangle, used in in presses > 1
to ensure the consecutive presses happen on user imposed areas.
2014-05-23 19:54:21 +02:00
Carlos Garnacho
8026bc3651
Add GtkGestureDrag
...
This gesture interprets and reports drags as an offset to the drag
start point.
2014-05-23 19:54:21 +02:00
Carlos Garnacho
9db3c2d893
Add GtkGestureZoom
...
This gesture interprets and reports relative scale differences when fed
with events from two different GdkEventSequences.
2014-05-23 19:54:21 +02:00
Carlos Garnacho
2495b518c1
Add GtkGestureRotate
...
This gesture implementation recognizes rotations when fed with
events from two different GdkEventSequences
2014-05-23 19:54:21 +02:00
Carlos Garnacho
8733e2a918
Add GtkGestureSwipe
...
This gesture implementation recognices swipes on any direction.
The "swipe" signal has the X/Y velocity vector components, so
those can be used for direction guessing and velocity thresholds.
2014-05-23 19:54:21 +02:00
Carlos Garnacho
88d554d3ba
Add GtkGestureLongPress
...
This gesture interprets long presses with variable delays
and thresholds
2014-05-23 19:54:21 +02:00
Carlos Garnacho
8f113e07fd
Add GtkGesture
...
This a more specific abstract type that handles one or multiple
streams of pointer/touch events.
2014-05-23 19:54:21 +02:00
Carlos Garnacho
e2b8ef8c66
Add GtkEventController
...
This is a basic abstract type that handles GdkEvents.
2014-05-23 19:54:21 +02:00
Benjamin Otte
6c49ffe916
themingbackground: Outset shadows require border box
...
They are drawn relative to the border box, not relative to the padding
box.
2014-05-23 19:29:27 +02:00
Benjamin Otte
fa22218973
css: Make getter function a real getter
...
Initialize the passed-in value, don't treat it as an in-out parameter.
2014-05-23 19:29:27 +02:00
Matthias Clasen
486c82ae8f
testsuite: Add more icon names
...
These were found by looking over the GTK+ sources and ui files.
2014-05-23 12:17:56 -04:00
Matthias Clasen
7caecf3979
Add more icons to check-icon-names
...
These are icons which are used as GtkArrow replacement, and
icons used for the volume button.
2014-05-23 11:52:12 -04:00
Matthias Clasen
28c04f4be3
testsuite: Run reftests with GTK_DEBUG=icontheme
...
This will hopefully help to track down some hard-to-squash
failures that only happen in gnome-continuous.
2014-05-23 11:38:24 -04:00
Benjamin Otte
74b6f5fba8
testsuite: Add a test for icon names
...
This test just checks that all the icon names that GTK uses are present
in the default icon theme.
As icon names are not checked programmatically and we do not want to run
into missing-icon icons in the code, this test seems necessary.
For now, it's just a stub that tests stock icons.
2014-05-23 17:12:32 +02:00
Matthias Clasen
d769f338f2
GtkButton: tighten code a bit
...
Make it so we only use GtkMisc in one place.
2014-05-22 23:15:08 -04:00
Matthias Clasen
2df80d7a4d
inspector: Repeat the keybinding warning
...
Show the confirmation dialog every time the keybinding is used,
until the user clicks OK.
2014-05-22 18:37:43 -04:00
Matthias Clasen
372e551a66
inspector: avoid a warning on destroy
...
We are only hiding the window now, so a memory management
error has crept into the destroy path.
2014-05-22 18:37:43 -04:00
Benjamin Otte
e012dfab2c
Revert "Fix crash"
...
This reverts commit 024c11dd66 .
It's not a crash fix to cause a return_val_if_fail() to happen.
2014-05-22 22:35:39 +02:00
Benjamin Otte
0eb62c1629
reftests: Fix icon-vfuncs reftest
...
The reftest broke when font size lead to labels > 16px.
2014-05-22 22:35:08 +02:00
Behdad Esfahbod
024c11dd66
Fix crash
2014-05-22 15:52:01 -04:00
Matthias Clasen
b26da6ed4f
docs: Include input handling overview
...
Now that it is not entirely empty anymore, lets include it.
2014-05-22 15:46:42 -04:00
Matthias Clasen
e491da532a
Some more input handling docs
2014-05-22 15:45:31 -04:00
Matthias Clasen
3d981069ab
Fill in some content in the input handling overview
2014-05-22 15:16:37 -04:00
Jasper St. Pierre
65022c4078
gdkwindow-x11: Rearrange a tiny bit
2014-05-22 15:01:36 -04:00
Jasper St. Pierre
0d3f162d6b
gdkwindow-x11: Fix build
2014-05-22 15:01:23 -04:00
Jasper St. Pierre
084576f214
gdkwindow-x11: Ungrab the implicit grab before showing the window menu
...
Otherwise, the WM cannot take a grab on the pointer device, since we'll
still have the implicit grab.
2014-05-22 14:47:55 -04:00
Jasper St. Pierre
76e18de811
reftests: Remove the css-match-style-property-order test
...
It was testing -GtkWidget-focus-line-width, which is a dead property
we don't use anymore.
2014-05-22 14:47:55 -04:00
Matthias Clasen
7e562897e8
Drop an unused spec file template
...
Last touched in 2008...probably not relevant.
2014-05-22 14:45:54 -04:00
Jasper St. Pierre
845f29ccf5
reftests: Fix some more easy GtkButton shadow cases
2014-05-22 11:46:07 -04:00
Benjamin Otte
b1a7aa49b3
reftests: Fix background-area test
...
The test should include reset-to-defaults.css but apparently it is older
than that file. So it broke when buttons started using shadows.
2014-05-22 17:38:50 +02:00
Jasper St. Pierre
6c3712599c
gdkwindow-x11: Pass through the x/y coordinates to _GTK_SHOW_WINDOW_MENU
...
We accept these now.
2014-05-22 11:17:33 -04:00
Jasper St. Pierre
695ee3fc19
tests: Remove unused args
2014-05-22 11:17:32 -04:00
Piotr Drąg
27d0d5c0d0
Updated POTFILES.in
2014-05-22 16:12:06 +02:00
Matthias Clasen
3b1196fc68
Forgotten file
2014-05-22 09:31:15 -04:00
Matthias Clasen
49cf5142ba
Deprecate GdkColor
...
It has been replaced by GdkRGBA. Time to make it official.
http://bugzilla.gnome.org/show_bug.cgi?id=636695
2014-05-22 09:09:55 -04:00
Matthias Clasen
c3a9a20839
examples: Don't use gtk_application_add_accelerator
...
It has been deprecated.
2014-05-22 08:51:58 -04:00
Matthias Clasen
69cef3c9b4
tests: Adapt to gtk_widget_reparent deprecations
2014-05-22 08:50:18 -04:00
Matthias Clasen
cbb5e27b3e
tests: Update for GtkMisc deprecations
2014-05-22 08:49:18 -04:00
Matthias Clasen
39ccbe6549
tests: Drop manual property editor
...
No need for this anymore, now that we have the inspector everywhere.
2014-05-22 08:32:48 -04:00
Matthias Clasen
bd5414addb
gtk-demo: Don't use GtkArrow
...
It is deprecated now.
2014-05-22 08:32:48 -04:00
Matthias Clasen
2036c150ea
Avoid a compiler warning
2014-05-22 08:32:48 -04:00
Marc-André Lureau
a3d0b8d7f4
tests: add clipboard set_with_data test
...
https://bugzilla.gnome.org/show_bug.cgi?id=730183
2014-05-22 12:44:10 +02:00
Matthias Clasen
8f7dceda3c
Update treeview tests for focus changes
...
The treeview is not using focus-pad here anymore, so update
the tests to not expect it.
2014-05-22 06:15:12 -04:00
Matthias Clasen
d01a291dbc
GtkScrolledWindow: Avoid a test failure
...
The change to take out unneeded NULL checks requires some care
at startup: we check both adjustments when any of them changes;
we need to do those checks in the same order in which we create
the scrollbars, otherwise we'll try to get the adjustment of
the vscrollbar when we just set the up the hscrollbars' adjustment.
2014-05-22 06:00:09 -04:00
Björn Lindqvist
a61a11a4ea
Remove redundant not-NULL checks from GtkScrolledWindow
...
The scrollbars are created at construction time and there is no
way to set them to NULL so remove the unnecessary NULL checks.
https://bugzilla.gnome.org/show_bug.cgi?id=525206
2014-05-21 23:04:42 -04:00
Matthias Clasen
898f0fa0b9
Avoid a critical in the file chooser
...
Hiding the location entry was causing criticals, because
the completion was updated after the widget has already
been disposed.
https://bugzilla.gnome.org/show_bug.cgi?id=720330
2014-05-21 22:50:48 -04:00
Benjamin Otte
b90802f7e4
css: Actually break at end of the string
...
Introduced in 65c4c1555d .
Found by gnome-continuous running the testsuite.
Includes fixing a broken test in the testsuite.
2014-05-22 02:13:49 +02:00
Matthias Clasen
9ae12b15e9
GtkAppChooserDialog: Make the search entry wider
...
It was too narrow, and looked a bit odd.
https://bugzilla.gnome.org/show_bug.cgi?id=727147
2014-05-21 20:11:16 -04:00
Matthias Clasen
e6c050c06f
searchbar: Add some spacing
...
When showing the close button, and placing a wide entry in the
middle, there was no separation at all. Fix this by setting
some spacing.
2014-05-21 20:09:46 -04:00
Matthias Clasen
8591f452f0
ColorChooser: Emit notification for editor changes
...
When the color editor is visible, there is no way for the
application to know about the changes that are happening.
Fix this by emitting property notification for the "rgba"
property.
http://bugzilla.gnome.org/show_bug.cgi?id=708037
2014-05-21 19:23:56 -04:00
Matthias Clasen
33207f4597
Add a 3.14 index for the GDK docs
2014-05-21 19:02:52 -04:00
Matthias Clasen
3d2dcc2bfe
Small typo fixes
...
We generally talk about the 'windowing system' in the GDK frontend
docs, not the 'window manager'.
2014-05-21 19:01:37 -04:00
Jasper St. Pierre
0ea1a526f9
gtkwindow: Use window-manager-side window menus
...
This avoids a bunch of policy problems with deciding how to lay
out the window menu under different WMs.
For now, we use the special event _GTK_SHOW_WINDOW_MENU, but we
hope to have this standardized in wm-spec quite soon, as KDE wants
it as well.
2014-05-21 18:41:07 -04:00
Yosef Or Boczko
02d92ff831
inspector: Use the new support for RTL icons in GtkIconTheme
...
https://bugzilla.gnome.org/show_bug.cgi?id=730526
2014-05-21 21:07:05 +03:00
Matthias Clasen
f750f70c7d
tests: Make icontheme test installable
...
To make the icontheme test run successfully when installed,
we need to use the correct test-framework-provided location,
and we need to install the test theme without stripping its
subdirectory structure.
2014-05-21 13:46:49 -04:00
Yosef Or Boczko
c543a14c5b
Use the new support for RTL icons in GtkIconTheme
...
https://bugzilla.gnome.org/show_bug.cgi?id=730526
2014-05-21 17:45:38 +03:00
Matthias Clasen
6b26410d38
GtkLabel: Make context menus on links work
...
We see an active link when creating the menu, but by the time
the menuitem is activated, we've received a leave notify that
makes the label clear its active link. Instead, give the
menuitems a direct reference to the link that is active when
the menu is created.
Problem pointed out by Tim Baedert
2014-05-21 10:29:17 -04:00
Matthias Clasen
11abc517f5
inspector: Avoid weak ref problems
...
We know the objects in a size group are always widgets, so we
can avoid hard-to-track down problems with weak references by
just cleaning up when the object gets destroyed. There is still
a chance that we show a widget as part of the group after it
has been removed, but size groups simply have no signals that
would let us avoid that.
2014-05-21 06:44:44 -04:00
Matthias Clasen
d39ee6c81c
inspector: Simplify object life-cycle handling
...
The prop-list doesn't use the object column in its model,
so don't put the object there. And don't leak stuff on
finalize.
2014-05-21 06:44:44 -04:00
Matthias Clasen
3d8b0514bb
inspector: Use an emission hook instead of signal handlers
...
This is slightly easier to manage, and there's only two emission
hooks overall, instead of two signal handlers per object.
2014-05-21 06:44:44 -04:00
Yosef Or Boczko
0a0c95f39b
Updated Hebrew translation
2014-05-21 12:40:41 +03:00
Yosef Or Boczko
9cbaf71e14
Updated POTFILES.in
2014-05-21 12:40:32 +03:00
Matthias Clasen
af8fdac001
inspector: Show size groups
...
Add a tab that shows size groups of a widget. The properties
of the size group are available here, as well as the widgets
that are part of the size group. We highlight the widgets in
the application when their row in the inspector is hovered.
2014-05-20 21:44:48 -04:00
Matthias Clasen
538b987bc5
inspector: Add a way to highlight widgets
...
In contrast to the flashing, where we blink the widget a
few times, this is explicitly turned on and off.
It will be used for indicating widgets that are part of
a size group, in the next commit.
2014-05-20 21:43:00 -04:00
Yosef Or Boczko
65c9e2a651
inspector: Use symbolic icon everywhere
...
https://bugzilla.gnome.org/show_bug.cgi?id=730465
2014-05-20 16:21:28 -04:00
Yosef Or Boczko
83d43d0cfe
inspector: Expand tabs in the objects section
...
https://bugzilla.gnome.org/show_bug.cgi?id=730465
2014-05-20 16:21:28 -04:00
Yosef Or Boczko
c6a9c1231b
inspector: Expand the general tabs
...
https://bugzilla.gnome.org/show_bug.cgi?id=730465
2014-05-20 16:21:28 -04:00
Matthias Clasen
3263b963e6
Add a skeleton for an input handling overview document
...
Not integrated in the docs yet, since there's no content.
2014-05-20 10:10:31 -04:00
Matthias Clasen
70cb91a827
docs: syntax fix
...
It is just 'Deprecated:' in doc comments, not '@Deprecated:'.
2014-05-20 09:55:29 -04:00
Matthias Clasen
edd6c4d487
docs: enum cleanup
...
Move GtkExpanderStyle over to the deprecated GtkStyle.
2014-05-20 09:54:01 -04:00
Matthias Clasen
d606021c34
inspector: Avoid a compiler warning
...
...and a pointless cast, too.
2014-05-20 09:54:01 -04:00
Matthias Clasen
575d0eabfb
docs: enum cleanup
...
Move GtkResizeMode to the only place it is used.
2014-05-20 09:54:01 -04:00
Matthias Clasen
1c271365ab
docs: Minor fix
2014-05-20 09:54:01 -04:00
Matthias Clasen
d5251141ce
docs: enum cleanup
...
Move GtkWindowPosition and GtkWindowType to the only place
they are used.
2014-05-20 09:54:01 -04:00
Matthias Clasen
59e4be9752
docs: enum cleanup
...
Move GtkJunctionSides, GtkRegionFlags and GtkBorderStyle
to the GtkStyleContext docs.
2014-05-20 09:54:01 -04:00
Matthias Clasen
73d0bcb874
docs: enum cleanup
...
Move GtkDragResult to the DND section
2014-05-20 09:54:01 -04:00
Matthias Clasen
04192d04a2
docs: enum cleanup
...
Move types that are only used in binding parsing to
gtkrc, together with the deprecated api.
2014-05-20 09:54:01 -04:00
Matthias Clasen
e5a1734ce9
docs: enum cleanup
...
scrolledwindow part 2
2014-05-20 09:54:01 -04:00
Matthias Clasen
a846e7f818
docs: enum cleanup
...
Move GtkCornerType to the GtkScrolledWindow docs.
2014-05-20 09:54:01 -04:00
Matthias Clasen
2430762f9b
docs: enum cleanup
...
Move GtkButtonBoxStyle to the one place it is used, GtkButtonBox.
2014-05-20 09:54:01 -04:00
Matthias Clasen
cf1c8c8c69
docs: enum cleanup
...
Move GtkAttachOptions to the only place its used: GtkTable
2014-05-20 09:54:01 -04:00
Matthias Clasen
ee244473d6
doc: enum cleanup
...
Move GtkArrowType to where it is used in undeprecated api:
GtkMenuButton.
2014-05-20 09:54:01 -04:00
Matthias Clasen
edde7aca60
docs: enum cleanup
...
Move GtkArrowPlacement to the GtkMenu docs. This type is
only used for a style property there.
2014-05-20 09:54:01 -04:00
Matthias Clasen
b72f932b9a
docs: enum cleanup
...
Move GtkAccelFlags to the GtkAccelGroup docs.
2014-05-20 09:54:01 -04:00
Yosef Or Boczko
54b0acde40
Updated Hebrew translation
2014-05-20 10:21:44 +03:00
Rico Tzschichholz
0c4dc3c157
docs: Fix make dist
2014-05-20 08:11:44 +02:00
Matthias Clasen
9af2710d84
Add man pages for gtk3-demo and gtk3-widget-factory
...
We install the applications, so they should also have some docs.
2014-05-19 23:20:56 -04:00
Matthias Clasen
fd65b68927
docs: Trivial typo fix
2014-05-19 22:47:59 -04:00
Piotr Drąg
35af983b96
Updated POTFILES.in
2014-05-20 02:08:24 +02:00
Evan Nemerson
701adf81b6
gdk: assorted introspection and documentation fixes
...
https://bugzilla.gnome.org/show_bug.cgi?id=729983
2014-05-19 11:47:59 -07:00
Matthias Clasen
ca79019586
GtkSettings: load modules from settings.ini
...
The initialization is really suboptimal here. This fix at least
makes it so that we don't forget to load modules.
https://bugzilla.gnome.org/show_bug.cgi?id=730306
2014-05-19 14:09:16 -04:00
Yuri Myasoedov
6b2ee7c23a
Updated Russian translation
2014-05-19 21:40:44 +04:00
Carlos Garnacho
cacccf7a3a
popover: Check for uncaught button events from children
...
And deal correctly with those as a click within the popover.
https://bugzilla.gnome.org/show_bug.cgi?id=727994
2014-05-19 14:00:07 +02:00
Carlos Garnacho
e2cd59b731
popover: Do not hide the popover if the focus widget is just unset
...
The focus widget might be unset, just to be set again on a widget inside
the popover. Have the popover wait till the focus is actually moved outside
before dismissing.
2014-05-19 13:49:03 +02:00
Matthias Clasen
c665564374
inspector: Build out the resource information
...
Show type and size for each resource.
2014-05-19 07:10:33 -04:00
Matthias Clasen
7bf3d9d0ab
Fix doc syntax
...
End-of-comment tags don't take an @ - thats only for parameters.
2014-05-19 06:58:18 -04:00
Matthias Clasen
8c0b1697e6
inspector: string fixes
...
Mark user-visible strings for translation in the new property editor.
2014-05-19 00:17:23 -04:00
Matthias Clasen
9a23fd3313
inspector: Link to model for attributes
2014-05-19 00:13:30 -04:00
Benjamin Otte
d260694a37
widget: Untagle if statements
...
Reduces the number of nested ifs and makes the code clearer.
2014-05-19 04:25:10 +02:00
Matthias Clasen
34a87ee2f3
inspector: redo property editing
...
Move away from cell editing, and use a popover instead. This makes
it easier to e.g. use a color chooser - there's just not enough room
in a cell for many things.
Much of this code is adapted from tests/prop-editor.c.
2014-05-18 11:43:13 -04:00
Matthias Clasen
386f1d14f0
GtkAssistant: Avoid a crash
...
The child properties in GtkAssistant are somewhat broken, since
they are not on direct children - but that is no reason to crash
if somebody does ask for child properties of direct children.
2014-05-18 11:43:13 -04:00
Benjamin Otte
f191c13a27
API: Deprecate gtk_container_set_reallocate_redraws()
2014-05-18 16:09:21 +02:00
Michael Catanzaro
0c55b841fc
Fix a typo
2014-05-17 22:21:14 -05:00
Benjamin Otte
3cb5e58b1a
API: Deprecate gtk_widget_region_intersect()
...
It's unused and would become disambiguous once we split between
allocation and draw region.
2014-05-18 02:29:56 +02:00
Benjamin Otte
2a99584c68
API: Deprecate gtk_widget_reparent()
2014-05-17 23:36:57 +02:00
Yosef Or Boczko
2b03234466
Updated Hebrew translation
2014-05-18 00:17:57 +03:00
Matthias Clasen
70bec41f6c
inspector: Allow sorting signals
2014-05-17 15:39:46 -04:00
Matthias Clasen
3d0b149e3b
inspector: Allow sorting properties by origin
2014-05-17 15:35:10 -04:00
Matthias Clasen
4f830fb117
treeview: Don't show missing images
...
When a model is sortable, but the the column is not currently used
for sorting, we want to reserve the space for showing the sort
indicator. But we currently set the icon to 'missing-image', which
is not great to show all over the place. So, just set the opacity
to 0.
2014-05-17 15:32:54 -04:00
Piotr Drąg
df61db6dbc
Improve punctuation in a new translatable string
2014-05-17 20:20:45 +02:00
Matthias Clasen
b4a57a0f0c
inspector: Add a first-time warning
...
With the keybinding, it is possible that users may trigger the
inspector unintentionally. Show a dialog that informs them about
whats going on and gives them a chance to back out.
The warning dialog can be bypassed with the
org.gtk.Settings.Debug inspector-warning setting.
2014-05-16 21:51:42 -04:00
Matthias Clasen
2bf654b352
inspector: Drop an unused widget
2014-05-16 20:49:06 -04:00
Jasper St. Pierre
8c15389d76
wayland: Clean up init code a tiny bit
2014-05-16 15:35:47 -04:00
Jasper St. Pierre
ffebedae40
wayland: Simplify roundtrip initialization
...
All the globals we care about should appear before doing anything
else, up-front, so a single round-trip after adding the registry
should be more than enough.
2014-05-16 15:35:29 -04:00
Jasper St. Pierre
72e9937e00
wayland: Remove unused stuff
2014-05-16 15:24:37 -04:00
Matthias Clasen
12f5cfac19
Trivial syntax fix
2014-05-16 14:30:34 -04:00
Chun-wei Fan
7ea0e2756a
GtkInspector: Fix Build on Windows
...
Update visual.c to use Windows themes rather than the stock Raleigh theme,
and avoid hardcoding data paths for Windows (and Mac). As the dlfcn.h
functions are only used when Python is enabled, move its inclusion there[*].
Also ensure that variables are declared on the top of the block.
[*] Python support Windows needs to be investigated, as POSIX signal
handling is used there.
https://bugzilla.gnome.org/show_bug.cgi?id=730236
2014-05-16 23:50:20 +08:00
Piotr Drąg
146adf077e
Updated POTFILES.skip
2014-05-16 17:30:25 +02:00
Matthias Clasen
298f76e6a3
Docs: Update an example to use current API
2014-05-16 08:25:20 -04:00
Chun-wei Fan
8d7c93ba47
Visual Studio Builds: Build GtkInspector
...
Add project files to build the GtkInspector sources, as gtk-inspector is a
required portion for GTK+. "Install" the
org.gtk.Settings.Debug.gschema.xml gsettings schema file as well, so that
people can trigger GtkInspector as they develop and test their GTK+-based
programs.
2014-05-16 17:32:29 +08:00
Matthias Clasen
63e7fe3d60
inspector: Show tree model contents
2014-05-16 00:28:17 -04:00
Chun-wei Fan
58b48fa209
gdkselection-win32.c: Declare Variables At Top Of Block
...
...so that builds on Visual C++ can be fixed.
2014-05-16 12:25:36 +08:00
Matthias Clasen
ee06b932d3
inspector: Set a window icon
2014-05-15 22:53:23 -04:00
Matthias Clasen
fa80bb2324
inspector: Improve actions tab
...
React to action group changes, and allow changing action states.
2014-05-15 22:37:30 -04:00
Matthias Clasen
906e4adb5a
inspector: ellipsize long paths
2014-05-15 22:37:30 -04:00
Benjamin Otte
271ef198bf
cssimage: Implement symbolic coloring for -gtk-icontheme()
2014-05-16 04:13:39 +02:00
Yosef Or Boczko
96c476b6a0
Updated Hebrew properties translation
2014-05-16 05:11:56 +03:00
Yosef Or Boczko
20f2c84e9c
Updated Hebrew translation
2014-05-16 03:09:51 +03:00
Yosef Or Boczko
7f3788e2f0
Updated POTFILES.in
2014-05-16 03:09:44 +03:00
Matthias Clasen
e84a523750
inspector: Show resources
...
Show a list of all registered resources. If a resource looks
like text or an image, we show its content.
2014-05-15 19:36:12 -04:00
Matthias Clasen
d52a01631e
inspector: Redraw when visual debugging tools are toggled
...
This doesn't address the pixel cache yet.
2014-05-15 19:36:12 -04:00
Matthias Clasen
e170f31e2a
inspector: Don't show internal build ids
...
These ___object_x___ ids just clutter up the tree.
2014-05-15 19:36:12 -04:00
Jasper St. Pierre
75ecdf50a3
wayland: Fix GtkMenuButton popups in a terrible, hacky way
...
Since you can't take grabs on unmapped windows, GtkMenu takes a grab on
the menu in a convoluted way: it first grabs another window, shows the
menu window, and then transfers the grab over to the GtkMenu widget.
For normal menubars, this is perfectly fine, as the first window it grabs
is our toplevel, and that gets picked up in our transient path. For
GtkMenuButton or other spurious uses of gtk_menu_popup, it creates a new
temporary input-only window which it takes the grab on, known as the "grab
transfer window". Since this window isn't a transient-for of our new menu
widget window, the grab isn't noticed when we go to show it, and thus the
menu ends up as a new toplevel.
Add a special hack to GtkMenu and the Wayland backend which lets us notice
this "grab transfer window", and include it in our grab finding path.
It's sort of terrible to have to hack up the widgets instead of just the
backend, but the alternative would be an entirely new window type which is
managed correctly by GDK. I don't want to write that.
2014-05-15 18:02:45 -04:00
Jasper St. Pierre
f6b3f0bfc7
wayland: Clean up function to find the input seat
2014-05-15 18:02:45 -04:00
Jasper St. Pierre
7052795a80
wayland: Clean up code to find the correct seat for a window
2014-05-15 18:02:45 -04:00
Piotr Drąg
eb3f2c0068
Updated POTFILES.in and POTFILES.skip
2014-05-15 20:53:48 +02:00
Yosef Or Boczko
23bfcd8e84
Updated Hebrew translation
2014-05-15 21:16:58 +03:00
Stefano Facchini
ac68d1f0a1
inspector: make the classes-list toolbar sensitive
2014-05-15 18:23:48 +02:00
Stefano Facchini
78a6906d4a
inspector: Fix a typo
2014-05-15 18:15:31 +02:00
Jasper St. Pierre
d252282e75
inspector: git ignore template headers
2014-05-15 11:06:08 -04:00
Matthias Clasen
2e07865f67
Drop debug spew
2014-05-15 08:47:44 -04:00
Matthias Clasen
93204d3ba8
Don't lie about baselines so much
...
Let g_object_get (w, "valign",...) report the truth, so that the
inspector can show it without special cases.
2014-05-15 08:43:43 -04:00
Matthias Clasen
e80df0aed0
Minor doc fix
2014-05-15 08:43:43 -04:00
Yosef Or Boczko
e0d5d76639
Updated Hebrew translation
2014-05-15 13:09:14 +03:00
Yosef Or Boczko
e24e621fff
inspector: Added general.ui to Makefile
2014-05-15 12:52:47 +03:00
Matthias Clasen
42dc501133
inspector: Drop unused functions
...
The entire UI is constructed with templates, so the wrapper
constructors are never called, except for gtk_inspector_window_new,
which gets called from the GTK+ code.
2014-05-15 00:14:37 -04:00
Matthias Clasen
75d49675f3
inspector: Add a general information tab
...
It is useful to see the GTK+ version, and the various paths
that affect GTK+ operation at runtime.
2014-05-15 00:06:43 -04:00
Matthias Clasen
b36c8250a9
inspector: Merge Visual and Themes tabs
2014-05-14 22:53:32 -04:00
Matthias Clasen
2d2f9861a6
inspector: Show GAction information
...
Show the actions that are added to GtkApplication and
GtkApplicationWindows, as well as action groups that are
inserted elsewhere with gtk_widget_insert_action_group.
https://bugzilla.gnome.org/show_bug.cgi?id=730095
2014-05-14 21:40:01 -04:00
Matthias Clasen
3f224a7165
Add private GtkWidget api for action groups
...
Similar to the just-added action muxer api for enumerating
action prefixes and for getting the action group for a
prefix.
https://bugzilla.gnome.org/show_bug.cgi?id=730095
2014-05-14 21:28:53 -04:00
Matthias Clasen
4396bbdb3c
GtkActionMuxer: Add getters
...
Add a way to enumerate all prefixes, and to get the
action group for a prefix.
https://bugzilla.gnome.org/show_bug.cgi?id=730095
2014-05-14 21:27:56 -04:00
Matthias Clasen
384393e9de
Revert "Add private api to load a single module"
...
This reverts commit 7f9a0dbe16 .
2014-05-14 21:25:28 -04:00
Matthias Clasen
59c9d24bbf
inspector: stop being a module
...
Moving the inspector into libgtk lets use reuse internals without
having to add public API for everything or inventing awkward private
call conventions.
https://bugzilla.gnome.org/show_bug.cgi?id=730095
2014-05-14 21:23:44 -04:00
Matthias Clasen
53b37b8f71
Fix GtkCalendar drawing
...
A gtk_widget_get_allocation call was unintentionally
dropped in 5cb43c70f7 .
2014-05-14 20:38:55 -04:00
Cosimo Cecchi
6ecc431c23
placessidebar: use proper canonicalization when checking if home
...
Instead of just checking the string. This catches things like double
slashes, relative paths and so on.
https://bugzilla.gnome.org/show_bug.cgi?id=730142
2014-05-14 16:05:44 -07:00
Matthias Clasen
99f36ffbb4
docs: Add an index for 3.14 additions
2014-05-14 15:56:01 -04:00
Ryan Lortie
6525130740
GtkMenuShell: (model binding) show() new items
...
We weren't calling show() on newly-added items -- make sure we do that.
This makes the Time menu in bloatpad work properly again.
2014-05-14 15:49:30 -04:00
Piotr Drąg
583b46c9c8
Updated POTFILES.skip
2014-05-14 19:34:55 +02:00
Yosef Or Boczko
6c737b8bf0
Updated POTFILES.in
2014-05-14 14:51:10 +03:00
Matthias Clasen
8b0b024385
More deprecation docs for GtkArrow
2014-05-13 23:52:47 -04:00
Matthias Clasen
a600718846
Deprecate GtkArrow
...
https://bugzilla.gnome.org/show_bug.cgi?id=729564
2014-05-13 23:50:13 -04:00
Matthias Clasen
219f96b8a3
Drop GtkArrow use in GtkTreeView
...
This was just an unneeded include anyway.
2014-05-13 23:50:13 -04:00
Matthias Clasen
c242437535
Drop GtkArrow use in GtkPathBar
...
This was just an unneeded include anyway.
2014-05-13 23:50:13 -04:00
Matthias Clasen
7269168e89
Drop GtkArrow use in GtkMenuToolButton
...
This was just an unneeded include anyway.
2014-05-13 23:50:13 -04:00
Matthias Clasen
57feff4e14
Drop GtkArrow use in GtkTreeViewColumn
...
This is in preparation for GtkArrow getting deprecated.
https://bugzilla.gnome.org/show_bug.cgi?id=729564
2014-05-13 23:50:12 -04:00
Matthias Clasen
26e1b7c7d7
Drop GtkArrow use in GtkToolbar
...
This is in preparation for GtkArrow getting deprecated.
https://bugzilla.gnome.org/show_bug.cgi?id=729564
2014-05-13 23:50:12 -04:00
Matthias Clasen
69314ce9e5
Drop GtkArrow use in GtkMenuButton
...
This is in preparation for GtkArrow getting deprecated.
https://bugzilla.gnome.org/show_bug.cgi?id=729564
2014-05-13 23:50:12 -04:00
Matthias Clasen
9a127d364f
Drop GtkArrow use in GtkComboBox
...
This is in preparation for GtkArrow getting deprecated.
https://bugzilla.gnome.org/show_bug.cgi?id=729564
2014-05-13 23:50:12 -04:00
Benjamin Otte
0f788ab1be
testsuite: Add rtl icontheme tests
2014-05-14 04:55:11 +02:00
Matthias Clasen
0f5814aa33
icontheme: Add a test for lookup order
...
Add tests that verify the expected lookup order between -symbolic,
-rtl/-ltr and generic fallback.
2014-05-14 04:28:36 +02:00
Matthias Clasen
b0b205040c
GtkIconTheme: Support looking up directional variants
...
Add two new icon lookup flags, GTK_ICON_LOOKUP_DIR_LTR and _RTL,
which tell GtkIconTheme to look for icon variants which have a
-ltr or -rtl suffix. GtkIconHelper adds these lookup flags when
looking up icons.
Note that due to the way this overlaps with symbolic icon lookup,
directional variants of symbolic icons must be called -symbolic-rtl, not
-rtl-symbolic.
https://bugzilla.gnome.org/show_bug.cgi?id=729980
2014-05-14 04:28:36 +02:00
Benjamin Otte
89d6598d5b
icontheme: Split out symbolicness tests into own function
2014-05-14 04:28:36 +02:00
Matthias Clasen
26c2975007
testsuite: Add icontheme tests for generic fallback
2014-05-14 04:28:36 +02:00
Benjamin Otte
77a9539e07
icontheme: Do a failed lookup at the beginning
...
Do this to catch the g_warning() that the icontheme code emits the first
time a lookup fails.
2014-05-14 04:28:36 +02:00
Benjamin Otte
5f794773aa
testsuite: Add more icontheme tests
...
Check that the lookup order works properly when forcing either symbolic
or regular icons.
2014-05-14 04:28:36 +02:00
Benjamin Otte
5ba4a085e2
testsuite: Add a basic icontheme test
...
Most of the work here is creating the infrastructure to have a custom
icon theme to add icons to and run tests against.
2014-05-14 04:28:35 +02:00
Benjamin Otte
5e07b80854
reftests: Add a test for recent commits
...
Check that icon-shadow is not affected by -gtk-icon-transform.
2014-05-14 04:28:35 +02:00
Benjamin Otte
783e5f7b3e
themingengine: Don't transform icon shadows
...
.. by -gtk-icon-transform. We want a rotating spinner's shadow to still
be directed towards bottom right.
2014-05-14 04:28:35 +02:00
Benjamin Otte
cb0b4b5410
css: Change CssTransformValue API
...
Provide API to query the matrix instead of API that applies the matrix
directly. This makes the API more flexible.
See the commits implementing shadows.
2014-05-14 04:28:35 +02:00
Benjamin Otte
ce0835e539
themingengine: Draw "icon-shadow" on icons
2014-05-14 04:28:35 +02:00
Benjamin Otte
59b6dee480
reftest: Add tests for the new vfuncs
...
This test is a bit brittle because it doesn't properly rely on CSS
properties but needs to use widget style properties to turn of extra
sizing from widgets.
It might break in the future when porting widgets to draw properly.
2014-05-14 04:28:35 +02:00
Benjamin Otte
b9f11cb636
themingengine: Draw icons for arrows
2014-05-14 04:28:35 +02:00
Benjamin Otte
b0ea9e4dea
themingengine: Use icons for expanders
2014-05-14 04:28:35 +02:00
Benjamin Otte
bb7a5691a9
themingengine: Implement icon drawing for checks and options
2014-05-14 04:28:34 +02:00
Benjamin Otte
5d1b5c13fb
icontheme: Don't force missing icon
...
When forcing regular or symbolic icons, fall back to the default
specified icons. This ensures that when no symbolic icon is present, an
icon will still appear - the regular one.
2014-05-14 04:28:34 +02:00
Benjamin Otte
f0a5cebe23
reftests: Add a reftest for -gtk-icon-style
2014-05-14 04:28:34 +02:00
Benjamin Otte
f8cccbad0e
iconhelper: Respect -gtk-icon-style
...
This allows styling of entry icons, treeview pixbufs and images. They
can now be forced to be symbolic or regular.
2014-05-14 04:28:34 +02:00
Benjamin Otte
9619b8cff4
API: icontheme: Add 2 new GtkIconLookupFlags
...
GTK_ICON_LOOKUP_FORCE_REGULAR and GTK_ICON_LOOKUP_FORCE_SYMBOLIC can be
used to force a regular or symbolic icon to be loaded, even if the icon
names specify a different version.
This is intended to support the CSS property -gtk-icon-style.
2014-05-14 04:28:34 +02:00
Benjamin Otte
109fcb987b
css: Add a -gtk-icon-style property
...
The values can be:
"requested" - the style as requested
"regular" - use a regular full-color icon
"symbolic" - use a symbolic icon
The property defaults to "requested", so no changes should be seen
unless CSS overrides it.
It is also inherited, so that using this CSS
.toolbar { -gtk-icon-style: symbolic; }
is enough to force the whole toolbar to use symbolic icons.
2014-05-14 04:28:34 +02:00
Benjamin Otte
55f473f4e6
spinner: Don't arbitrarily limit sizes anymore
...
This essentially reverts b33877e173
Now that we can theme the spinner as a real icon using -gtk-icontheme()
this limit is no longer necessary.
2014-05-14 04:28:34 +02:00
Benjamin Otte
f56ba8378b
css: Add -gtk-icon-transform property
...
This property allows transforming icons and is mainly intended to be
used for spinner animations.
2014-05-14 04:28:33 +02:00
Benjamin Otte
965cd4a9c0
css: Add GtkCssTransformValue
...
The value implements the 2D parts of CSS transforms. See
http://www.w3.org/TR/css3-transforms/
For the specification.
All it does is give us an expressive way to define Cairo matrices (and
their transforms)
2014-05-14 04:28:33 +02:00
Benjamin Otte
a56637b330
themingengine: Draw icons for spinners
...
If the -gtk-icon-source property is not set to "none" (the default),
draw it as the spinner icon. Otherwise fall back to previous methods.
2014-05-14 04:28:33 +02:00
Benjamin Otte
226e1cd2b2
css: Add -gtk-icon-source property
...
This is to be used for rendering icon content via CSS, such as spinners
or checkboxes.
2014-05-14 04:28:33 +02:00
Benjamin Otte
633ec8184d
css: Add support for -gtk-icontheme("icon-name")
...
This allows using icons from the icontheme as images in CSS. The
reasoning is that this allows to give the image control about how it's
scaled (by using the icon theme's scaling method. So we can get crisp
images at different resolutions.
2014-05-14 04:28:33 +02:00
Matthias Clasen
f6af96723c
GtkButton: Deprecated setters and getters as well
...
gtk_button_set/get_alignment should be deprecated together
with the properties they are setters/getters for.
2014-05-13 22:19:30 -04:00
Jasper St. Pierre
38445e6326
wayland: Ack the configure immediately
2014-05-13 16:21:57 -04:00
Matthias Clasen
758734a8c5
gtk3-demo: Don't leak in the sizegroup example
...
Nobody was cleaning up the size group.
Pointed out in
https://bugzilla.gnome.org/show_bug.cgi?id=645966
2014-05-13 15:50:23 -04:00
Matthias Clasen
0ee35aa27b
inspector: Show text view subobjects in the tree
2014-05-13 15:20:37 -04:00
Matthias Clasen
069a2603ef
inspector: Add a setting to disable the keybinding
...
This will be needed for lockdown, e.g. on the login screen.
https://bugzilla.gnome.org/show_bug.cgi?id=730007
2014-05-13 15:20:36 -04:00
Matthias Clasen
b8531087bd
inspector: All to turn it on programmatically
...
Export gtk_window_set_interactive_debugging.
https://bugzilla.gnome.org/show_bug.cgi?id=730008
2014-05-13 15:20:36 -04:00
Matthias Clasen
514efb51b0
Add some documentation to the filechooser schema
2014-05-13 15:20:36 -04:00
Matthias Clasen
128748c5cd
Add some documentation to the colorchooser schema
2014-05-13 15:20:36 -04:00
Piotr Drąg
88c9692b2f
Updated POTFILES.in
2014-05-13 19:33:15 +02:00
Matthias Clasen
123715d878
Minor documentation fix
...
Two stray references, pointed out in
https://bugzilla.gnome.org/show_bug.cgi?id=730035
2014-05-13 11:56:29 -04:00
Matthias Clasen
b8309cdf2f
Fix a leftover deprecation warning
2014-05-13 11:56:29 -04:00
Matthias Clasen
ce0325207e
Add a test for the previous fix
2014-05-13 11:56:29 -04:00
Olivier Brunel
0d2d1904b1
treestore: Fix segfault when reordering non-existing children
...
Calling gtk_tree_store_reorder() on a node without children would cause a
segfault; Fixes https://bugzilla.gnome.org/show_bug.cgi?id=698396
Signed-off-by: Olivier Brunel <jjk@jjacky.com >
2014-05-13 11:56:28 -04:00
Matthias Clasen
75c22332d0
Minor doc fixup
2014-05-13 11:56:23 -04:00
Matthias Clasen
0d8c1c9c09
Improve the GTK_STYLE_PROVIDER_PRIORITY_FALLBACK docs
...
Explain possible gotcha with catch-all rules.
2014-05-13 11:20:06 -04:00
Matthias Clasen
63288829b0
Add an alternative keybinding for the inspector
...
Control-Shift-I is already used for similar things in many
applications, so provide Control-Shift-D as an alternative.
https://bugzilla.gnome.org/show_bug.cgi?id=730043
2014-05-13 11:04:43 -04:00
Matthias Clasen
f9a0a96eb4
Avoid deprecation warnings
...
This is testing deprecated API, after all...
2014-05-13 08:45:35 -04:00
Matthias Clasen
ec0a60a248
Deprecate GtkMisc
...
This has been dangling ever since 3.0.
2014-05-13 08:45:00 -04:00
Matthias Clasen
7840bad5d7
Drop most uses of GtkMisc in tests
...
Replace them by GtkWidget h/valign. The only remaining uses
are those where a size group is involved; they can't be replaced
until GtkLabel stops looking at GtkMisc alignment for size
allocation.
2014-05-13 07:43:21 -04:00
Matthias Clasen
49188aeeda
GtkLabel: Drop references to GtkMisc
...
GtkMisc is heading for retirement. Point to the GtkWidget h/valign
properties instead.
2014-05-13 07:14:38 -04:00
Matthias Clasen
8a8ce85ea0
GtkMenuItem: Stop using gtk_misc_set_alignment
...
GtkMisc is heading for deprecation. Just use GtkWidget h/valign.
https://bugzilla.gnome.org/show_bug.cgi?id=650762
2014-05-13 07:06:06 -04:00
Rico Tzschichholz
22eaffba59
Inspector: Fix make dist
2014-05-13 12:27:02 +02:00
Matthias Clasen
42f8b4b48b
GtkButton: Deprecate xalign and yalign properties
...
These are directly passed through to GtkMisc/GtkAlignment, which
are both on the way to deprecation.
2014-05-13 06:26:19 -04:00
Matthias Clasen
d292245659
gtk3-demo: Fix up toolpalette demo
...
The demo appears pretty broken, because some icons are not fitting
well in the grid. Just skip the problematic icons.
2014-05-13 06:26:11 -04:00
Jasper St. Pierre
9b4668c82c
wayland: Update to latest xdg-shell protocol
2014-05-13 02:39:59 -04:00
Jasper St. Pierre
c1efc4ad7b
gdk: Add new _gdk_set_window_state
...
Wayland's mechanism tells us all of our new states, rather than
telling us which ones were added and removed. Add a new private
interface so that we can simply specify the new states as a
bitfield directly rather than having to compute which ones were
added and removed.
2014-05-13 02:39:59 -04:00
Matthias Clasen
807f0aa747
Minor documentation edit
2014-05-12 22:58:47 -04:00
Matthias Clasen
d67751d0cc
gtk3-demo: Drop unneeded gtk_init() call
...
GtkApplication is doing this for us.
2014-05-12 22:38:37 -04:00
Matthias Clasen
1d099fbfae
gtk-demo: Don't use margin-left/right
...
Instead, use margin-start/end, which are the non-deprecated
replacements.
2014-05-12 22:32:51 -04:00
Owen W. Taylor
8f9e50de80
GtkPopover: inherit actions from the relative_to widget
...
Make the relative_to widget the parent for a GtkPopover's
GtkActionGroup. This, for example, makes the menu model of a
GtkMenuButton find action groups attached to the button.
https://bugzilla.gnome.org/show_bug.cgi?id=729915
2014-05-12 16:39:44 -04:00
Sébastien Wilmet
1e3af04dd9
gtk_text_buffer_create_tag(): returns NULL on failure
...
Returns NULL in case of a duplicated tag name in the tag table. It is
still a programmer error to duplicate a name, but if it happens the
behavior is a little nicer (and hopefully doesn't crash).
https://bugzilla.gnome.org/show_bug.cgi?id=614717
2014-05-12 19:10:30 +02:00
Sébastien Wilmet
68ad33cb89
Add boolean return value for gtk_text_tag_table_add()
...
The user doesn't need to check the return value, because if FALSE is
returned it is a programmer error. But it permits a nicer behavior for
gtk_text_buffer_create_tag() in case of failure.
https://bugzilla.gnome.org/show_bug.cgi?id=614717
2014-05-12 19:10:30 +02:00
Piotr Drąg
a06fc473ec
Updated POTFILES.in and POTFILES.skip
...
We still need .ui.h files for the inspector.
2014-05-12 16:35:46 +02:00
Matthias Clasen
ea33d7a1e1
Move GtkIconFactory to deprecated section in the docs
...
Just catching up with reality.
2014-05-11 22:03:27 -04:00
Matthias Clasen
7b17060654
GtkIconFactory: Remove outdated information from the docs
...
The stock browser was removed from gtk3-demo.
2014-05-11 22:02:45 -04:00
Matthias Clasen
49733154a6
Deprecate GtkNumerableIcon
...
It was a failed experiment, it is basically unused, and it complicates
code in GtkIconTheme that we want to rework.
2014-05-11 22:02:32 -04:00
Matthias Clasen
5cd5db1f57
Remove a redundant check
...
gtk_widget_show/_hide already check the widget's visibility.
https://bugzilla.gnome.org/show_bug.cgi?id=728135
2014-05-11 11:56:22 -04:00
Evan Nemerson
38d2458f53
gdk: add many missing (nullable) return value annotations
...
https://bugzilla.gnome.org/show_bug.cgi?id=729834
2014-05-11 11:48:32 -04:00
Nikita Churaev
9187b6bae7
Populate page 2 of the Widget Factory
...
https://bugzilla.gnome.org/show_bug.cgi?id=729598
2014-05-11 10:48:37 -04:00
Nikita Churaev
73b04b5434
Don't stretch switches in Widget Factory
...
https://bugzilla.gnome.org/show_bug.cgi?id=729594
2014-05-11 10:48:22 -04:00
Matthias Clasen
53a67d20a2
extract-strings: Support more GtkBuilder markup
...
The inspector templates are using the <item> tag with an
id attribute, which was causing extract-strings to fail.
Fix this.
2014-05-10 22:04:38 -04:00
Matthias Clasen
f3227688b4
inspector: Fix button path placement
2014-05-10 22:04:37 -04:00
Matthias Clasen
8475540103
inspector: Add a visual tab
...
Move the show updates and flip text direction controls here,
and add controls for baseline and pixel cache debugging.
2014-05-10 22:04:37 -04:00
Matthias Clasen
a145dd7097
Add data-list.ui to list of templates
2014-05-10 22:04:36 -04:00
Matthias Clasen
7a56404e7b
Make the inspector available via GTK_DEBUG
...
Change things around so GTK_DEBUG=interactive also brings
up the inspector window.
2014-05-10 22:04:36 -04:00
Matthias Clasen
975677872f
inspector: Add minimal signal tracing
...
Add rudimentary signal tracing. The signals tab can now count signal
emissions for all signals of the current object.
2014-05-10 22:04:35 -04:00
Matthias Clasen
a0cae6957e
inspector: clean up better when objects go away
...
Instead of manually doing it everywhere, just call set_object (NULL)
from the selection_changed handler. Fix all the set_object() functions
to deal with NULL.
2014-05-10 22:04:35 -04:00
Matthias Clasen
cb85a1fa3a
inspector: Improve the Inspect tooltip
2014-05-10 22:04:34 -04:00
Matthias Clasen
be532bc196
inspector: Add a button for rtl flipping
...
Nice to have a quick way of testing this everywhere.
The implementation is not quite perfect: due to the way text
direction works in GTK+, widgets that appear in the inspector
window while we are flipped will inherit the flipped direction
instead of the fixed direction of the inspector window.
2014-05-10 22:04:34 -04:00
Matthias Clasen
a089ccf5f0
inspector: Add a minimal Data tab
...
This will eventually show useful information about the content
of tree models.
2014-05-10 22:04:33 -04:00
Matthias Clasen
9655337407
inspector: Hide tabs instead of making them insensitive
2014-05-10 22:04:33 -04:00
Matthias Clasen
6303e62440
inspector: Make button path non-homogeneous
2014-05-10 22:04:32 -04:00
Matthias Clasen
e7d3323ba7
inspector: Avoid size changes of button path
2014-05-10 22:04:32 -04:00
Matthias Clasen
46b6a32ef0
inspector: Reorder tabs
2014-05-10 22:04:31 -04:00
Matthias Clasen
bf46950a09
inspector: Move scrolledwindow into prop list template
2014-05-10 22:04:31 -04:00
Matthias Clasen
c744699201
inspector: Avoid a double scrolled window
2014-05-10 22:04:30 -04:00
Matthias Clasen
d4522f54e7
inspector: Make notebook scrollable
2014-05-10 22:04:30 -04:00
Matthias Clasen
6824527cc4
inspector: Add models to the tree
...
It makes sense to add the models of tree views, icon views
and combo boxes to the tree.
2014-05-10 22:04:29 -04:00
Matthias Clasen
d64a9615bc
inspector: Make value ellipsized
...
The values can get long, so ellipsize them.
2014-05-10 22:04:29 -04:00
Matthias Clasen
2af94dff1c
inspector: Add cell areas into the tree
2014-05-10 22:04:28 -04:00
Matthias Clasen
9467c56b94
inspector: Rename Widget Tree to Objects
2014-05-10 22:04:28 -04:00
Matthias Clasen
700657ad19
inspector: Deal with dying objects
...
The widget-tree was not safe against object just going away.
Fix this by using row references instead of iters where
necessary, and by using weak refs to clean up when objects
die.
2014-05-10 22:04:28 -04:00
Matthias Clasen
0dbfef5696
Trivial: shorten some variable names
2014-05-10 22:04:27 -04:00
Matthias Clasen
e9cc859051
inspector: Add a Label column
...
Move the UI strings over to that column, and use the buildable
ID for the name column, where available.
2014-05-10 22:04:27 -04:00
Matthias Clasen
1a6dd9fcd2
GtkApplication: implement the active-window property
...
This was apparently just forgotten.
First bug found by GtkInspector.
2014-05-10 22:04:26 -04:00
Matthias Clasen
8a6421ac30
inspector: Show the default GApplication in the tree
...
This is a handy object to have quickly available.
2014-05-10 22:04:26 -04:00
Matthias Clasen
83503cbf20
inspector: Don't flash the window initially
...
This is flickery, and not really necessary.
2014-05-10 22:04:26 -04:00
Matthias Clasen
768a437c02
Work around a GtkBuilder deficiency
...
It turns out that an <object> with just a <signal> in it does
not work right in GtkBuilder. Work around by adding a property.
2014-05-10 22:04:25 -04:00
Matthias Clasen
cda706b522
inspector: Don't show mapped/realized/visible in the tree
...
It does not really add much over the sensitive/insensitive rendering
that is already indicating which widget is mapped. At the same time,
set up signal handlers so we can update that when the widget changes.
2014-05-10 22:04:25 -04:00
Matthias Clasen
e249c6d6ee
inspector: Don't leak signal handlers
...
Not only was the property list connecting to notify::bla for
each property individually, it was also leaking the signal
handlers when the selected object changed. Fix both.
2014-05-10 22:04:25 -04:00
Matthias Clasen
86adead803
inspector: Minimal support for attributes
...
Show mapping information for cell renderer properties; no editing
yet.
2014-05-10 22:04:24 -04:00
Matthias Clasen
e87addd9ae
inspector: Show interfaces in the object hierarchy
...
This gives a more complete picture.
2014-05-10 22:04:24 -04:00
Matthias Clasen
bf9d22f10f
inspector: Add columns and cell renderers to the tree
...
These are interesting objects that are worth displaying in the tree.
2014-05-10 22:04:23 -04:00
Matthias Clasen
4a68eb6250
inspector: Improve handling of object-valued properties
...
When showing the objects in the tree, use the property name
as the name thats shown in the list. This makes it easier
to differentiate e.g. hadjustment and vadjustment in a
GtkScrolledWindow.
2014-05-10 22:04:23 -04:00
Matthias Clasen
9b65955961
inspector: Fix object-valued properties
...
The code for dealing with object-valued properties had several
bugs that lead to crashes. This change makes it work.
2014-05-10 22:04:23 -04:00
Matthias Clasen
08f2456d5f
inspector: Change label of widget tree
...
The tree contains other objects besides widgets, so label it
'Objects'.
2014-05-10 22:04:22 -04:00
Matthias Clasen
c9dba4b8e0
inspector: Show signals
...
Add a tab that shows available signals for each object. For now,
we only show if each signal has handlers connected or now. More
functionality will be added later.
2014-05-10 22:04:22 -04:00
Matthias Clasen
5fa71c69d8
inspector: Select a window initially
...
The list of toplevels also includes hidden combobox popups
and the like, so we have to be a little careful. To ensure
the right choice, we now pick the first visible window
that is not a GtkInspectorWindow.
2014-05-10 22:04:21 -04:00
Matthias Clasen
a3713b51ff
inspector: Drop an unused function
2014-05-10 22:04:21 -04:00
Matthias Clasen
e586af3cf4
inspector: Make translatable
...
Mark strings in the source and in the templates as translatable.
We use the same extract-strings utility as for libgtk itself.
2014-05-10 22:04:20 -04:00
Matthias Clasen
643b6f147b
Move modules/other/parasite to modules/inspector
...
No need for the extra subdirectory, and the name should
match the module name.
2014-05-10 22:04:20 -04:00
Matthias Clasen
ccff3e952d
Rename parasite to gtkinspector
...
This avoids namespace collisions with the original
gtkparasite project, and adds the gtk prefix to
all symbols and type names.
2014-05-10 22:04:20 -04:00
Matthias Clasen
19bf88acfa
Add a 'toggle-debugging' keybinding
...
This is bound to Ctrl-Shift-I (for inspector) by default.
It loads the gtkparasite module and opens a parasite window.
2014-05-10 22:04:19 -04:00
Matthias Clasen
7f9a0dbe16
Add private api to load a single module
...
In the following commits, this function will be used to load the
gtkparasite module.
2014-05-10 22:04:19 -04:00
Matthias Clasen
87e3484aa7
parasite: Don't open a window upon load
...
Instead, we want to let GTK+ open a window whose life-cycle
it can control. We just ensure that all our types are registered
when the module is loaded, so GTK+ can find them.
2014-05-10 22:04:18 -04:00
Matthias Clasen
38bbde200e
parasite: Two fixes for the property cell renderer
2014-05-10 22:04:18 -04:00
Matthias Clasen
d7c5b55846
parasite: Some formatting cleanup
2014-05-10 22:04:18 -04:00
Matthias Clasen
36494dc8f4
parasite: Include file cleanup
2014-05-10 22:04:17 -04:00
Matthias Clasen
5b249be1f9
parasite: Use a template for window
2014-05-10 22:04:17 -04:00
Matthias Clasen
33ccb00221
parasite: some formatting tweaks
2014-05-10 22:04:17 -04:00
Matthias Clasen
33d2044406
parasite: Use a template for themes
2014-05-10 22:04:16 -04:00
Matthias Clasen
ee7cc6d189
parasite: Use a template for prop list
2014-05-10 22:04:16 -04:00
Matthias Clasen
ead05d0954
parasite: Use template for widget tree
2014-05-10 22:04:15 -04:00
Matthias Clasen
6f1a786413
parasite: Use template for classes list
2014-05-10 22:04:15 -04:00
Matthias Clasen
0eb330613b
parasite: Use template for css editor
2014-05-10 22:04:15 -04:00
Matthias Clasen
3c22fc4ef6
parasite: Use template for object hierarchy
2014-05-10 22:04:14 -04:00
Matthias Clasen
3f5d21abec
parasite: Use template for button path
2014-05-10 22:04:14 -04:00
Matthias Clasen
e43aeb9a1f
parasite: Allow panes to shrink
...
The notebook is too wide.
2014-05-10 22:04:14 -04:00
Matthias Clasen
5fcd6ba21b
parasite: Use the right icon name for inspect
2014-05-10 22:04:14 -04:00
Matthias Clasen
828acee981
parasite: Don't show hicolor as an icon theme
...
It really isn't.
2014-05-10 22:04:13 -04:00
Matthias Clasen
9bc7cfa6ba
parasite: Don't show key themes
...
But show the builtin theme, even if it doesn't show up in the
filesystem.
2014-05-10 22:04:13 -04:00
Matthias Clasen
9fbb704418
parasite: Turn the inspect button back into an image button
2014-05-10 22:04:12 -04:00
Matthias Clasen
8f96238194
parasite: Make flashing work better
...
The positioning of the highlight window was not reliable; instead
just use a after-handler for the draw signal, in the same way that
drag highlights are drawn by GTK+ itself.
And copy the code for grabbing a widget via pointer from testgtk;
that code is known to work.
2014-05-10 22:04:12 -04:00
Matthias Clasen
01cb166819
parasite: Drop an unused field
2014-05-10 22:04:11 -04:00
Matthias Clasen
f78d91e5fc
parasite: Make child properties insensitive when empty
...
When the selected object is not a widget, make the child property
list insensitive.
2014-05-10 22:04:11 -04:00
Matthias Clasen
413faa55a0
parasite: Display child properties too
2014-05-10 22:04:10 -04:00
Matthias Clasen
2166a9b163
parasite: Use a window group
...
By putting the parasite window in a separate group, we can interact
with it even when there is a modal dialog blocking the application
window
2014-05-10 22:04:10 -04:00
Matthias Clasen
81af602dda
Initial import
...
This is a copy of https://github.com/chipx86/gtkparasite.git
with minimal edits to make it build.
2014-05-10 22:04:09 -04:00
Benjamin Otte
2dc100fa76
css: Add forgotten files
...
Forgot to add those files in 3a72e2fb24
2014-05-11 04:00:55 +02:00
Benjamin Otte
0e462f0d2d
css: Implement "all" shorthand
...
Here's the spec:
http://dev.w3.org/csswg/css-cascade/#all-shorthand
Also use it in the reset-to-defaults CSS where a bunch of properties had
been missing.
2014-05-11 03:23:55 +02:00
Benjamin Otte
3a72e2fb24
css: Implement "unset"
...
Quoting the spec:
If the cascaded value of a property is the unset keyword,
then if it is an inherited property, this is treated as
inherit, and if it is not, this is treated as initial.
Spec in question:
http://dev.w3.org/csswg/css-cascade/
Also use unset in the reset-to-defaults.css we use to reset css in
reftests.
2014-05-11 03:23:55 +02:00
Benjamin Otte
f2258cb05c
reftests: Create the surface after running the main loop
...
Running the main loop may cause resizes, so creating the surface based
on the size before running it seems wrong.
2014-05-11 03:23:55 +02:00
Benjamin Otte
fa8ca5fd13
iconhelper: Simplify code
...
In the GTK_IMAGE_ICON_NAME case, instead of keeping around the icon_name,
create a GThemedIcon and use that. This way, we can reuse the code paths
for the GTK_IMAGE_GICON case.
2014-05-11 03:23:54 +02:00
Emmanuele Bassi
61ed31a473
win32embed: Set the visible flag and avoid recursion
...
We have to use the internal accessor to the visible flag, instead of
calling gtk_widget_set_visible(), from within the show() and hide()
implementations - otherwise we'll recurse.
https://bugzilla.gnome.org/show_bug.cgi?id=721069
2014-05-10 19:42:35 +01:00
Daniel Mustieles
c0200b9a68
Updated Spanish translation
2014-05-10 19:53:22 +02:00
Daniel Mustieles
207f2984d2
Updated Spanish translation
2014-05-10 19:53:04 +02:00
Matthias Clasen
f5e64936da
GtkWindow: small cleanup
...
The window type is a construct-only property, so we should
pass it to g_object_new, not set it after the fact in the
constructor.
2014-05-09 17:13:53 -04:00
Cosimo Cecchi
b0ace67712
widget: deprecate focus-line-width style property
...
Nothing in GTK uses it anymore.
2014-05-09 11:02:46 -07:00
Cosimo Cecchi
57f4d3d78a
flowbox: don't use focus-line-width
2014-05-09 11:02:46 -07:00
Cosimo Cecchi
9eb1e1b15e
listbox: don't use focus-line-width
2014-05-09 11:02:46 -07:00
Cosimo Cecchi
13649a3fbc
colorscale: don't use focus-line-width
2014-05-09 11:02:46 -07:00
Cosimo Cecchi
caa73b2128
modelbutton: don't use focus-line-width
2014-05-09 11:02:46 -07:00
Cosimo Cecchi
e2f2571dee
range: don't use focus-line-width
2014-05-09 11:02:46 -07:00
Cosimo Cecchi
69f2fecb1c
expander: don't use focus-line-width
2014-05-09 11:02:46 -07:00
Cosimo Cecchi
853dcc615d
notebook: don't use focus-line-width
2014-05-09 11:02:45 -07:00
Cosimo Cecchi
1627c903d8
spinbutton: remove unused code
2014-05-09 11:02:45 -07:00
Cosimo Cecchi
9f7bab0aca
entry: remove unused code
2014-05-09 11:02:45 -07:00
Cosimo Cecchi
92d23be47d
switch: don't use focus-line-width
2014-05-09 11:02:45 -07:00
Cosimo Cecchi
8fff30090b
radiobutton: don't use focus-line-width
2014-05-09 11:02:45 -07:00
Cosimo Cecchi
a32260660b
checkbutton: don't use focus-line-width
2014-05-09 11:02:45 -07:00
Cosimo Cecchi
a2a1c6da95
cellarea: don't use focus-line-width
...
Use CSS padding instead.
2014-05-09 11:02:45 -07:00
Cosimo Cecchi
2cbf3c66ef
treeview: use the CELL style class while doing cell size request
...
Since we use the same style class later when we draw them. Otherwise
we'll get inconsistent results for CSS borders/paddings between the two
cycles.
2014-05-09 11:02:45 -07:00
Cosimo Cecchi
0ff3f16da1
calendar: don't use focus-line-width
2014-05-09 11:02:44 -07:00
Cosimo Cecchi
694b209094
button: don't use focus-line-width
2014-05-09 11:02:44 -07:00
Cosimo Cecchi
bbadfbcd2a
button: remove unused code
2014-05-09 11:02:44 -07:00
Cosimo Cecchi
e8c906966e
widget: deprecate focus-line-pattern style property
...
Nothing in GTK uses it.
2014-05-09 11:02:44 -07:00
Cosimo Cecchi
a2decd1f2f
widget: deprecate focus-padding style property
...
There's no use left inside GTK.
2014-05-09 11:02:44 -07:00
Cosimo Cecchi
5cb43c70f7
calendar: simplify code
...
Always use the newly introduced get_component_paddings() instead of
doing the work manually every time.
2014-05-09 11:02:44 -07:00
Cosimo Cecchi
1e66a7ccdb
calendar: use CSS paddings instead of focus pad for day/week areas
...
focus-padding is going away.
2014-05-09 11:02:44 -07:00
Cosimo Cecchi
83b4e67307
range: remove unused code
2014-05-09 11:02:44 -07:00
Cosimo Cecchi
c62d6fea70
colorscale: don't use focus padding
2014-05-09 11:02:44 -07:00
Cosimo Cecchi
365ab7f73b
range: don't use focus padding
2014-05-09 11:02:43 -07:00
Cosimo Cecchi
d0b8ef3a6f
scale: remove unused code
2014-05-09 11:02:43 -07:00
Cosimo Cecchi
24a422631d
expander: don't use focus padding
2014-05-09 11:02:43 -07:00
Cosimo Cecchi
d2f77984dc
expander: add support for CSS padding and borders
...
We need to do this since we're about to remove focus-pad.
2014-05-09 11:02:43 -07:00
Cosimo Cecchi
9a811e2c94
notebook: don't use focus padding
2014-05-09 11:02:43 -07:00
Cosimo Cecchi
80981f5c95
modelbutton: don't use focus padding
2014-05-09 11:02:43 -07:00
Cosimo Cecchi
053b21cc1f
flowbox: don't use focus padding
2014-05-09 11:02:43 -07:00
Cosimo Cecchi
241b4c0c75
listbox: don't use focus padding
2014-05-09 11:02:43 -07:00
Cosimo Cecchi
ceab6ee15d
switch: don't use focus padding
2014-05-09 11:02:42 -07:00
Cosimo Cecchi
52e40a1725
treeview: don't use focus padding
2014-05-09 11:02:42 -07:00
Cosimo Cecchi
c20e8b0b49
checkbutton: support CSS paddings and borders
...
We need this since we just removed focus-padding.
2014-05-09 11:02:42 -07:00
Cosimo Cecchi
99f0776f19
checkbutton: don't use focus padding
2014-05-09 11:02:42 -07:00
Cosimo Cecchi
8b068e996f
button: don't read focus padding property
...
We're going to deprecate it.
2014-05-09 11:02:42 -07:00
Cosimo Cecchi
b03c22e0c9
widget: deprecate interior-focus style property
...
Nothing uses it anymore inside GTK.
2014-05-09 11:02:42 -07:00
Cosimo Cecchi
ce8846521e
reftests: never set interior-focus
2014-05-09 11:02:42 -07:00
Cosimo Cecchi
521475da4d
win32: don't set interior-focus in the theme
2014-05-09 11:02:42 -07:00
Cosimo Cecchi
a3cbcc6451
textview: always use interior focus
2014-05-09 11:02:42 -07:00
Cosimo Cecchi
5a16ec366d
spinbutton: remove unused code
2014-05-09 11:02:41 -07:00
Cosimo Cecchi
0c6cc487d6
radiobutton: always use interior focus
2014-05-09 11:02:41 -07:00
Cosimo Cecchi
b77a8bcb95
expander: always use interior focus
2014-05-09 11:02:41 -07:00
Cosimo Cecchi
21e32f1989
checkbutton: always use interior focus
2014-05-09 11:02:41 -07:00
Cosimo Cecchi
779707fabb
entry: always use interior focus
2014-05-09 11:02:41 -07:00
Cosimo Cecchi
4c06925ec2
button: always use interior focus
...
We're going to deprecate the property, and this is what everyone has
been using.
2014-05-09 11:02:41 -07:00
Cosimo Cecchi
f656fc5997
widget-factory: use same spacing for buttons column
...
So that they nicely align with entries. Useful when tweaking the theme.
2014-05-09 11:02:41 -07:00
Matthias Clasen
f4d02bd9c1
GtkCellArea: allow finding attributes at runtime
...
This will allow e.g. GtkInspector to display attribute mappings.
http://bugzilla.gnome.org/show_bug.cgi?id=729817
2014-05-08 14:09:04 -04:00
Matthias Clasen
c813765430
GtkListBox: improve the docs
...
The documentation was not really clear about ::row-selected
not working for multi-selection.
2014-05-08 07:33:01 -04:00
David Mansfield
00275dfc9f
GdkCursor: Don't leak a cairo surface
...
The function gdk_cursor_new_from_pixbuf creates a cairo surface
to pass to its backend implementation, but doesn't destroy it
afterwards.
https://bugzilla.gnome.org/show_bug.cgi?id=729670
2014-05-07 19:29:56 -04:00
William Jon McCann
74405cc964
Update the design for progress bars
...
We now use a narrower trough and paint the optional text
beside the trough instead of inside it. This makes for a much
cleaner appearance and more readable text.
2014-05-07 09:56:35 -04:00
Matthias Clasen
644f08a771
Remove debug spew
2014-05-07 06:51:51 -04:00
William Jon McCann
1c30470558
widget-factory: add linked entry and button example
2014-05-07 05:03:45 -04:00
Carlos Garnacho
ac5993a7e7
wayland: Fix c&p typo in touch capabilities handling.
2014-05-06 18:37:57 +02:00
Matthias Clasen
cdfcd5fc85
Bloatpad: port to new accel api
2014-05-06 10:58:52 -04:00
Benjamin Otte
352e28a138
viewport: Don't subtract borders and padding from -1
...
-1 is a special value for "undefined" and needs to stay that way
https://bugzilla.gnome.org/show_bug.cgi?id=729607
2014-05-06 04:02:40 +02:00
Marcus Karlsson
c39b6be22b
docs: Fix name of GtkFileChooser's Create Folder button
...
The documentation for GtkFileChooser references the button which allows
the user to create new folders as the New Folder button, although the
label actually says Create Folder.
Update the documentation to say Create Folder instead of New Folder.
https://bugzilla.gnome.org/show_bug.cgi?id=729475
2014-05-05 20:54:47 -04:00
Marcus Karlsson
7850fb62ea
docs: fix typos in gtk_file_chooser_set_local_only
...
Change "file are files" to "file or files." Also remove an excessive
"file" in "file system."
https://bugzilla.gnome.org/show_bug.cgi?id=729473
2014-05-05 20:47:04 -04:00
Matthias Clasen
22ab2ca2a5
a11y: Avoid a warning
...
The listbox row accessible code was giving warnings when
parent is NULL, at destruction time.
2014-05-05 19:46:04 -04:00
Juan Pablo Ugarte
b9f91bcd8c
GtkColorButton: Fix recursion loop in "use-alpha" set_property()
2014-05-05 15:31:50 -03:00
Benjamin Otte
748b2bf5ae
a11y: Disable deprecation warnings in AtkMisc implementation
2014-05-05 16:10:16 +02:00
Benjamin Otte
a89c598617
combobox: Add workaround so evolution doesn't crash
...
Removing the NULL checks in 7f60cab47d
caused evolution to crash. It chains up with NULL and that used to work.
This patch should be reverted for GTK 4.0.
https://bugzilla.gnome.org/show_bug.cgi?id=729496
2014-05-05 15:53:03 +02:00
Benjamin Otte
18a594c392
applicationwindow: Properly unmap the menubar widget
2014-05-05 15:48:02 +02:00
Benjamin Otte
3aa357bcab
tests: Add test for latest patch
...
This tesst infloops without it.
2014-05-05 15:48:02 +02:00
Benjamin Otte
65c4c1555d
css: Fix printing code for CSS strings and idents
...
It used to infloop on special characters.
2014-05-05 15:48:02 +02:00
Benjamin Otte
b356d81410
css: Split out a common function
...
It's used in two places already, and Iwant to use it in a third one.
2014-05-05 15:48:02 +02:00
Matthias Clasen
d495ab1ca0
Small documentation update
...
Don't show an example that doesn't work anymore.
2014-05-05 09:41:06 -04:00
Matthias Clasen
7e8703918b
Small documentation fixes
...
Pointed out in
https://bugzilla.gnome.org/show_bug.cgi?id=729461
2014-05-05 07:25:27 -04:00
Matthias Clasen
3e80ce39e1
GtkApplication: Clarify docs a bit
...
Explicitly mention how gtk_application_set_accels_for_action can
be used to remove all accelerators for an action.
https://bugzilla.gnome.org/show_bug.cgi?id=729451
2014-05-05 07:25:27 -04:00
Ihar Hrachyshka
349ed52b7b
Updated Belarusian translation
2014-05-04 22:09:19 +00:00
Paolo Borelli
abf10a74b7
listbox: check gsequence end iter in get_row_at_index
2014-05-04 19:45:28 +02:00
Matthias Clasen
d1d2763d00
GtkHeaderBar: Allow overdrawing
...
The draw function of GtkHeaderBar was returning TRUE, causing
after-signal handlers to not run. This breaks e.g. drawing of
dnd hightlights. Fix that.
2014-05-03 13:16:46 -04:00
Matthias Clasen
a41e2b901d
Fix a thinko in the last color button change
...
Using the interface method in the set_property implementation
leads to an infinite recursion, if the interface method is in
turn using g_object_set.
2014-05-02 21:09:05 -04:00
Matthias Clasen
70a5e66d2f
a11y tests: Avoid deprecation warnings
...
We can't drop the index-based AtkTable methods unless we change
the output format, so just ignore the deprecations for now.
2014-05-02 20:59:00 -04:00
Matthias Clasen
1bf6ad314d
a11y tests: Update expected output
...
The new AtkValue interface aways returns doubles, which causes
the range to be printed out with decimals.
2014-05-02 20:53:02 -04:00
Matthias Clasen
4fc256de8a
a11y tests: Use the new AtkValue interface
...
The old interface is deprecated, and we just implemented the
new one, so lets test it.
2014-05-02 20:52:56 -04:00
Matthias Clasen
47094a2a8a
GtkDialog: Reduce a g_warning to a g_message
...
Otherwise, this breaks our testsuite.
2014-05-02 20:47:56 -04:00
Matthias Clasen
9d7f7ddadf
GtkSpinButton: Implement new AtkValue interface
...
The AtkValue interface has been replaced in ATK 2.12.
Implement the new one in addition to the old one.
2014-05-02 20:47:16 -04:00
Matthias Clasen
fc7e7495a6
GtkScaleButton: Implement new AtkValue interface
...
The AtkValue interface has been replaced in ATK 2.12.
Implement the new one in addition to the old one.
2014-05-02 20:47:00 -04:00
Matthias Clasen
516cd70780
GtkRange: Implement new AtkValue interface
...
The AtkValue interface has been replaced in ATK 2.12.
Implement the new one in addition to the old one.
2014-05-02 20:46:45 -04:00
Matthias Clasen
1d50657740
GtkProgressBar: Implement new AtkValue interface
...
The AtkValue interface has been replaced in ATK 2.12.
Implement the new one in addition to the old one.
2014-05-02 20:46:30 -04:00
Matthias Clasen
98affc6829
GtkPaned: Implement new AtkValue interface
...
The AtkValue interface has been replaced in ATK 2.12.
Implement the new one in addition to the old one.
2014-05-02 20:46:17 -04:00
Matthias Clasen
987cce9e65
GtkLevelBar: Implement new AtkValue interface
...
The AtkValue interface has been replaced in ATK 2.12.
Implement the new one in addition to the old one.
2014-05-02 20:46:03 -04:00
Matthias Clasen
456dffcbfd
GtkWidget: Mark deprecated properties as such
...
The ::style, ::margin-left and ::margin-right properties are all
deprecated.
2014-05-02 19:25:27 -04:00
Matthias Clasen
f66e239fe4
Drop unneeded deprecation suppression
...
Removing this did not produce any deprecation warnings.
2014-05-02 18:50:52 -04:00
Matthias Clasen
4cdc32974a
queryimmodules: Localize suppressed deprecation
...
Drop the blanket GDK_DISABLE_DEPRECATION_WARNINGS and avoid
deprecated API as much as possible.
2014-05-02 18:48:36 -04:00
Matthias Clasen
67b10e649e
GtkColorButton: Reduce internal use of deprecated API
...
Drop the blanket GDK_DISABLE_DEPRECATION_WARNINGS and avoid
deprecated API as much as possible.
2014-05-02 18:42:18 -04:00
Matthias Clasen
69234cfecc
GtkColorButton: Update deprecation warnings
...
It is not great to have deprecation warnings point to another
deprecated function. Update them to point to the eventual
replacement.
2014-05-02 18:41:29 -04:00
Matthias Clasen
c4ec89cf9d
GtkDialog: Warn about lack of transient parents
...
We want make it mandatory for dialogs to have transient parents,
eventually. This is a first step in that direction.
2014-05-02 18:23:58 -04:00
Matthias Clasen
3db60baf2d
teststack: don't enumerate transitions manually
...
Thats what introspection is for.
2014-05-02 17:43:18 -04:00
Matthias Clasen
3957ce4898
GtkStack: Avoid compiler warnings
...
gcc warns about unhandled enum values in these switch statements,
so add an empty default: case to placate the compiler.
2014-05-02 17:15:49 -04:00
Philip Chimento
5b5813fcdc
stack: Add counterparts of OVER_UP_DOWN transition
...
The GtkStackTransitionType enum now has OVER_DOWN_UP, OVER_LEFT_RIGHT,
and OVER_RIGHT_LEFT values to complement OVER_UP_DOWN.
https://bugzilla.gnome.org/show_bug.cgi?id=726676
2014-05-02 16:54:41 -04:00
Philip Chimento
a27b0bad86
stack: More readability when adding transitions
...
This small refactor makes the code more readable when adding more
transition types that have left, right, up, and down variations.
It adds inline boolean functions to tell information about transition
types (avoiding long if clauses) and changes long chains of "else if
(transition_type == ...)" into switch statements. Both are only likely
to get longer as more transition types are added.
https://bugzilla.gnome.org/show_bug.cgi?id=726676
2014-05-02 16:54:41 -04:00
Cosimo Cecchi
c05525127b
overlay: don't have a custom draw implementation
...
We can't think with Benjamin of a reason this should be needed, so let's
just remove it.
2014-05-02 20:42:54 +02:00
Cosimo Cecchi
a303547489
themingengine: only round outline corners after shrinking
...
Ensures the correctness of the applied radius.
2014-05-02 20:42:54 +02:00
Juan Pablo Ugarte
b059098c71
GtkBuilder: added template parent type check.
2014-05-02 14:38:05 -03:00
Juan Pablo Ugarte
35df3bc182
GtkFlowBox: fixed NULL dereferencing segfaults
2014-05-01 20:31:59 -03:00
Juan Pablo Ugarte
a05b55872b
GtkMenu: fixed more NULL dereferencing segfault
2014-05-01 20:31:31 -03:00
Juan Pablo Ugarte
018c394c52
GtkGrid: gtk_grid_get_size_for_size() do not dereference a NULL pointer.
2014-05-01 19:54:43 -03:00
Juan Pablo Ugarte
49fa04212b
GtkBuilder: improved parsing error report for invalid properties and signals.
...
Added GTK_BUILDER_ERROR_INVALID_PROPERTY and GTK_BUILDER_ERROR_INVALID_SIGNAL
error codes
ObjectInfo: Use a GType instead of a char * for the class name.
PropertyInfo: Use a GParamSpec instead of a char * for the property name.
SignalInfo: Use signal id and detail quark instead of a detailed signal name string.
This not only save us a few malloc in each case but lets us simplify the code
and report unknown properties and signals as a parsing error instead of just
printing a warning.
2014-05-01 17:59:53 -03:00
Juan Pablo Ugarte
c4afca906c
GtkBuilder: fixed a few minor memory leaks.
...
Fixed memory leaks in parse_object(), parse_template() and parse_signal() functions.
Parameters value where strduped before the last posible return and not freed.
2014-05-01 17:59:53 -03:00
Руслан Ижбулатов
0dd810ee22
W32: override selected button style to remove colored background
...
https://bugzilla.gnome.org/show_bug.cgi?id=729353
2014-05-01 18:20:20 +00:00
Руслан Ижбулатов
b83880b981
W32: Add a theme for .app-notification
...
This is copied from Adwaita. Looks sufficiently ok.
https://bugzilla.gnome.org/show_bug.cgi?id=729346
2014-05-01 17:54:46 +00:00
Cosimo Cecchi
24fd96d837
listbox: fix a segfault
...
Don't dereference a NULL pointer.
2014-05-01 19:48:41 +02:00
Cosimo Cecchi
7f60cab47d
combobox: fix a segfault
...
Don't dereference a NULL pointer.
2014-05-01 19:44:12 +02:00
Cosimo Cecchi
489970bcdc
themingengine: use outlines to render focus rings
...
Instead of the old non-CSS implementation. This allows us to get rid of
the very last piece of custom theming in Adwaita.
2014-05-01 18:14:49 +02:00
Cosimo Cecchi
e8cbbedbb2
css: add properties for outline-radius
...
Both a shorthand and individual properties. This is not officially part
of the CSS standard, but there's precedence for it at least in Mozilla:
https://developer.mozilla.org/en-US/docs/Web/CSS/-moz-outline-radius
2014-05-01 18:14:49 +02:00
Cosimo Cecchi
a60ba815d9
treeview: respect focus-padding when rendering focus
...
Adwaita had a hack to work this around, but now that we're moving focus
ring rendering into GTK, we can just fix the treeview instead.
2014-05-01 18:14:49 +02:00
Benjamin Otte
b4282e5ef1
treeview: Always call size request funcs with valid out pointers
...
Not doing so causes crashes since
a158a2aa48c8023f99963642cc2657bff207b82NULLd
2014-05-01 15:16:17 +02:00
Benjamin Otte
c0f556ab71
revealer: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:28 +02:00
Benjamin Otte
17e0f9fb0a
popover: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:28 +02:00
Benjamin Otte
b4ee8a9daf
menuitem: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:28 +02:00
Benjamin Otte
34cfd5cd78
menu: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:28 +02:00
Benjamin Otte
fd527691a8
levelbar: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:28 +02:00
Benjamin Otte
6be0603215
eventbox: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:28 +02:00
Benjamin Otte
d7a3e67025
listbox: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:28 +02:00
Benjamin Otte
562147c267
frame: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:28 +02:00
Benjamin Otte
209781ae3c
headerbar: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:28 +02:00
Benjamin Otte
68ceab6872
infobar: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:28 +02:00
Benjamin Otte
f72b496a45
grid: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:28 +02:00
Benjamin Otte
9ee00c3522
scrolledwindow: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:28 +02:00
Benjamin Otte
ddbd71e22a
switch: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:28 +02:00
Benjamin Otte
c3dd043765
toolbar: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:28 +02:00
Benjamin Otte
a158a2aa48
treeview: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:28 +02:00
Benjamin Otte
9652b8cf82
viewport: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:27 +02:00
Benjamin Otte
29a4f0131e
viewport: Implement hfw properly
...
Previously, the code would fall back on GtkBin's hfw implementation
which didn't account for padding and borders.
2014-05-01 14:51:27 +02:00
Benjamin Otte
b261fc64e2
viewport: Use a convenience function
...
That function looks longer than not using it, but we'll need it in the
next commit.
2014-05-01 14:51:27 +02:00
Benjamin Otte
2e2e3a5e24
viewport: Request 2x border-width
...
It's nice that bugs get pointed out in code comments. Fixing them would
probably have been preferrable though.
2014-05-01 14:51:27 +02:00
Benjamin Otte
db791ba3f5
widget: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:27 +02:00
Benjamin Otte
43e470dad1
flowbox: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:27 +02:00
Benjamin Otte
7455ab72f8
combobox: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:27 +02:00
Benjamin Otte
3914bc9ce6
button: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:27 +02:00
Benjamin Otte
71fe1a5fe3
alignment: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:27 +02:00
Benjamin Otte
e6b15c88ca
arrow: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:27 +02:00
Benjamin Otte
a1bba344f2
spinner: Remove unneeded checks
...
Size vfuncs always get non-null out variables passed, so no need to
check for NULL.
2014-05-01 14:51:27 +02:00
Cosimo Cecchi
67981b1831
modules: remove the pixbuf engine directory
...
This is not used anywhere, and is commented out of the build because it
doesn't compile. Time for some spring cleaning...
2014-05-01 11:22:11 +02:00
Piotr Drąg
4101adb7ac
Updated POTFILES.skip
2014-04-30 22:15:01 +02:00
Matthias Clasen
ff87672780
GtkSearchBar: fix the template
...
There was a mismatch between GtkSearchBar being derived from GtkBin
and the template claiming the parent to be GtkBox.
2014-04-29 21:46:38 -04:00
Matthias Clasen
4d36fab72a
widget-factory: populate the second page more
...
Add back a menubar example that was lost a while ago, and also
include a searchbar and an infobar.
2014-04-29 21:43:11 -04:00
Matthias Clasen
bc057d849a
widget-factory: rearrange page 2 a bit
2014-04-29 16:51:44 -04:00
Benjamin Otte
f0ebb15dab
reftests: Add test for latest commit
...
Check that the label gets linebroken properly.
2014-04-29 19:36:26 +02:00
Benjamin Otte
8b15cd33ee
window: Subtract shadow from passed in width for height
...
... and height for width in size requests. Fixes mislayout in
control-center universal access panel.
2014-04-29 19:36:26 +02:00
Benjamin Otte
73aa7bd2f5
widgets: Remove (GtkTickCallback) casts
...
Instead, make the functions conform to the prototype, so that casting
isn't needed.
2014-04-29 19:35:29 +02:00
Matthias Clasen
6061f234a9
GtkMenuSectionBox: Don't show separators for nested subsections
...
...unless they are labeled.
To implement this, keep track of the nesting depth of section boxes,
starting from 0 for the toplevel and the submenu ones, and only
insert unlabeled separators if the depth is at most 1.
2014-04-29 12:19:53 -04:00
Matthias Clasen
f3ba001a1d
GtkMenuSectionBox: Always show separators for labeled sections
...
...unless they are empty.
2014-04-29 12:19:53 -04:00
Matthias Clasen
4f293c427c
Add a comment with rules for separators
2014-04-29 12:19:53 -04:00
Juan Pablo Ugarte
9753f9f55f
Added template test case to builder test.
2014-04-29 12:29:18 -03:00
Matthias Clasen
effc7514e7
GtkMenuSectionBox: don't leak
...
This wasn't fully fleshed out yet.
2014-04-29 10:18:22 -04:00
Matthias Clasen
f248b21b1b
widget-factory: Add a horizontal-buttons example
...
Sadly, we don't have good icons for payment methods...
2014-04-29 06:22:28 -04:00
Alexander Larsson
c0a87a85f4
treeview: Fix prelight redraw when adjustment changes
...
When the adjustment changes (due to e.g. a mouse wheel scroll) we update
the prelight. The part that un-prelights the previous prelight was
broken by the the pixel cache, as it called update_prelight in the
middle of the scrolling operation, where the windows were moved
but the tree_view->priv->dy was not changed to the new value. This
caused the updates to the pixel cache to go to the wrong place.
We fix this by fully doing the scroll before we update_prelight().
https://bugzilla.gnome.org/show_bug.cgi?id=728284
2014-04-29 09:12:02 +02:00