Commit Graph

8794 Commits

Author SHA1 Message Date
Emmanuele Bassi 8afb499ce5 image: Do not put large textures in the atlas
Atlasing is fine for smaller textures, but once they get too large its
downsides outweight the benefits. At worst, the larger texture will end
up inside its own atlas, but at worst it will require copying and/or
resizing of an existing atlas.

The cut-off at 512x512 pixels is a bit arbitrary, and we can change it
at any point; it would be nice if we could get the texture limit from
Cogl, and then use a fraction of that size as the cut-off limit. Sadly,
that's not portable, and it's not guaranteed to work either.
2014-12-03 12:12:43 +00:00
Emmanuele Bassi 54efcf0e90 gdk: Use non-deprecated GdkCursor API
The non-display safe variant has been deprecated in GTK+ 3.15.
2014-12-03 12:11:55 +00:00
Emmanuele Bassi 7d7eb8aabd gdk: Disable deprecation warnings
We don't want to break the build because GDK deprecated some symbol.
2014-12-03 12:07:06 +00:00
Emmanuele Bassi 3879bacc78 Avoid a compiler warning
Initialize a pointer variable.
2014-12-03 12:05:37 +00:00
Emmanuele Bassi 47df16ec3b Revert "actor: Plug a leak in the implicit transition removal"
This reverts commit 158af1ff59.

This commit introduced a regression, so the leak will have to be fixed
in another way.
2014-11-26 12:46:51 +00:00
Jasper St. Pierre 46877cc2bd actor: Create a PangoContext per actor
For a variety of complicated reasons, ClutterText currently sets fields
on the PangoContext when creating a layout. This causes ClutterText to
behave somewhat erratically in certain cases, since the PangoContext is
currently shared between all actors.

GTK+ creates a PangoContext for every single GtkWidget, so it seems like
we should do the same here.

Move the private code that was previously in clutter-main.c into
clutter-actor.c and clean it up a bit. This gives every actor its own
PangoContext it can mutilate whenever it wants, at its heart's content.

https://bugzilla.gnome.org/show_bug.cgi?id=739050
2014-10-23 12:30:54 -07:00
Jasper St. Pierre 14d28e7908 main: Don't update the PangoContext in clutter_set_font_flags
clutter_set_font_flags already calls clutter_backend_set_font_options,
which emits a signal which our PangoContext listens to, so this is just
duplicate and unneeded code.

https://bugzilla.gnome.org/show_bug.cgi?id=739050
2014-10-23 12:30:53 -07:00
Carlos Garnacho 7764fd2079 evdev: Flush event queue before removing an input device
libinput_suspend() will trigger the removal of input devices, but also
the emission of button/key releases pairing everything that is pressed
at that moment. These events are queued, but the ClutterInputDevice
pointers in these will point to invalid memory at the time these are
processed.

Fix this by flushing the event queue, in order to ensure there are no
unprocessed input events after libinput_suspend().

https://bugzilla.gnome.org/show_bug.cgi?id=738520
2014-10-14 13:43:17 +02:00
Rico Tzschichholz 084dc49a0c x11: Add missing closure annotation to ClutterX11FilterFunc 2014-10-02 09:27:36 +02:00
Emmanuele Bassi 317a54f9fb build: Update the release rules
Change the URLs for mailing lists and documentation, and re-align the
output.
2014-09-22 12:01:30 +01:00
Emmanuele Bassi 28cd2c56d1 Post-release version bump to 1.20.1 2014-09-22 11:48:37 +01:00
Emmanuele Bassi e0834bfece Release Clutter 1.20.0 2014-09-22 11:31:23 +01:00
Emmanuele Bassi c55922dac1 docs: Fix the examples for ClutterText.set_font_name()
We shouldn't be using "pt": PangoFontDescription.from_string() assumes
points, and only accepts "px" for absolute font sizes.

https://bugzilla.gnome.org/show_bug.cgi?id=736826
2014-09-22 11:30:52 +01:00
Emmanuele Bassi 35d4baa913 docs: Update the markdown README file 2014-09-22 11:30:52 +01:00
Maria Mavridou e1a3a38061 Updated Greek translation 2014-09-21 13:42:14 +00:00
Olav Vitters ca09f58d93 doap category core 2014-09-19 12:38:54 +01:00
Emmanuele Bassi 3f4d5c3e47 Post-release version bump to 1.19.11 2014-09-17 15:07:33 +01:00
Emmanuele Bassi db69380773 Release Clutter 1.19.10 2014-09-17 15:02:30 +01:00
Emmanuele Bassi f409671d91 docs: Fix annotation for has_mapped_clones() method
The Returns: stanza is missing.
2014-09-17 14:59:22 +01:00
Emmanuele Bassi c75a200c37 docs: Remove missing symbol 2014-09-17 14:59:03 +01:00
Emmanuele Bassi 28a5104e11 Remove gtk-doc tags from clutter_test_* API
The API is public because we use it in the test suite, but it's not
documented.
2014-09-17 14:58:17 +01:00
Emmanuele Bassi 14da1c5027 actor: Unallocated children do not contribute to the paint volume
Just like unmapped children.

Apparently, layers above Clutter allow mapped children without an
allocation, instead of unmapping them. This means we need to ignore
them when computing the paint volume.

Patch originally by: Adel Gadllah <adel.gadllah@gmail.com>
Signed-off by: Emmanuele Bassi <ebassi@gnome.org>

https://bugzilla.gnome.org/show_bug.cgi?id=736682
2014-09-15 16:53:31 +01:00
Emmanuele Bassi acd8f86570 actor: Default paint volume does not work without allocation
We already check for needs_allocation before getting the default paint
volume, but explicit is better than implicit.
2014-09-15 16:43:30 +01:00
Emmanuele Bassi e31d7d7400 build: Ignore private header while building docs 2014-09-15 16:42:54 +01:00
Jonas Ådahl a182d4befa ClutterInputDevice: Store the cursor coordinate state as floating point
To support sub-pixel motion events coming from relative events, the
fraction part needs to be stored in the input device state as well. To
do this, simply change the current type from gint to gfloat.

https://bugzilla.gnome.org/show_bug.cgi?id=736413
2014-09-14 16:58:27 +02:00
Alejandro Piñeiro 281a57a6a3 a11y: provide a way to ensure clutter accessibility
If gtk_init is called after clutter_init, it can override clutter
AtkUtil implementation. In that situation, we can't say that
the accessibility is enabled, as the root object would be wrong.

In order to provide a way to prevent this:

* clutter_get_accessibility_enabled returns true of false
  depending on the current AtkUtil implemented
* cally_accessibility_init always override AtkUtil implementation.
2014-09-03 16:03:16 +02:00
Bastien Nocera fe208bff29 doc: Document CLUTTER_SCALE envvar
https://bugzilla.gnome.org/show_bug.cgi?id=734480
2014-09-03 14:21:09 +01:00
Bastien Nocera 908aedbacc gdk: Add window-scaling-factor support
So that we follow GDK's idea of a scaling factor for Clutter.

https://bugzilla.gnome.org/show_bug.cgi?id=734480
2014-09-03 14:21:08 +01:00
Emmanuele Bassi b3b2af7677 Re-introduce removed GestureAction method
The get_threshold_tigger_egde() method was renamed to fix the typo, but
it obviously broke the ABI. To be fair, nobody in the whole of Debian
was using the symbol, apparently, so it's not like we broke existing
code. Still, it's not nice to break ABI without bumping soname, so let's
put the old symbol back in — obviously, deprecated — as a wrapper to the
newly added one.
2014-09-03 14:16:31 +01:00
Emmanuele Bassi 98b64fec33 Add TestEnvironment key to the installed tests launchers
The TestEnvironment key allows us to control the environment used by the
gnome-desktop-testing-runner harness.

We use it to disable the diagnostic messages without having to tweak the
Exec line.

https://bugzilla.gnome.org/show_bug.cgi?id=734115
2014-08-29 19:37:47 +01:00
Yosef Or Boczko 4bcf739d04 Updated Hebrew translation 2014-08-28 18:09:28 +03:00
Carlos Garnacho 591d31c970 xi2: XSync before getting the client pointer on construction
If the device manager is created and queried for the client pointer at
a very early stage in application lifetime, the device_id returned would
be 0 as the server hasn't apparently decided yet about the client pointer.

For these situations, doing XSync prior to fetching the client pointer
gets the server to device about the client pointer before we query it.

https://bugzilla.gnome.org/show_bug.cgi?id=735388
2014-08-25 16:51:31 +02:00
Adel Gadllah cfcba18684 clutter-settings: Mark window-scaling-factor as fixed when set by the app
When an application sets the scaling factor manually we should mark it as fixed
and not override it when the xsettings change. This matches GDKs behaviour.

In order for this to work we cannot use the same path when setting the value
internally so introduce a _clutter_settings_set_property_internal and use it
for that.

https://bugzilla.gnome.org/show_bug.cgi?id=735244
2014-08-23 14:02:56 +02:00
Emmanuele Bassi ee59a458d2 Forgot to commit the NEWS file prior to release 2014-08-21 15:43:35 +01:00
Emmanuele Bassi 5d012cba7b Post-release version bump to 1.19.9 2014-08-21 15:43:06 +01:00
Emmanuele Bassi 0ed53b6290 Release Clutter 1.19.8 2014-08-21 15:35:37 +01:00
Emmanuele Bassi 9c7433dbe9 docs: Add missing symbols to the section file 2014-08-21 15:30:47 +01:00
Emmanuele Bassi bd3e4f1709 evdev: Fix compiler warning 2014-08-21 15:26:14 +01:00
Emmanuele Bassi fd59df9710 build: Remove experimental notice for wayland/evdev
Both backends are built via CI and used by GNOME, so they should not be
considered experimental any more.
2014-08-21 15:24:54 +01:00
Sunjin Yang 158af1ff59 actor: Plug a leak in the implicit transition removal
We need to release the temporary reference we acquired in order for the
signal emission to work.

https://bugzilla.gnome.org/show_bug.cgi?id=734761

Signed-off-by: Emmanuele Bassi <ebassi@gnome.org>
2014-08-21 15:19:18 +01:00
ngoswami 018c1665ee Updated Assamese translation 2014-08-18 15:38:09 +00:00
Christian Kirbach 22827e6043 Updated German translation 2014-08-18 08:31:44 +00:00
Lionel Landwerlin ad18f2a996 backend: gdk: add support for foreign windows on wayland
https://bugzilla.gnome.org/show_bug.cgi?id=734935
2014-08-17 16:55:10 +01:00
Lionel Landwerlin ccd2054fda backend: gdk: add translation code for touch events
https://bugzilla.gnome.org/show_bug.cgi?id=734934
2014-08-17 16:55:10 +01:00
Emmanuele Bassi be8602fbb4 Revert "backend: try gdk backend before x11/wayland/egl"
This reverts commit 398a7ac713.

We cannot really use the GDK backend without massive regressions inside
the input layer, like touch events and gestures. The GDK backend is not
entirely up to scratch, and it's late in the cycle.

Let's land this early in 3.15, and get it up to par with X11.
2014-08-15 12:11:20 +01:00
Emmanuele Bassi f12c174d72 Remove unused internal 'in-resize' flag
A remnant of days gone by.
2014-08-15 12:07:48 +01:00
Lionel Landwerlin 398a7ac713 backend: try gdk backend before x11/wayland/egl
Quite a few people at Guadec complained of pinpoint being broken in
speaker+fullscreen mode, with slides being half displayed. It turns
out that the X11 backend of clutter was being used and this backend
assumes the size of the current monitor is the size of the X screen
(that's not the case with multiple monitors).

To work around the shortcomings of the X11 backend we should probably
position the GDK one before. GDK implements most of the logic the
ClutterStage needs and is probably more tested.

https://bugzilla.gnome.org/show_bug.cgi?id=734587
2014-08-10 20:26:02 +01:00
Rui Matos f95493e7bf evdev: Add API to set the xkb layout index
https://bugzilla.gnome.org/show_bug.cgi?id=733202
2014-08-07 11:43:00 +01:00
Tom Beckmann 72aaeed3f5 canvas: assign white to paint color for texture node
To get correct premultiplied opacity on a canvas content, white needs
to be assigned to the color that is passed to the texture node. The
content will be very dark for lower opacity values otherwise.

https://bugzilla.gnome.org/show_bug.cgi?id=733385
2014-07-25 09:31:57 +01:00
Emmanuele Bassi 8e56cef40b Post-release version bump to 1.19.7 2014-07-24 00:20:26 +01:00