Commit graph

931 commits

Author SHA1 Message Date
Kristian Høgsberg
dfe4acb4e2 Add more missing config.h #includes
Now that we use AC_SYS_LARGEFILE, we need to pull in config.h at least
whereever we use mmap().  Fixes at least the test-suite and simple-shm
on 32 bit systems.
2013-08-26 15:33:47 -07:00
Kristian Høgsberg
fa9bfcc8de simple-egl: Handle missing EGL_EXT_buffer_age better
Including src/weston-egl-ext.h breaks distcheck, so lets just copy the
one EGL_EXT_buffer_age into simple-egl.c.
2013-08-22 12:17:00 -07:00
Daiki Ueno
e78734740e autotools: Don't use wayland-scanner.m4 2013-08-20 16:11:10 -07:00
Rusty Lynch
2629672f77 Add touch support for wl_shell_surface_move 2013-08-20 16:11:10 -07:00
Kristian Høgsberg
8ab98d5bfa nested: The wl_resouce is the buffer, not the wl_resource user data 2013-08-20 16:11:09 -07:00
Kristian Høgsberg
b8e7c9a670 nested: Use a void * to avoid warnings with EGL_WL_bind_wayland_display 2013-08-20 16:11:09 -07:00
Kristian Høgsberg
2d41d0d9a6 screenshooter: Add missing newline and use program_invocation_short_name 2013-08-20 16:11:09 -07:00
Kristian Høgsberg
ce5d935880 screenshooter: Only link to $(CLIENT_LIBS) not libtoytoolkit.la
This application doesn't use toytoolkit, so don't link to it.  We have to
add a copy of xmalloc, to link without toytoolkit.
2013-08-20 16:11:09 -07:00
Adrian Negreanu
80ab6e2aa8 fix compile error when EGL_BUFFER_AGE_EXT is missing
Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
2013-08-20 16:11:09 -07:00
Adrian Negreanu
5325b38dc8 remove dependency on EGL_KHR_surfaceless_context
cairo_egl_device_create(), which is called next,
already checks if EGL_KHR_surfaceless_context is
available. If not, it fallbacks to pbuffer.

Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
2013-08-20 16:11:09 -07:00
Rusty Lynch
df67fd060f desktop-shell: Add touch support to panel launcher icons 2013-08-20 16:11:08 -07:00
Rusty Lynch
1604b742a1 calibrator: Add touch support to calibrator 2013-08-20 16:11:08 -07:00
Rusty Lynch
76ae39d21e smoke: Add touch support to smoke example 2013-08-20 16:11:08 -07:00
Rusty Lynch
f1d502b136 window.c: Add touch handlers
This adds basic infrastructure for handling touch events in the toytoolkit.
2013-08-20 16:11:08 -07:00
Brian Lovin
0de49f7967 terminal.c: Check if fdopen() fails
If fdopen() fails we just close the fd and return, failing
the copy-and-paste.

Signed-off-by: Brian Lovin <brian.j.lovin@intel.com>
2013-08-20 16:11:08 -07:00
Kristian Høgsberg
21f7c922a6 nested: Update to use weston-nested-client binary name 2013-08-20 16:11:06 -07:00
Stefan Schmidt
51595b9b22 clients: Fix typo in simple-touch and simple-shm.
listenter -> listener. Better fix it now before it spreads further.

Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>
2013-08-20 16:11:06 -07:00
Bryce Harrington
9bdc1d5988 Drop extraneous duplicate header includes
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
2013-08-20 16:11:06 -07:00
Rob Bradford
62af918cdb desktop-shell: Refactor launcher configuration reading to avoid leaking 2013-08-20 16:11:06 -07:00
Rob Bradford
35483aaab9 window: Free the allocated display if we fail to setup libxkbcommon 2013-08-20 16:11:05 -07:00
Kristian Høgsberg
6b2e3f3722 clients: Introduce xmalloc() and use it a few places
For the sample clients we introduce xmalloc() to simplify OOM-handling.
This patch only converts a few callsites, but this will be our strategy
going forward.
2013-08-20 16:11:05 -07:00
Rob Bradford
926a796173 tablet-shell: Avoid leaking the path on failed icon loading 2013-08-20 15:48:06 -07:00
Rob Bradford
f01d5647dc image: Free filename saved into structure on error path 2013-08-20 15:48:01 -07:00
Armin K
c4ebcd78a7 autotools: Correctly prefix simple-egl client name 2013-08-20 15:47:44 -07:00
Bryce W. Harrington
b3174f5fcf screenshot: Drop extraneous 'is' to improve warning msg grammar
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
2013-08-20 15:43:54 -07:00
Armin K
8cb42738af autotools: Add an option to install demo clients
This patch adds a configure option which will enable
user to install demo clients if desired. It is disabled
by default.

v2: Remove AC_DEFINE as it is not necesary
2013-08-20 15:43:40 -07:00
Armin K
e9afc57787 autotools: Rename demo clients
Prefix demo clients names with weston-, so they can
be installed if user desires.
2013-08-20 15:43:34 -07:00
Kristian Høgsberg
5addaa1820 simple-touch: Attach buffer before posting damage 2013-07-25 09:49:43 -07:00
Rob Bradford
5f087746ee window: Disregard motion events outside our current surface dimensions
It is possible to receive a motion event that was generated by the
compositor based on a pick of a surface of old dimensions. This was
triggerable on toytoolkit clients when minimising. The new window
dimensions were propagated through the widget hierarchy before the event
was dispatched.

This issue was triggering a segfault due to the focussed widget being
lost as the client code tried to identify which widget should have the
focus using co-ordinates outside the dimensions of the surface.

https://bugs.freedesktop.org/show_bug.cgi?id=66795
2013-07-13 00:00:49 -04:00
Rob Bradford
7000283741 editor: Support shift-left/right for selecting text
If the shift modifier is active then we don't make the cursor and the
anchor the same and as a result we develop a selection in the direction
that the arrow key gets pressed in.

https://bugs.freedesktop.org/show_bug.cgi?id=66802
2013-07-12 23:56:18 -04:00
Rob Bradford
3c9d967688 window: Allow popup menu when the window is maximised
https://bugs.freedesktop.org/show_bug.cgi?id=66793
2013-07-12 23:56:18 -04:00
Peter Maatman
b9a23f4fb8 clients/editor.c: Draw cursor at correct verical position
With this patch, the editor cursor now moves up and down correctly
instead of having the top part stuck on the first line.
2013-07-09 19:43:53 -04:00
Peter Maatman
08c38d4bc5 clients/editor.c: Ignore ESC key
Otherwise, editor would print the "unknown UTF-8 glyph" boxes.
2013-07-09 19:41:12 -04:00
Kristian Høgsberg
919cddb0ab Convert to wl_global_create/destroy() 2013-07-09 02:02:11 -04:00
Peng Wu
f291f20553 Use the average width of ASCII glyphs for cell width
As some CJK fonts are dual-width, calculate the average width of ASCII
glyphs and use that instead of the max_x_advance of the font.  This is
what VTE does too.

https://bugs.freedesktop.org/show_bug.cgi?id=63796
2013-07-08 17:57:59 -04:00
Ander Conselvan de Oliveira
e492549536 desktop-shell: Don't crash on output hotplug
The panel and background were never created for hotplugged outputs and
since some parts of the code assume that they always exist that would
lead to desktop-shell client to crash in that case.

This was easier to spot when the display was locked, because Weston
respawns the shell client and the user might not notice since there is
no flicker.

https://bugs.freedesktop.org/show_bug.cgi?id=66531
2013-07-05 16:48:32 -04:00
Ander Conselvan de Oliveira
6d75da7906 desktop-shell: Adapt to the new config parser API
This lets the code for adding panel launchers and setting up the
background to be moved into panel_* and background_* functions.

Note that this changes the behavior of the default launcher. Before
this change a default launcher would be added only if there was no
config file. Now a launcher is also added if there is no valid
launcher section.
2013-07-05 16:47:29 -04:00
Jason Ekstrand
d27cb096ad window: Request version 3 of wl_compositor
Originally window.c was requesting version 1 but several clients were
calling version 2 and 3 events including the desktop shell itself.

Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
2013-07-03 14:52:06 -04:00
Daiki Ueno
b08b3296b8 editor: Fix segfault when deleting the first character 2013-07-02 00:02:56 -04:00
Matt Roper
e61561fd9c toytoolkit: Allow operation without a keymap
In preparation for upcoming changes, we want to make sure that apps
written with the toy toolkit continue to operate properly if no XKB
keymap is received.  If there's no XKB keymap, then we shouldn't
try to figure out keyboard modifier states (since we probably don't
even have equivalents of PC-style modifiers).

Reviewed-by: Singh, Satyeshwar <satyeshwar.singh@intel.com>
Reviewed-by: Bob Paauwe <bob.j.paauwe@intel.com>
2013-06-28 19:54:53 -04:00
Kristian Høgsberg
1d7d8f0e95 nested: Fix direct access to resource->data 2013-06-25 16:15:27 -04:00
Kristian Høgsberg
88dab17b0e nested: Port away from old wl_resource API 2013-06-24 22:53:38 -04:00
Daniel Stone
c228e23b05 configure.ac: Enable AC_USE_SYSTEM_EXTENSIONS
AC_USE_SYSTEM_EXTENSIONS enables _XOPEN_SOURCE, _GNU_SOURCE and similar
macros to expose the largest extent of functionality supported by the
underlying system.  This is required since these macros are often
limiting rather than merely additive, e.g. _XOPEN_SOURCE will actually
on some systems hide declarations which are not part of the X/Open spec.

Since this goes into config.h rather than the command line, ensure all
source is consistently including config.h before anything else,
including system libraries.  This doesn't need to be guarded by a
HAVE_CONFIG_H ifdef, which was only ever a hangover from the X.Org
modular transition.

Signed-off-by: Daniel Stone <daniel@fooishbar.org>

[pq: rebased and converted more files]
2013-06-05 01:16:34 -04:00
Rob Bradford
14a7601340 weston-info: Report the seat name provided by the compositor 2013-06-05 00:17:48 -04:00
Armin K
a94e285be7 clients/nested: Fix compilation 2013-06-04 23:50:41 -04:00
U. Artie Eoff
a2326ed77f add fullscreen to .gitignore
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
2013-06-04 23:20:22 -04:00
Kristian Høgsberg
1cc5ac34b5 clients: Nested compositor example
A wayland compositor doesn't provide a mechanism for buffer sharing between
clients.  Under X, one client can render to a Pixmap and another can use it
as a source in a subsequent drawing operations.  Wayland doesn't have a
mechanims to share Pixmaps or textures between clients like that, but it's
possible for one client to act as a nested compositor to another client.

This less work than it sounds, since the nested compositor won't have to
provide input devices or even any kind of shell extension.  The nested
compositor and its client can be very tightly coupled and have very specific
expectations of what the other process should provide.

In this example, nested.c is a toytoolkit application that uses cairo-gl
for rendering and forks and execs nested-client.c.  As it execs the client,
it passes it one end of a socketpair that will be the clients connection
to the nested compositor.  The nested compositor doesn't even create a
listening socket.

The client is a minimal GLES2 application, which just renders a spinning
triangle in its frame callback.
2013-06-04 02:47:12 -04:00
Jan Arne Petersen
8ccb7cc258 editor: Do not commit/preedit after invalid delete
Ignore the whole commit-string or preedit_string transaction when the
delete_surrounding event was invalid.

Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
2013-06-04 00:34:55 -04:00
Jan Arne Petersen
895a128ce1 editor: Improve checks on delete add asserts
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
2013-06-04 00:34:52 -04:00
Jan Arne Petersen
9eaa8e51ca editor: Properly adjust cursor on delete
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
2013-06-04 00:34:48 -04:00