1. 31 Jul, 2007 1 commit
  2. 13 Jul, 2007 1 commit
    • Richard Hult's avatar
      Move from here... ...to here. (_gdk_windowing_window_destroy): Update the · ed82448b
      Richard Hult authored
      2007-07-13  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkprivate-quartz.h:
      	* gdk/quartz/gdkevents-quartz.c: (gdk_window_is_ancestor): Move
      	from here...
      	* gdk/quartz/gdkwindow-quartz.c: (_gdk_quartz_window_is_ancestor):
      	...to here.
      	(_gdk_windowing_window_destroy): Update the mouse window if the
      	destroyed window is an ancestor of the current one, not only if
      	they are the same.
      	(gdk_window_hide): Update the mouse window here too.
      
      svn path=/trunk/; revision=18467
      ed82448b
  3. 10 Jul, 2007 1 commit
    • Richard Hult's avatar
      Add hack to workaround the broken tracking rect implementation in quartz, · 2048ec59
      Richard Hult authored
      2007-07-10  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c: (gdk_window_new),
      	(show_window_internal), (gdk_window_show), (gdk_window_hide): Add
      	hack to workaround the broken tracking rect implementation in
      	quartz, that doesn't seem to produce events if the window shows up
      	under the mouse.
      
      svn path=/trunk/; revision=18440
      2048ec59
  4. 07 Jul, 2007 1 commit
    • Richard Hult's avatar
      ]) ([GdkQuartzWindow -windowDidBecomeMain:]): Keep a stack of main windows · 8b9cbdb2
      Richard Hult authored
      2007-07-07  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/GdkQuartzWindow.c ([GdkQuartzWindow -windowDidResignMain:]) 
      	([GdkQuartzWindow -windowDidBecomeMain:]): 
      	* gdk/quartz/gdkwindow-quartz.c (_gdk_quartz_window_did_resign_main)
      	(_gdk_quartz_window_did_become_main, gdk_window_hide)
      	(_gdk_windowing_window_destroy): Keep a stack of main windows and
      	select the most recent one when hiding/closing the current one.
      
      svn path=/trunk/; revision=18396
      8b9cbdb2
  5. 06 Jul, 2007 1 commit
  6. 30 Jun, 2007 2 commits
  7. 19 Jun, 2007 1 commit
    • Richard Hult's avatar
      Don't create or update the tracking rect in the window, move it to the · 0932e4be
      Richard Hult authored
      2007-06-20  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c (gdk_window_new): 
      	* gdk/quartz/GdkQuartzWindow.c (windowDidResize): Don't create or
      	update the tracking rect in the window, move it to the view where
      	it belongs.
      
      	* gdk/quartz/GdkQuartzView.c (updateTrackingRect)
      	(viewDidMoveToWindow, viewWillMoveToWindow)
      	(setFrame, setBounds): Create and update the tracking rect here.
      
      svn path=/trunk/; revision=18197
      0932e4be
  8. 16 Jun, 2007 2 commits
  9. 04 Jun, 2007 4 commits
    • Richard Hult's avatar
      Don't try to make temp windows key windows, fixes problem introduced · 3337ee8f
      Richard Hult authored
      2007-06-04  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c:
      	(show_window_internal): Don't try to make temp windows key
      	windows, fixes problem introduced below.
      
      svn path=/trunk/; revision=18040
      3337ee8f
    • Richard Hult's avatar
      * gdk/quartz/gdkwindow-quartz.c: Implement simple versions of · 72469142
      Richard Hult authored
      2007-06-04  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/GdkQuartzWindow.c: * gdk/quartz/gdkwindow-quartz.c:
      	Implement simple versions of gdk_window_set_accept_focus and
      	gdk_window_set_focus_on_map.
      
      svn path=/trunk/; revision=18038
      72469142
    • Richard Hult's avatar
      Implement. · 60be3caa
      Richard Hult authored
      2007-06-04  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c: (gdk_window_raise),
      	(gdk_window_raise): Implement.
      
      svn path=/trunk/; revision=18037
      60be3caa
    • Richard Hult's avatar
      Implement gdk_window_set_transient_for. · 05e56066
      Richard Hult authored
      2007-06-04  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c:
      	* gdk/quartz/gdkwindow-quartz.h: Implement 
      	gdk_window_set_transient_for.
      
      svn path=/trunk/; revision=18036
      05e56066
  10. 01 Jun, 2007 2 commits
    • Richard Hult's avatar
      Make function naming consistent for the various functions that retrieve · be540c29
      Richard Hult authored
      2007-06-01  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkevents-quartz.[ch]: Make function naming
      	consistent for the various functions that retrieve data from an
      	event.
      
      	* gdk/quartz/gdkprivate-quartz.h: 
      	* gdk/quartz/gdkwindow-quartz.[ch]: Remove the now unused
      	_gdk_quartz_window_find_child_by_point() function.
      
      svn path=/trunk/; revision=18006
      be540c29
    • Matthias Clasen's avatar
      Add support for composited child windows. (#412882, Ryan Lortie) · 885ba046
      Matthias Clasen authored
      2007-06-01  Matthias Clasen  <mclasen@redhat.com>
      
              Add support for composited child windows.  (#412882, Ryan Lortie)
      
              * gdk/gdk.symbols:
              * gdk/gdkdisplay.h:
              * gdk/gdkinternals.h:
              * gdk/gdkwindow.[hc]: Add gdk_display_supports_composite() and
              gdk_window_set_composited().
      
              * gdk/x11/gdkevents-x11.c:
              * gdk/x11/gdkdisplay-x11.[hc]:
              * gdk/x11/gdkwindow-x11.[hc]: X11 implementation.
      
              * gdk/win32/gdkdisplay-win32.c:
              * gdk/win32/gdkwindow-win32.c: Dummy win32 implementration.
      
              * gdk/quartz/gdkdisplay-quartz.c:
              * gdk/quartz/gdkwindow-quartz.c: Dummy Quartz implementation.
      
              * gdk/directfb/gdkdisplay-directfb.c:
              * gdk/directfb/gdkwindow-directfb.c: Dummy DirectFB implementation.
      
              * tests/testgtk.c: Add a "composited window" test.
      
      
      svn path=/trunk/; revision=18004
      885ba046
  11. 28 May, 2007 3 commits
    • Richard Hult's avatar
      Refactored version of _gdk_quartz_window_find_child_by_point, that doesn't · 6ecae9e5
      Richard Hult authored
      2007-05-28  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkprivate-quartz.h:
      	* gdk/quartz/gdkwindow-quartz.c (find_child_window_helper)
      	(_gdk_quartz_window_find_child): Refactored version of
      	_gdk_quartz_window_find_child_by_point, that doesn't return any
      	coordinates as the users of this function already have the
      	coordinates and need to translate them differently.
      	(_gdk_windowing_window_get_pointer): Fixup coordinate translation.
      	(_gdk_windowing_window_at_pointer): Likewise.
      
      svn path=/trunk/; revision=17968
      6ecae9e5
    • Richard Hult's avatar
      Set a size for the root window. · 63228c67
      Richard Hult authored
      2007-05-28  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c: (_gdk_windowing_window_init): Set
      	a size for the root window.
      
      svn path=/trunk/; revision=17966
      63228c67
    • Richard Hult's avatar
      Add comments about what various coordinates are relative to. · 0057d194
      Richard Hult authored
      2007-05-28  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c: Add comments about what various
      	coordinates are relative to.
      
      svn path=/trunk/; revision=17965
      0057d194
  12. 30 Apr, 2007 1 commit
    • Richard Hult's avatar
      Implement. · 34c0f15b
      Richard Hult authored
      2007-04-30  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c: (gdk_window_set_opacity):
      	Implement.
      
      svn path=/trunk/; revision=17743
      34c0f15b
  13. 25 Apr, 2007 1 commit
  14. 18 Apr, 2007 1 commit
    • Richard Hult's avatar
      Refactor the process updates functions to share code between them. Also · c8d89a96
      Richard Hult authored
      2007-04-18  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c:
      	(gdk_window_quartz_process_updates_internal),
      	(gdk_window_quartz_process_all_updates),
      	(gdk_window_impl_quartz_process_updates): Refactor the process 
      	updates functions to share code between them. Also fixes bug 
      	#427660 by not updating larger regions than necessary.
      
      svn path=/trunk/; revision=17610
      c8d89a96
  15. 06 Apr, 2007 1 commit
    • Richard Hult's avatar
      Clean up namespaces to make the code more maintainable. · 9e2114e6
      Richard Hult authored
      2007-04-06  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/: Clean up namespaces to make the code more
      	maintainable.
      
      	* gdk/quartz/gdkdrawable-quartz.c:
      	* gdk/quartz/gdkgc-quartz.c: Fix bug #418384, alignment of tiled
      	images, by setting the pattern phase for the CG pattern.
      
      svn path=/trunk/; revision=17584
      9e2114e6
  16. 10 Mar, 2007 1 commit
    • Richard Hult's avatar
      Update for the new quartz cairo surface API (#410442). Don't lock focus · d7a33ade
      Richard Hult authored
      2007-03-10  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkdrawable-quartz.c:
      	(gdk_quartz_drawable_get_context): Update for the new quartz cairo 
      	surface API (#410442). Don't lock focus unless called outside of an 
      	expose event.
      	(gdk_quartz_drawable_release_context): Only flush the CG context and 
      	unlock focus if called outside of expose.
      	(gdk_quartz_ref_cairo_surface): Reuse the surface during its lifetime.
      	(_gdk_quartz_drawable_finish): New function, used to free the cached
      	cairo surface.
      
      	* gdk/quartz/gdkwindow-quartz.c:
      	(gdk_window_impl_quartz_begin_paint_region): A few small style changes.
      	(gdk_window_quartz_process_all_updates): Move the autorelease pool
      	allocation and freeing outside the loop.
      	(_gdk_windowing_window_destroy): Finish the drawable.
      	(move_resize_window_internal): Small cleanup and remove comment.
      	(_gdk_window_impl_quartz_get_type): No need to make the type info
      	static.
      
      	* gdk/quartz/gdkpixmap-quartz.c: Finish the drawable.
      
      svn path=/trunk/; revision=17463
      d7a33ade
  17. 18 Feb, 2007 1 commit
  18. 21 Sep, 2006 2 commits
    • Michael Natterer's avatar
      Implement lots of value setters for GdkGC, based on a heavily modified · 2f50232a
      Michael Natterer authored
      2006-09-21  Michael Natterer  <mitch@imendio.com>
      
             Implement lots of value setters for GdkGC, based on a heavily
             modified patch from Thomas Broyer (bug #328853):
      
      	* gdk/quartz/gdkcolor-quartz.c: removed functions which set colors
      	on the CGContext. Instead, added gdk_quartz_get_rgba_from_pixel()
      	which simply returns RGBA values from a GdkColor's pixel value.
      	See gdk_quartz_update_context_from_gc() below.
      
      	* gdk/quartz/gdkprivate-quartz.h (struct GdkGCQuartz): added lots
      	of members for the newly suppored GC values. Added enum
      	GdkQuartzContextValuesMask which is used for setting up the
      	CGContext for filling and/or stroking.
      
      	* gdk/quartz/gdkgc-quartz.c (gdk_quartz_gc_get_values)
      	(gdk_quartz_gc_set_values)
      	(_gdk_windowing_gc_copy): support a lot more GC values.
      
      	(gdk_quartz_update_context_from_gc): added
      	GdkQuartzContextValuesMask parameter and set filling/stroking
      	parameters accordingly. This function also gained full control
      	over the FG and BG colors (they can't be set separately any more).
      
      	The stipple mask part of the patch doesn't work but seems to take
      	the right approach and doesn't make things worse, so I applied it.
      
      	Did *not* apply the clipping part of the patch since I don't
      	understand it (I don't understand the version in CVS either, but
      	it at least works :-)
      
      	* gdk/quartz/gdkdrawable-quartz.c: pass the right masks to
      	gdk_quartz_update_context_from_gc() and removed separate color
      	setting calls. Some minor fixes.
      
      	* gdk/quartz/gdkwindow-quartz.c
      	(gdk_window_impl_quartz_begin_paint_region): set the CGContext's
      	fill color manually. We don't have/need a GC here.
      2f50232a
    • Michael Natterer's avatar
      fix cast: it's drawable_impl->wrapper that is the GdkWindow, not the · c148c41b
      Michael Natterer authored
      2006-09-21  Michael Natterer  <mitch@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c
      	(gdk_window_impl_quartz_begin_paint_region): fix cast: it's
      	drawable_impl->wrapper that is the GdkWindow, not the
      	drawable_impl itself.
      c148c41b
  19. 30 Aug, 2006 2 commits
    • Richard Hult's avatar
      Fix build. · 5467cb3c
      Richard Hult authored
      2006-08-30  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c (gdk_window_beep): Fix build.
      5467cb3c
    • Matthias Clasen's avatar
      Add a function to beep on a window. For X11, implement this with XkbBell. · 6760faeb
      Matthias Clasen authored
      2006-08-29  Matthias Clasen  <mclasen@redhat.com>
      
      	* gdk/gdkwindow.h:
      	* gdk/gdk.symbols:
      	* gdk/directfb/gdkwindow-directfb.c (gdk_window_beep):
      	* gdk/win32/gdkwindow-win32.c (gdk_window_beep):
      	* gdk/quartz/gdkwindow-quartz.c (gdk_window_beep):
      	* gdk/x11/gdkwindow-x11.c (gdk_window_beep): Add a function
      	to beep on a window. For X11, implement this with
      	XkbBell.  (#353455, Mariano Suárez-Alvarez)
      6760faeb
  20. 15 Aug, 2006 1 commit
    • Richard Hult's avatar
      Add GDK button mask for NS dragging events. (create_scroll_event): Remove · 382ef872
      Richard Hult authored
      2006-08-15  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkevents-quartz.c: (get_event_mask_from_ns_event):
      	Add GDK button mask for NS dragging events.
      	(create_scroll_event): Remove obsolete comment.
      	(_gdk_quartz_get_current_event_mask), (gdk_event_translate): Keep
      	track of the latest event mask here...
      
      	* gdk/quartz/gdkwindow-quartz.c:
      	(_gdk_windowing_window_get_pointer): And use it here. Patch from
      	Kristian Rietveld.
      	(gdk_window_quartz_update_idle): Rename to make things clearer.
      382ef872
  21. 10 Aug, 2006 1 commit
    • Michael Natterer's avatar
      don't try to set the state of unmapped windows, call · cac12e4d
      Michael Natterer authored
      2006-08-10  Michael Natterer  <mitch@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c
      	(gdk_window_maximize)
      	(gdk_window_unmaximize)
      	(gdk_window_iconify)
      	(gdk_window_deiconify): don't try to set the state of unmapped
      	windows, call gdk_synthesize_window_state() instead. Also added
      	autorelease pools back, seems they are needed after all.
      
      	* gdk/quartz/gdkwindow-quartz.c (show_window_internal): maximize
      	and iconify windows here if the state says so.
      cac12e4d
  22. 08 Aug, 2006 3 commits
    • Michael Natterer's avatar
      implement MIN_SIZE, MAX_SIZE and RESIZE_INC. · 08028816
      Michael Natterer authored
      2006-08-09  Michael Natterer  <mitch@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c (gdk_window_set_geometry_hints):
      	implement MIN_SIZE, MAX_SIZE and RESIZE_INC.
      08028816
    • Michael Natterer's avatar
      implement. · d451252f
      Michael Natterer authored
      2006-08-08  Michael Natterer  <mitch@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c
      	(gdk_window_maximize)
      	(gdk_window_unmaximize): implement.
      
      	(gdk_window_iconify)
      	(gdk_window_deiconify): remove unneeded autorelease pools.
      d451252f
    • Richard Hult's avatar
      Just expose the minimal region instead of the whole rect. · d3ee9f83
      Richard Hult authored
      2006-08-08  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/GdkQuartzView.c: Just expose the minimal region
      	instead of the whole rect.
      
      	* gdk/quartz/gdkwindow-quartz.c:
      	(gdk_window_quartz_process_all_updates), (gdk_window_update_idle),
      	(gdk_window_impl_quartz_invalidate_maybe_recurse),
      	(gdk_window_impl_quartz_process_updates),
      	(_gdk_windowing_window_destroy): Rework the expose handling so that
      	it works like the X11 backend, using an idle with the right
      	priority instead of relying on quartz to do it.
      	(gdk_window_set_type_hint): Use tornoff instead of submenu as the
      	documentation (and Mitch) suggests.
      d3ee9f83
  23. 31 Jul, 2006 1 commit
  24. 29 Jul, 2006 1 commit
    • Richard Hult's avatar
      Always set success to TRUE. (gdk_color_change): Implement. · 571c4605
      Richard Hult authored
      2006-07-29  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkcolor-quartz.c (gdk_colormap_alloc_colors): Always
      	set success to TRUE.
      	(gdk_color_change): Implement.
      
      	* gdk/quartz/GdkQuartzWindow.c
      	([GdkQuartzWindow -canBecomeKeyWindow]): Add comment.
      
      	* gdk/quartz/gdkevents-quartz.c (gdk_screen_get_setting): Make the
      	default font a bit smaller until we have made this get the system
      	setting.
      
      	* gdk/quartz/gdkwindow-quartz.c (gdk_window_set_type_hint): Enable
      	shadows for the right window types.
      
      	* gdk/quartz/gdkprivate-quartz.h:
      	* gdk/quartz/gdkgc-quartz.c:
      	* gdk/quartz/gdkdrawable-quartz.c:
      	* gdk/quartz/gdkcolor-quartz.c: Expose the CGContext functions,
      	update callers.
      
      	* gdk/quartz/gdkmain-quartz.c: (_gdk_windowing_init): No need to
      	get the current process ID, use the right constant instead.
      571c4605
  25. 24 Jul, 2006 1 commit
    • Richard Hult's avatar
      Set the window level depending on the type hint. · 7a3c18ab
      Richard Hult authored
      2006-07-24  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c (gdk_window_set_type_hint): Set the
      	window level depending on the type hint.
      
      	* gdk/quartz/gdkevents-quartz.c (gdk_keyboard_grab,
      	pointer_ungrab_internal): Only break the grab if the new window is
      	a different one.
      	(gdk_event_translate): Catch the case where the entire app loses
      	focus and break any grabs. Only do implicit grabs when the event
      	mask has both press and release.
      
      	* gdk/quartz/gdkkeys-quartz.c (translate_keysym):
      	* gdk/quartz/gdkselection-quartz.c:
      
              * gdk/quartz/GdkQuartzWindow.c
      	([GdkQuartzWindow -windowDidResignKey:]): Use this to update the
      	focus window instead of resignMain, fixes the case where other apps
      	uses focus follows mouse (like the terminal can).
      7a3c18ab
  26. 21 Jul, 2006 1 commit
    • Richard Hult's avatar
      Implement. · a0cdff6c
      Richard Hult authored
      2006-07-21  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkgc-quartz.c: (gdk_quartz_gc_get_values),
      	(gdk_quartz_gc_set_values), (_gdk_windowing_gc_copy),
      	(gdk_gc_get_screen): Implement.
      
      	* gdk/quartz/gdkwindow-quartz.c: (gdk_window_set_back_pixmap):
      	Implement.
      a0cdff6c
  27. 20 Jul, 2006 1 commit
    • Richard Hult's avatar
      Append the event to the queue instead of using gdk_event_put. · cb5f9e62
      Richard Hult authored
      2006-07-20  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkevents-quartz.c: (generate_grab_broken_event):
      	Append the event to the queue instead of using gdk_event_put.
      	(_gdk_quartz_get_mouse_window, find_current_keyboard_window):
      	Handle grabs.
      	(get_event_mask_from_ns_event, create_focus_event)
      	(convert_window_coordinates_to_root, find_window_for_event)
      	(gdk_event_translate): Improve readability (style changes).
      	(gdk_flush, gdk_display_sync, gdk_display_flush)
      	(gdk_event_send_client_message_for_display),
      	(gdk_screen_broadcast_client_message): Remove FIXMEs.
      	(gdk_screen_get_setting): Reindent.
      	Also move find_child_window_by_point to gdkwindow-quartz.c.
      
      	* gdk/quartz/gdkwindow-quartz.c:
      	(find_child_window_by_point_helper),
      	(_gdk_quartz_find_child_window_by_point): Move here from
      	gdkevents-quartz.c
      	(_gdk_windowing_window_get_pointer): Handle destroyed windows and
      	imlement the return value.
      	(_gdk_windowing_window_at_pointer): Implement.
      cb5f9e62
  28. 19 Jul, 2006 1 commit
    • Richard Hult's avatar
      Implement type hints and use them to determine which windows should be · 7f15d737
      Richard Hult authored
      2006-07-19  Richard Hult  <richard@imendio.com>
      
      	* gdk/quartz/gdkwindow-quartz.c (gdk_window_impl_quartz_init)
      	(gdk_window_set_type_hint, gdk_window_get_type_hint):
      	* gdk/quartz/GdkQuartzWindow.c
      	([GdkQuartzWindow -canBecomeMainWindow])
      	([GdkQuartzWindow -canBecomeKeyWindow]): Implement type hints and
      	use them to determine which windows should be allowed to become
      	main and key windows.
      7f15d737