dbbab0791d
GdkGLContext: Track shared context
...
This allows us to read it back, but primarily it ensures
the shared context wrapper stays alive as long as the context.
2014-10-30 12:43:03 +01:00
fb50015519
GdkGLContext: Change the way we track the current context
...
To properly support multithreaded use we use a global GPrivate
to track the current context. Since we also don't need to track
the current context on the display we move gdk_display_destroy_gl_context
to GdkGLContext::discard.
2014-10-30 12:43:03 +01:00
eb8f60f141
Adwaita: osd rationalization and tweakings
...
Removed bright translucent outer border for "top level" osd widgets,
insensitive osd entry styled, more meaningfull color variables and
some code rationalization.
2014-10-30 11:50:27 +01:00
afd9709aff
GdkWindowX11: Keep the impl window cairo surface around until destroy
...
We used to have a weak ref to the cairo surface and it was keep
alive by the references in the normal windows, but that reference
was removed by d48adf9cee
, causing
us to constantly create and destroy the surface.
https://bugzilla.gnome.org/show_bug.cgi?id=738648
2014-10-30 10:32:47 +01:00
47191ce173
Make the inspector window translucent instead of lowering
...
Make the inspector window click-through and see-through
when we can, instead of lowering it. This is useful, since
Wayland has no lowering.
2014-10-29 23:29:20 -04:00
7a1eabaf62
Adwaita: fix for the previous colorswatch fix...
...
Make the selected colorswatch inhert on backdrop.
2014-10-29 19:55:32 +01:00
43a2676c3f
Adwaita: fix selected colorswatch white border
2014-10-29 19:50:58 +01:00
bfd4933aa3
Adwaita: first round of OSD style converage
...
Some code refactoring, entry and spinbuttons and flat buttons
styled, more to come...
2014-10-29 18:40:28 +01:00
b0313c7bcf
wayland: Emit GDK_OWNER_CHANGE events around wl_data_offer changes
...
This way the upper GtkClipboard code emits correctly ::owner-change when
receiving these events.
2014-10-29 18:33:48 +01:00
c7451bbf3b
GdkX11GLContext: Fix leak
2014-10-29 13:52:04 +01:00
8c7623de84
Cache default gdk visuals in the GDK_VISUALS property on the root window
...
This means we don't have to try to initialize opengl in every gtk
instance that is stated. It will only happen for the first one.
https://bugzilla.gnome.org/show_bug.cgi?id=738670
2014-10-29 13:35:17 +01:00
dae447728d
X11: Pick better system and rgba visuals for GL
...
We want to create windows with the default visuals such that we then
have the right visual for GLX when we want to create the paint GL
context for the window.
For instance, (in bug 738670) the default rgba visual we picked for the
NVidia driver had an alpha size of 0 which gave us a BadMatch when later
trying to initialize a gl context on it with a alpha FBConfig.
Instead of just picking what the Xserver likes for the default, and just
picking the first rgba visual we now actually call into GLX to pick
an appropriate visual.
2014-10-29 13:35:17 +01:00
8765970ba1
Remove a redundant call
...
No need to set shapes twice in a row.
2014-10-29 06:49:59 -04:00
0b4c37624a
GtkPopoverMenu: Add API to open a submenu
...
This allows alternative menu switching to be implemented, besides
the builtin GtkModelButton support.
2014-10-29 06:49:59 -04:00
f83c903ed8
Add a scale to the popover menu example
...
Demonsttrate that this is flexible enough for the intended uses.
2014-10-29 06:49:59 -04:00
6e001acbf9
Add documentation
...
Document GtkModelButton and GtkPopoverMenu.
2014-10-29 06:49:59 -04:00
228e51b319
Adapt the testpopover example
...
Add the required boxes for each submenu. We now need to specify the
submenu name only once per submenu.
2014-10-29 06:49:59 -04:00
55b7838b4f
GtkPopoverMenu: Simplify
...
Change things so each submenu is a single child, and users are
required to create the box themselves.
2014-10-29 06:49:59 -04:00
2b5a49c285
Adapt the testpopover example
...
Drop all all explicit role setting from the testpopover example.
2014-10-29 06:49:59 -04:00
689363a782
GtkModelButton: Don't require an explicit role
...
When we have an action-name, we can deduce the role from the
action that is looked up by the action helper.
2014-10-29 06:49:59 -04:00
2401a6cb8e
Adapt the testpopover example
2014-10-29 06:49:59 -04:00
14e394d3d7
GtkModelButton: Rename action-role to role
...
Rename action-role to role, and make all properties readable.
2014-10-29 06:49:59 -04:00
e776c665b0
GtkModelButton: Drop unused :accel property
2014-10-29 06:49:59 -04:00
1fee63d097
Adapt the testpopover example
...
Drop all uses of has-submenu.
2014-10-29 06:49:59 -04:00
ef22be9bb7
Drop GtkModelButton:has-submenu
...
Replace the has-submenu property with checking menu-name != NULL.
2014-10-29 06:49:59 -04:00
4da281d20b
Adapt the testpopover example
...
We now use GtkPopoverMenu, and just add the model buttons
directly to it.
2014-10-29 06:49:58 -04:00
e095918128
GtkModelButton: Add a menu-name property
...
Add a menu-name property and use it in a default implementation
of ::clicked to switch menus if we are inside a stack. This means
GtkModelButton is no longer entirely generic, but rather expects
to be used inside a GtkPopoverMenu. It still works in other contexts
too, of course.
2014-10-29 06:49:58 -04:00
1f81c83fd8
Add GtkPopoverMenu
...
GtkPopoverMenu is a GtkPopover subclass that has a menu-like stack
built-in.
2014-10-29 06:49:58 -04:00
a8cc4787d2
Add a manual popover menu example
...
Reproduce the testpopover popover manually, by packing model
buttons into a stack in a popover.
2014-10-29 06:49:58 -04:00
83976c47f8
Make GtkModelButton a better GtkActionable
...
Rename the "toggled" property to "active", since that is what
GtkActionHelper expects to update for check and radio actions.
Also make the property readable, since GtkActionHelper wants
to read it.
2014-10-29 06:49:58 -04:00
fd945be50b
Make GtkModelButton public
2014-10-29 06:49:58 -04:00
c9ad936011
Drop an unused variable
2014-10-29 06:49:58 -04:00
d5cd05a0f4
GdkGLContextX11: Don't free NULL visual info
2014-10-29 11:26:00 +01:00
778865f316
Fix toplevel input shape for csd windows
...
We need to maintain the application-set and the the csd
input shape separately, and intersect them to pass them
down.
2014-10-28 20:23:47 -04:00
3f1dc87188
Plug another memory leak
...
Also found by valgrind.
2014-10-28 16:07:57 -04:00
c8d4eefa71
Plug some memory leaks in GL support
...
valgrind pointed these out.
2014-10-28 16:07:57 -04:00
0814cd9f8b
GdkGlContextWayland: Don't require specific bit depths
...
This just means we may fail to get a gl context, we just require
*some* color depth.
2014-10-28 18:30:09 +01:00
3406bbd128
Pick the first rgba visual, not the last
...
The visuals are typically sorted by some sort of "most useful first"
order. And picking the last one is likely to give us the weirdest
matching glx visual.
2014-10-28 18:30:09 +01:00
8d6d6dcca3
GdkGLContextX11: Ensure we get the fbconfig with the exact same visual
...
We really want a gl context with exactly the same visual, or we will
get a badmatch later, which hits us on nvidia as per:
https://bugzilla.gnome.org/show_bug.cgi?id=738670
2014-10-28 18:30:09 +01:00
b673490a1b
Document Wayland opacity handling
2014-10-28 10:48:49 -04:00
4cf6edda55
wayland: Make window opacity work
...
Under wayland, the compositor doesn't have a 'overall window alpha'
knob, we just need to add the alpha to the buffers we send.
Client-side alpha, if you want to call it that.
Implement this by reusing the existing alpha support for non-toplevel
widgets. As a side-effect of the implementation, windows with RGBA
visual under X will now also use per-pixel alpha, instead of
overall alpha.
2014-10-28 10:28:23 -04:00
d58c750db5
Bump atk dep
...
Needed for ATK_STATE_HAS_TOOLTIP.
2014-10-28 08:08:49 -04:00
850143b7a0
Inspector: Make picking work without a grab
...
Turns out Weston takes an X grab while delivering button events.
Thus, trying to take a grab in response to a button press is
futile.
2014-10-28 07:05:45 -04:00
c40ba85ace
wayland: Don't use the default display
...
Pass a display in so that multi-display technology works.
2014-10-27 22:29:41 -07:00
bbe9ef20da
gdkevents: Use the correct display to copy event data
2014-10-27 22:29:41 -07:00
887b7356c3
gdkdisplay: Provide a default event_data_copy / event_data_free
...
Every single implementation but Quartz is a no-op for this, so just
provide it once rather than in every backend.
2014-10-27 22:13:23 -07:00
e36b57e7f9
gtk-demo: Drop uses of gdk_cursor_new()
...
Use gdk_cursor_new_for_display() instead.
2014-10-28 00:56:46 -04:00
abe7187cfb
Add another multi-device invariant
...
The device and window passed to gdk_device_grab() must be
on the same display, or things are unlikely to work.
Document and assert this.
2014-10-28 00:54:39 -04:00
86f66d26fe
Drop an unused variable
2014-10-28 00:53:59 -04:00
4c69dabb6e
Don't return GDK_GRAB_SUCCESS on failure
...
That seems ... counterproductive.
2014-10-28 00:51:32 -04:00