Pekka Paalanen
							
						 
						
							 
							
							
							
								
							
								77cbc951cb 
								
							
								 
							
						 
						
							
							
								
								window: clean up redraw and focuses on destroy  
							
							 
							
							... 
							
							
 
							
							Currently, the way to destroy a window in a response to an event (e.g.
button click), is to put a task into the deferred list with
display_defer(). The task will then call window_destroy() from outside
event handling code.
As events are handled, it is possible that the deferred list contains
also the redraw task for this window. As the execution order of these
tasks is unknown (redrawing a freed window is a bug) and redrawing
something that goes away immediately is not useful, the redraw task must
be removed on window_destroy().
'struct input' contains pointers to windows currently in focus for that
input device. These pointers must also be cleared on window_destroy().
This fixes a use-after-free bug for the unlock dialog in desktop-shell
(future commit).
As an irrelevant minor cleanup, window::grab_device member is not used
anywhere, and is removed.
Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com> 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Rob Bradford
							
						 
						
							 
							
							
							
								
							
								8bd35c7770 
								
							
								 
							
						 
						
							
							
								
								window: Avoid setting an invalid surface for the pointer  
							
							 
							
							... 
							
							
 
							
							If we failed to load the pointer image to the surface then do not create a
buffer from a NULL surface and do not attach that to the device. 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Rob Bradford
							
						 
						
							 
							
							
							
								
							
								21223bf6d1 
								
							
								 
							
						 
						
							
							
								
								window: Report an error if we cannot load the pointer files  
							
							 
							
							
 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								bcee9a4b25 
								
							
								 
							
						 
						
							
							
								
								desktop-shell: Add beginning of pop-up menu to panel  
							
							 
							
							
 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Benjamin Franzke
							
						 
						
							 
							
							
							
								
							
								1a89f28c7d 
								
							
								 
							
						 
						
							
							
								
								gears: Fail if compiled without cairo-egl  
							
							 
							
							
 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Benjamin Franzke
							
						 
						
							 
							
							
							
								
							
								0c99163d9b 
								
							
								 
							
						 
						
							
							
								
								window: Create a cairo device for each egl config  
							
							 
							
							
 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Benjamin Franzke
							
						 
						
							 
							
							
							
								
							
								47eb8f4e91 
								
							
								 
							
						 
						
							
							
								
								window: Remove display_flush_cairo_device  
							
							 
							
							... 
							
							
 
							
							Rather add a flush_surface utility that
flushed the cairo_device thats associated to a surface. 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								e4fb78de8f 
								
							
								 
							
						 
						
							
							
								
								Handle compositors without wl_shell  
							
							 
							
							
 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								e28d05b0ad 
								
							
								 
							
						 
						
							
							
								
								window.c: Move window items to window.c  
							
							 
							
							
 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								3a69627f43 
								
							
								 
							
						 
						
							
							
								
								window: Stop using glib mainloop in toy toolkit  
							
							 
							
							
 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								1e164b9afd 
								
							
								 
							
						 
						
							
							
								
								Move rounded_rect() to cairo-util.c  
							
							 
							
							
 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								547da5afc9 
								
							
								 
							
						 
						
							
							
								
								terminal: Make -f (fullscreen) option work again  
							
							 
							
							
 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								f8ab46e149 
								
							
								 
							
						 
						
							
							
								
								window: Default to toplevel windows  
							
							 
							
							
 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								0c29eb292e 
								
							
								 
							
						 
						
							
							
								
								clients: Add a simple desktop-shell app  
							
							 
							
							... 
							
							
 
							
							This just provides the background surface and the top panel. 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								900b226ac1 
								
							
								 
							
						 
						
							
							
								
								window: Add enter/leave handlers  
							
							 
							
							
 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Benjamin Franzke
							
						 
						
							 
							
							
							
								
							
								4b87a13974 
								
							
								 
							
						 
						
							
							
								
								clients: Fix typos  
							
							 
							
							... 
							
							
 
							
							And forgotten display_create conversion in view.c. 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Benjamin Franzke
							
						 
						
							 
							
							
							
								
							
								91eacca38b 
								
							
								 
							
						 
						
							
							
								
								Remove egl display type setenv hack  
							
							 
							
							... 
							
							
 
							
							No longer needed with mesa 7.12-devel egl display autodetection. 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								f389cacc20 
								
							
								 
							
						 
						
							
							
								
								Move away from visuals and just use EGLConfigs or shm format tokens  
							
							 
							
							
 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								9de79a92a6 
								
							
								 
							
						 
						
							
							
								
								window.c: Drop global handler argument  
							
							 
							
							... 
							
							
 
							
							We can just register a global handler directly on the wl_display now. 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								a8d1fa762e 
								
							
								 
							
						 
						
							
							
								
								clients: Bring clients up to date  
							
							 
							
							
 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								334182062f 
								
							
								 
							
						 
						
							
							
								
								Use the new wl_callback interface  
							
							 
							
							
 
							
						 
						
							14 years ago  
						
					 
				
					
						
							
							
								 
								Benjamin Franzke
							
						 
						
							 
							
							
							
								
							
								22d5481f91 
								
							
								 
							
						 
						
							
							
								
								window.c: Fix compile/run using cairo without egl  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Benjamin Franzke
							
						 
						
							 
							
							
							
								
							
								14f7ff91ad 
								
							
								 
							
						 
						
							
							
								
								window: Set egl_window_resize late and once  
							
							 
							
							... 
							
							
 
							
							Previously we resized in attach_surface and create_surface.
THe second resize overwrote dx or dy from the first. 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								8f0ce05f52 
								
							
								 
							
						 
						
							
							
								
								compositor: Send out more detailed output events  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								7a5c979f4c 
								
							
								 
							
						 
						
							
							
								
								Move map requests to shell  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Benjamin Franzke
							
						 
						
							 
							
							
							
								
							
								65e5051bc7 
								
							
								 
							
						 
						
							
							
								
								clients: Add an optional roundtrip for visual lookup  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								3be87d1931 
								
							
								 
							
						 
						
							
							
								
								window: Add support for opaque windows  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								8357cd61d8 
								
							
								 
							
						 
						
							
							
								
								window.c: Deal with visual changes  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Egbert Eich
							
						 
						
							 
							
							
							
								
							
								e7b8d9055e 
								
							
								 
							
						 
						
							
							
								
								compositor: Set EGL_PLATFORM env variable for each backend.  
							
							 
							
							... 
							
							
 
							
							I may have missed something, but - since the Wayland compositor
already picks a platform backend, opens a connection and initializes the
backend specific display data structure it doesn't make sense
to let egl pick a platform. If it picks a different one the
display specific data structure will most likely not match.
Thus determine the platform in the Wayland rendering backend by setting
the EGL_PLATFORM env variable.
For the client any other platform than 'wayland' doesn't seem to make
sense.
I'm not sure if I've got the the platform ofr openfwd right.
Signed-off-by: Egbert Eich <eich@freedesktop.org> 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Benjamin Franzke
							
						 
						
							 
							
							
							
								
							
								bde55ec8e4 
								
							
								 
							
						 
						
							
							
								
								Implement buffer.damage in shm, use it in window.c  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								7cbdb64ab6 
								
							
								 
							
						 
						
							
							
								
								Fix clients to work with wl_ prefixed interface names  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								91342c6081 
								
							
								 
							
						 
						
							
							
								
								Switch to new subscribe protocol and wayland-egl  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								d11eadb519 
								
							
								 
							
						 
						
							
							
								
								window.c: Check for cairo device failure the right way  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								01aed1c665 
								
							
								 
							
						 
						
							
							
								
								Remove double definition of window_get_wl_surface()  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								12b0bb343b 
								
							
								 
							
						 
						
							
							
								
								Fix window_set_child_size() for windows without decoration  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								386857ba6a 
								
							
								 
							
						 
						
							
							
								
								Add struct window accessor for the wl_surface  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Tim Wiederhake
							
						 
						
							 
							
							
							
								
							
								b4b67344f0 
								
							
								 
							
						 
						
							
							
								
								Define global handler on display creation  
							
							 
							
							... 
							
							
 
							
							Otherwise the initial announcement of interfaces gets lost. 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Benjamin Franzke
							
						 
						
							 
							
							
							
								
							
								cff904e69d 
								
							
								 
							
						 
						
							
							
								
								gears: Use wayland egl surface instead of images  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Benjamin Franzke
							
						 
						
							 
							
							
							
								
							
								6693ac2108 
								
							
								 
							
						 
						
							
							
								
								window: Use window surfaces for windows  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Benjamin Franzke
							
						 
						
							 
							
							
							
								
							
								ec4d342aa9 
								
							
								 
							
						 
						
							
							
								
								Support per surface frame events  
							
							 
							
							... 
							
							
 
							
							This fixes tearing with multi head. 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Tim Wiederhake
							
						 
						
							 
							
							
							
								
							
								9c7a8cc663 
								
							
								 
							
						 
						
							
							
								
								fix typo in window.c  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								0d5007a76f 
								
							
								 
							
						 
						
							
							
								
								window.c: Use eglGetProcAddress to look up extension functions  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								297d6dd442 
								
							
								 
							
						 
						
							
							
								
								window.c: Include wayland-egl.h before EGL headers so we get the right platform  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								bfb8e61381 
								
							
								 
							
						 
						
							
							
								
								Follow wayland-egl renames  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								297c6313eb 
								
							
								 
							
						 
						
							
							
								
								Port window.c to use wayland-egl  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								nobled
							
						 
						
							 
							
							
							
								
							
								7b87cb04a9 
								
							
								 
							
						 
						
							
							
								
								window: add null checks  
							
							 
							
							... 
							
							
 
							
							Also check for invalid parameters early on, so if we crash,
we know *why* we crashed. 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								nobled
							
						 
						
							 
							
							
							
								
							
								14d222f612 
								
							
								 
							
						 
						
							
							
								
								add newlines in error messages  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								0ce245761c 
								
							
								 
							
						 
						
							
							
								
								Add initial basic support for fullscreen surfaces  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								3ba4858c4b 
								
							
								 
							
						 
						
							
							
								
								compositor-x11: Handle keyboard focus correctly so we avoid stuck modifiers  
							
							 
							
							
 
							
						 
						
							15 years ago  
						
					 
				
					
						
							
							
								 
								Kristian Høgsberg
							
						 
						
							 
							
							
							
								
							
								00439617f3 
								
							
								 
							
						 
						
							
							
								
								Fix new gcc 4.6 warnings  
							
							 
							
							... 
							
							
 
							
							simple-client.c:156:10: warning: variable ‘ar’ set but not used [-Wunused-but-set-variable]
etc. 
							
						 
						
							15 years ago