Commit Graph

1879 Commits

Author SHA1 Message Date
Pekka Paalanen
200019c0c6 compositor: check for execinfo.h
Some systems may not have execinfo.h. Add a configure test for it, and
if it is not found, make the backtrace() call a no-operation.

Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
2012-05-31 13:52:24 -04:00
Pekka Paalanen
51aaf646db compositor: work around missing SOCK_CLOEXEC
Android does not have SOCK_CLOEXEC, so implement a wrapper that falls
back.

Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
2012-05-31 13:52:20 -04:00
Scott Moreau
7a1b32a198 Implement text cursor position protocol.
Here we create a new client/compositor interface in weston to allow
clients to report their x/y cursor position to the compositor. These
values are then used to center the zoom area on this point. This
is useful for everyone, especially people who are visually impaired.
2012-05-31 13:10:22 -04:00
Kristian Høgsberg
d64bdf4755 xwm: Just ignore the synthetic unmap_notify
As per ICCCM 4.1.4 we're supposed to withdraw the window when we see
the real unmap or the synthetic unmap, whichever comes first.  The
synthetic unmap may come after the window has been destroyed, so let's
just only handle the real unmap.
2012-05-31 10:33:43 -04:00
Kristian Høgsberg
f7a69642a9 wcap: Convert argb to yv12 using integer math instead
Drop from 8% in the profile to 1.8%.
2012-05-30 15:01:03 -04:00
Kristian Høgsberg
86aa5fbbe6 wcap: Fix README typo
Thanks to Jonas Kulla <nyocurio@googlemail.com> for spotting it.
2012-05-30 13:00:54 -04:00
Kristian Høgsberg
a6d9a5e4aa xwm: Set WM_STATE window property
xprop and gtk+ dnd is now working.
2012-05-30 12:15:44 -04:00
Kristian Høgsberg
f197e9f7a3 xwm: Bring back synthetic events and handle synthetic unmap notify as per ICCCM 2012-05-30 11:46:29 -04:00
Kristian Høgsberg
e244cb03f7 xwm: Don't try to read deleted properties 2012-05-30 11:34:35 -04:00
Kristian Høgsberg
029539bf27 xwm: Handle reparenting windows 2012-05-30 11:28:24 -04:00
Kristian Høgsberg
44c2013d43 xwm: Don't select for XCB_EXPOSE
We don't need expose events.  All windows are redirected and we know
exactly when we need to repaint them.
2012-05-30 10:09:24 -04:00
Kristian Høgsberg
8d1aa7d8ef xwm: Don't dispatch for events coming from XSendEvent
GTK+ sends an unmap_notify to the root window when a toplevel GTK+ window
gets unmapped.  That may be a GTK+ bug, but we should just ignore events
from XSendEvent.
2012-05-30 10:06:59 -04:00
Kristian Høgsberg
194ea5423e xwm: Destroy frame resources and reparent back to root in unmap_notify
The frame window and the wayland surface needs to go away when then
X window is unmapped, not when it's destroyed.
2012-05-30 10:05:41 -04:00
Kristian Høgsberg
d96fe1f7e7 xwm: Remove pointless change set request 2012-05-30 10:04:15 -04:00
Kristian Høgsberg
f94a031b84 xwm: Don't select for STRUCTURE_NOTIFY or RESIZE_REDIRECT
We get all that information through SUBSTRUCTURE_NOTIFY on the parent
windows.
2012-05-30 10:02:58 -04:00
Kristian Høgsberg
bc6e1622b0 xwm: Ignore map request for already mapped window
If a client sends another map request before the server has seen our
reply to the first map request event, we might get a map request for an
already mapped window.  Just ignore that.
2012-05-30 09:59:56 -04:00
Kristian Høgsberg
0273b5716a xwm: Reduce window property debug output
We just print properties when they change now instead of dumping all
properties whenever we re-read them.  Also, make the property output a
little more concise.
2012-05-30 09:58:02 -04:00
Kristian Høgsberg
66a099b775 compositor: Only fini region if it's not the undef region 2012-05-29 16:49:45 -04:00
Kristian Høgsberg
c9571fbd3a xwm: Reset wm->focus_window when the focused window is destroyed 2012-05-29 15:35:29 -04:00
Kristian Høgsberg
053be42a4e wcap: Compute per-component deltas 2012-05-29 12:15:47 -04:00
Kristian Høgsberg
db0623a5f0 wcap: Add wcap README, with a bit of documentation 2012-05-29 11:36:27 -04:00
Kristian Høgsberg
f40d5d893f wcap-decode: Fix setting framerate
Default to 30fps instead of crashing if we don't get a framerate on the
command line.
2012-05-29 10:51:55 -04:00
Kristian Høgsberg
f4b5a4d12e wcap-decode: Fix timestamp overflow 2012-05-29 10:51:21 -04:00
Ander Conselvan de Oliveira
08bcf14903 dnd: implement option for not offering data to other clients
Add option --self-only to dnd client. If this options is passed, the
drag will be started with no data source so that no drag and drop
events are sent to other clients.
2012-05-29 09:58:17 -04:00
David Herrmann
a6128d6183 terminal: add glyphs to character list
This adds the actual glyphs/utf-8 characters to the comments of CS_SPECIAL
(DEC special graphics set). They all work on my system with "Monospace" or
"Bitstream" font. But keep the mnemonics so if the UTF8 characters are not
displayed correctly, the comments are still readable.

I don't know if gcc actually reads data as UTF-8 or if C code actually
allows all UTF8 characters. However, unless it reads as "*/" in ASCII, it
shouldn't matter inside of comments.

Anyway, it compiles fine with gcc-4.7.0/amd64 here.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2012-05-29 09:56:27 -04:00
David Herrmann
516b9e1753 terminal: fix up horizontal scan-line characters
The DEC special graphics set defines entries 0x6f to 0x73 to be:
  Horizontal Scan Line 1
  Horizontal Scan Line 3
  Horizontal Scan Line 5
  Horizontal Scan Line 7
  Horizontal Scan Line 9
However, the first Unicode drafts included only Scan-Line 5. Since
Unicode-3.2 the other Scan-Lines were added and are available in most
Unicode fonts now.

The codes are listed here:
  http://www.fileformat.info/info/unicode/block/miscellaneous_technical/images.htm?start=9089
Or more precisely:
  Scan 1: http://www.fileformat.info/info/unicode/char/23ba/index.htm
  Scan 3: http://www.fileformat.info/info/unicode/char/23bb/index.htm
  Scan 7: http://www.fileformat.info/info/unicode/char/23bc/index.htm
  Scan 9: http://www.fileformat.info/info/unicode/char/23bd/index.htm
Scan 5 is kept the same as before as it wasn't added separately and was
already correct before.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
2012-05-29 09:54:50 -04:00
Yan Wang
a261f7e6dc Weston: Free allocated cursors array when destroying
This array is allocated in create_cursors(). It should be freed in
destroy_cursors().
2012-05-29 09:53:42 -04:00
Kristian Høgsberg
92a57db6f2 shell: Add keybinding to force-close (SIGKILL) inactive clients 2012-05-26 13:41:06 -04:00
Kristian Høgsberg
61cfa66d6f wcap: Add option to disable building wcap tools 2012-05-26 13:19:22 -04:00
Ander Conselvan de Oliveira
210eb9d2ba dnd: work around cairo-gl brokenness
If cairo-gl is used, display_create_surface() will create an
wl_egl_window for each surface and this will result in errors if this
surface is used as a source. Also, one can't get a wl_buffer for such
a surface wich led to crashes when trying to do so for the drag icon.

This patch works around both problems by forcing the item and drag icon
surfaces to use shm.
2012-05-25 23:28:59 -04:00
Ander Conselvan de Oliveira
dc8c8fce72 window: rename enum pointer_type to cursor_type
This avoids confusion with the pointer devices (struct wl_pointer).
2012-05-25 23:28:54 -04:00
Ander Conselvan de Oliveira
d8f527c845 window: track changes in libwayland-cursor api
libwayland-cursor does not provide enum wl_cursor_type anymore so this
brings back enum pointer_type.

This partially revers commit 1042dc15e0.
2012-05-25 23:09:06 -04:00
Chad Versace
bf38190744 compositor: Fix buggy snprintf that sets module path
If the MODULEDIR string contains '%', then
    snprintf(path, sizeof(path), MODULEDIR "/%s", name);
does not do what you want.

Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
2012-05-25 23:05:44 -04:00
Tiago Vignatti
629ce23bd0 xwayland: change library name
Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
2012-05-25 22:54:40 -04:00
Tiago Vignatti
6150072283 clients: desktop-shell: show tooltip for panel items
Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
2012-05-25 22:54:13 -04:00
Tiago Vignatti
82db9d80e6 window: add simple text tooltip handlers
Using set_transient.

Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
2012-05-25 22:53:59 -04:00
Tiago Vignatti
99aeb1e72d shell: use transient flags for activate or not new surfaces
Inactive surfaces doesn't set keyboard focus, so it can be used for tooltips,
toolbars and some other type of windows.

This requires protocol side changes.

Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
2012-05-25 22:52:03 -04:00
Kristian Høgsberg
11374d2a7d wcap: Space out frames according to timestamps 2012-05-25 22:33:35 -04:00
Kristian Høgsberg
2255eb0816 wcap: Support the other pixel format we may write 2012-05-25 21:51:25 -04:00
Kristian Høgsberg
b2aa91c164 wcap: Commit Makefile.am 2012-05-25 21:32:58 -04:00
Kristian Høgsberg
bf17130144 wcap: Move old wcap-encode to wcap/ as wcap-snapshot 2012-05-25 18:08:29 -04:00
Kristian Høgsberg
2bcb2fc1fd wcap: Rename wcap-encode to just wcap 2012-05-25 18:03:52 -04:00
Kristian Høgsberg
b0be6075ca wcap: Add COPYING for vpxenc derived wcap-decode tool 2012-05-25 18:00:49 -04:00
Kristian Høgsberg
93b11c8e12 wcap: Add wcap support to webm encoder 2012-05-25 17:58:12 -04:00
Kristian Høgsberg
894e0b544c wcap: Move wcap structs and constants to a shader header 2012-05-25 17:55:20 -04:00
Kristian Høgsberg
e012c829af wcap: Discard first frame since it doesn't have a full frame of damage 2012-05-25 17:50:42 -04:00
Kristian Høgsberg
3b969608cb wcap: Add a file format magic number and add the pixel format to the header 2012-05-25 17:45:39 -04:00
Kristian Høgsberg
ee85ae9c13 Make it compile 2012-05-25 12:04:43 -04:00
Kristian Høgsberg
89060c0a8b Import vpxenc from libvpx as a starting point 2012-05-25 11:59:53 -04:00
Kristian Høgsberg
5fb70bf301 Add screen recorder tool
This commit adds a new, built-in screen recorder tool.  The tool UI is
still very simple, start with mod-r and stop it again with mod-r.
The recording is written to capture.wcap, in a simple run-length encoded
adhoc format.  The wcap-decode tool can be used to extract a single frame
from the capture, for now, but the plan is to hook this up to libvpx and
generate webm output.
2012-05-24 12:29:46 -04:00