Commit Graph

31 Commits

Author SHA1 Message Date
Søren Sandmann
b9d1a03440 Create 'composited' label.
Tue Apr 25 10:25:28 2006  Søren Sandmann  <sandmann@redhat.com>

	* tests/testgtk.c (create_alpha_window): Create 'composited' label.

	* tests/testgtk.c (on_composited_changed): New function, change
	the label to say whether the screen is composited or not.

	* gtk/gtkwindow.c (gtk_window_on_composited_changed): When
	composited status change, invalidate the window and propagate the signal;.

	* gtk/gtkwindow.c (gtk_window_map): Set the appropriate type hint
	if reset_type_hint is TRUE.

	* gtk/gtkwindow.c (gtk_window_set_type_hint): If hint is one of
	the old hints, store a shadow copy in the public window->type_hint
	bitfield, otherwise set this field to normal. Set the private
	field to the type hint.

	* gtk/gtkwindow.c (gtk_window_init): Initialize priv->type_hint.

	* gtk/gtkwindow.c (struct _GtkWindowPrivate): New field
	"reset_type_hint" indicating whether the type hint needs to be
	reset. New field type_hint containing a GdkWindowTypeHint.

	* gtk/gtkwidget.c (propagate_composited_changed): New function to
	propagate changes in composited status.
	(gtk_widget_class_init): Add composited_changed signal.

	* gtk/gtkwidget.h (struct _GtkWidgetClass): New signal composited-changed.

	* gtk/gtkwidget.c (gtk_widget_is_composited): New function.

	* gtk/gtktooltips.c (gtk_tooltips_draw_tips): Set transient for.

	* gtk/gtktooltips.c (gtk_tooltips_force_window): Set the type hint

	* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Compute whether
	the item belongs to a menubar. Set the type_hint appropriately
	depending on the outcome.

	* gtk/gtkmenu.c (gtk_menu_position): Set the default type hint here.

	* gtk/gtkmenu.c (gtk_menu_attach_to_widget): connect to hierarchy
	changed on the attach widget.

	* gtk/gtkmenu.c (attach_widget_hierarchy_changed): New function to
	set the transient_for property for menus.

	* gtk/gtkdnd.c (set_icon_stock_pixbuf): Set the appropriate type hint.

	* gtk/gtkcombo.c (gtk_combo_popup_list): Make the popup window
	transient for the toplevel.

	* gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Set
	transient-for, for the popup window.

	* gdk/x11/gdkwindow-x11.c (gdk_window_get_type_hint): Support for
	new window types.

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_type_hint): Add support
	for new window types.

	* gdk/x11/gdkscreen-x11.c (_gdk_x11_screen_process_owner_change):
	New function called whenever the compositing manager comes and goes.

	* gdk/x11/gdkscreen-x11.c (gdk_screen_is_composited): New function.

	* gdk/x11/gdkscreen-x11.c
	(_gdk_x11_screen_request_cm_notification, make_cm_atom,
	check_is_composited): New functions

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Call
	_gdk_x11_screen_process_owner_change when an
	XFixesSelectionNotifyEvent is received.

	* gdk/x11/gdkdisplay-x11.c (gdk_display_open): Call
	_gdk_x11_screen_request_cm_notification() on all screens.

	* gdk/quartz/gdkscreen-quartz.c (gdk_screen_is_composited): Dummy
	implementation.

	* gdk/gdkscreen.c (gdk_screen_class_init): New signal,
	'composited-changed'.

	* gdk/gdkwindow.h: Add new EWMH window types.

	* gdk/win32/gdkscreen-win32.c (gdk_screen_is_composited)
2006-04-25 14:27:32 +00:00
Richard Hult
7deea61cbf Add check for source being a window.
2006-04-16  Richard Hult  <richard@imendio.com>

	* gdk/quartz/gdkdrawable-quartz.c: (gdk_quartz_draw_drawable): Add check
	for source being a window.

	* gdk/quartz/gdkwindow-quartz.c: (_gdk_windowing_window_get_pointer):
	Don't assert on window not being the root window.
2006-04-16 20:13:13 +00:00
Richard Hult
5dc0919ed6 Remove leading cairo/ in include.
2006-04-16  Richard Hult  <richard@imendio.com>

	* gdk/quartz/gdkdrawable-quartz.c: Remove leading cairo/ in include.
2006-04-16 19:33:11 +00:00
Anders Carlsson
a62b7cdc9a Take grabs into account.
2006-04-13  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/gdkevents-quartz.c:
        (synthesize_enter_event):
        (synthesize_leave_event):
        (synthesize_crossing_events):
        Take grabs into account.

        (find_window_for_event):
        Only return grabbed window when owner_events is FALSE.
2006-04-13 08:51:33 +00:00
Anders Carlsson
2ba96a7150 Handle page up and page down.
2006-04-12  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/gdkkeys-quartz.c:
        Handle page up and page down.
2006-04-12 09:35:34 +00:00
Anders Carlsson
3d1e71073e Don't flush if we're inside a begin_paint/end_paint pair.
2006-04-12  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/gdkdrawable-quartz.c:
        (_gdk_quartz_drawable_release_context):
        Don't flush if we're inside a begin_paint/end_paint pair.

        * gdk/quartz/gdkwindow-quartz.c:
        (gdk_window_impl_quartz_end_paint):
        Free clip region here.
2006-04-12 08:23:01 +00:00
Anders Carlsson
1e3d722024 Have GdkWindowImplQuartz implement GdkPaintable.
2006-04-11  Anders Carlsson  <andersca@mac.imendio.com>

        * gdk/quartz/GdkQuartzView.c:
        (-[GdkQuartzView drawRect:]):
        * gdk/quartz/gdkdrawable-quartz.c:
        (gdk_quartz_ref_cairo_surface):
        (_gdk_quartz_drawable_get_context):
        (_gdk_quartz_drawable_release_context):
        * gdk/quartz/gdkwindow-quartz.c:
        (gdk_window_impl_quartz_finalize):
        (gdk_window_impl_quartz_class_init):
        (gdk_window_impl_quartz_begin_paint_region):
        (gdk_window_impl_quartz_end_paint):
        (gdk_window_impl_quartz_invalidate_maybe_recurse):
        (gdk_window_impl_quartz_process_updates):
        (gdk_window_impl_quartz_paintable_init):
        (_gdk_window_impl_quartz_get_type):
        * gdk/quartz/gdkwindow-quartz.h:
        Have GdkWindowImplQuartz implement GdkPaintable.
2006-04-10 23:17:26 +00:00
Matthias Clasen
aff3329de1 Make _gdk_windowing_args const.
2006-04-03  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkinternals.h:
	* gdk/x11/gdkmain-x11.c:
	* gdk/win32/gdkmain-win32.c:
	* gdk/directfb/gdkdisplay-directfb.c:
	* gdk/quartz/gdkmain-quartz.c: Make _gdk_windowing_args const.
2006-04-03 20:36:52 +00:00
Richard Hult
31f45bf9aa Add missing CLIPBOARD atom.
2006-03-29  Richard Hult  <richard@imendio.com>

	* gdk/quartz/gdkproperty-quartz.c: Add missing CLIPBOARD atom.
2006-03-29 20:34:33 +00:00
Anders Carlsson
856ee02fe4 Make the poll func work with real file descriptors. We do this by creating
2006-03-27  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/gdkevents-quartz.c:
        (select_thread_func):
        (got_fd_activity):
        (poll_func):
        (gdk_event_translate):
        Make the poll func work with real file descriptors.
        We do this by creating a thread which calls poll and then
        signals the main thread using a run loop source.

        * gtk/gtkclipboard-quartz.c:
        (-[GtkClipboardOwner pasteboard:provideDataForType:]):
        Remove debugging output
2006-03-27 18:46:38 +00:00
Richard Hult
ce823f5b28 Add more stubs.
2006-03-27  Richard Hult  <richard@imendio.com>

	* gdk/quartz: Add more stubs.
2006-03-27 10:47:29 +00:00
Michael Natterer
d4d65217b7 removing trailing \ fixes the build.
2006-03-21  Michael Natterer  <mitch@imendio.com>

	* gdk/quartz/Makefile.am: removing trailing \ fixes the build.
2006-03-21 11:52:28 +00:00
Anders Carlsson
03c29e1123 Implement gdk_window_scroll.
2006-03-21  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/gdkgeometry-quartz.c:
        (gdk_window_scroll):
        Implement gdk_window_scroll.
2006-03-21 09:36:46 +00:00
Anders Carlsson
6b1510bf23 Add the GDK part of the DND implementation.
2006-03-21  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/GdkQuartzWindow.c:
        (drag_operation_to_drag_action):
        (drag_action_to_drag_operation):
        (update_context_from_dragging_info):
        (-[GdkQuartzWindow draggingEntered:]):
        (-[GdkQuartzWindow draggingEnded:]):
        (-[GdkQuartzWindow draggingExited:]):
        (-[GdkQuartzWindow draggingUpdated:]):
        (-[GdkQuartzWindow performDragOperation:]):
        (-[GdkQuartzWindow wantsPeriodicDraggingUpdates]):
        (-[GdkQuartzWindow draggedImage:endedAt:operation:]):
        * gdk/quartz/gdkdnd-quartz.c:
        (gdk_drag_context_finalize):
        (gdk_drag_context_init):
        (gdk_drag_context_class_init):
        (gdk_drag_begin):
        (gdk_drag_status):
        Add the GDK part of the DND implementation.

        * gdk/quartz/Makefile.am:
        Add some missing headers.

        * gdk/quartz/gdkdrawable-quartz.h:
        * gdk/quartz/gdkprivate-quartz.h:
        * gdk/quartz/gdkquartz.h:
        * gdk/quartz/gdkwindow-quartz.c:
        (gdk_quartz_window_get_nsview):
        New function, for use by the GTK part of the DND implementation
2006-03-21 08:02:17 +00:00
Anders Carlsson
ac3643d8f3 Offset coordinates by 0.5 pixels to get consistant results for both image
2006-03-21  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/gdkdrawable-quartz.c:
        (gdk_quartz_ref_cairo_surface):
        (gdk_quartz_draw_rectangle):
        (gdk_quartz_draw_arc):
        (gdk_quartz_draw_polygon):
        (gdk_quartz_draw_drawable):
        (gdk_quartz_draw_segments):
        (gdk_quartz_draw_lines):
        (gdk_quartz_draw_pixbuf):
        (gdk_quartz_draw_image):
        (_gdk_quartz_drawable_get_context):
        * gdk/quartz/gdkdrawable-quartz.h:
        Offset coordinates by 0.5 pixels to get consistant results for both
        image contexts and screen contexts.
2006-03-21 07:49:05 +00:00
Anders Carlsson
7fe53a99bb ]): Synthesize GDK_CONFIGURE events when the window position changes.
2006-03-21  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/GdkQuartzWindow.c
        ([GdkQuartzWindow -windowDidMove:]): Synthesize GDK_CONFIGURE events
        when the window position changes.
2006-03-21 07:36:54 +00:00
Michael Natterer
5afb4f0f11 gdk/gdkscreen.h gdk/x11/gdkscreen-x11.c added
2006-03-08  Michael Natterer  <mitch@imendio.com>

	* gdk/gdkscreen.h
	* gdk/x11/gdkscreen-x11.c
	* gdk/gdk.symbols: added gdk_screen_get_active_window() and
	gdk_screen_get_window_stack() (patch from maemo-gtk).
	Fixes bug #320881.

	* gdk/directfb/gdkscreen-directfb.c
	* gdk/quartz/gdkscreen-quartz.c
	* gdk/win32/gdkscreen-win32.c: added the functions as stubs.
2006-03-08 17:02:34 +00:00
Anders Carlsson
5dcae734e5 Add these from the win32 backend.
2006-02-21  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/gdkselection-quartz.c:
        (make_list):
        (gdk_text_property_to_utf8_list_for_display):
        Add these from the win32 backend.
2006-02-21 08:32:28 +00:00
Anders Carlsson
ba8e91b9fc Add stubs for input shape functions.
2006-02-20  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/gdkdisplay-quartz.c:
        (gdk_display_supports_shapes):
        (gdk_display_supports_input_shapes):
        * gdk/quartz/gdkwindow-quartz.c:
        (gdk_display_warp_pointer):
        (gdk_window_input_shape_combine_mask):
        (gdk_window_input_shape_combine_region):
        (gdk_window_set_child_input_shapes):
        (gdk_window_set_accept_focus):
        (gdk_window_merge_child_input_shapes):
        Add stubs for input shape functions.
2006-02-20 11:57:12 +00:00
Anders Carlsson
cae6c15d65 Fix typo so ctrl gets passed on to the gdk event.
2006-02-20  Anders Carlsson  <andersca@mac.com>

        * gdk/quartz/gdkevents-quartz.c:
        (get_keyboard_modifiers_from_nsevent):
        Fix typo so ctrl gets passed on to the gdk event.

        * gdk/quartz/gdkproperty-quartz.c:
        (gdk_atom_name):
        g_strdup the atom name.
2006-02-20 11:07:25 +00:00
Behdad Esfahbod
6a66c972ca If major.minor of required and available glib versions are the same, add
2006-01-28  Behdad Esfahbod  <behdad@gnome.org>

        * configure.in: If major.minor of required and available glib versions
        are the same, add -DG_DISABLE_DEPRECATED to GLIB_CFLAGS. (bug #328617)

        * */Makefile.am: Remove hardcoded -DG_DISABLE_DEPRECATED.
2006-01-29 04:00:45 +00:00
Anders Carlsson
4b705d23d2 Implement these functions. (#327228, Thomas Broyer).
2006-01-18  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/gdkevents-quartz.c:
        (get_mm_from_pixels):
        (gdk_screen_get_width_mm):
        (gdk_screen_get_height_mm):
        Implement these functions.
        (#327228, Thomas Broyer).
2006-01-18 10:06:00 +00:00
Anders Carlsson
580d76a4f9 Implement these functions. (#327226, Thomas Broyer)
2006-01-18  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/gdkdrawable-quartz.c:
        (gdk_quartz_draw_polygon):
        (gdk_quartz_draw_lines):
	Implement these functions.
	(#327226, Thomas Broyer)
2006-01-18 09:47:56 +00:00
Anders Carlsson
617595dff2 Support non-MacRoman keyboard layouts. (#322585, Wolfgang Thaller)
2006-01-18  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/gdkkeys-quartz.c:
        (maybe_update_keymap):
	    Support non-MacRoman keyboard layouts.
	    (#322585, Wolfgang Thaller)
2006-01-18 09:30:00 +00:00
Anders Carlsson
6ebd463287 Make the process a foreground application. (#322481, Wolfgang Thaller)
2006-01-18  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/gdkmain-quartz.c:
        (_gdk_windowing_init):
        Make the process a foreground application.
        (#322481, Wolfgang Thaller)
2006-01-18 09:17:39 +00:00
Anders Carlsson
be820c5dc4 Fix ChangeLog entry 2006-01-16 11:11:20 +00:00
Anders Carlsson
4afc4d61c6 Implement keyboard grabs.
2006-01-16  Anders Carlsson  <andersca@mac.com>

        * gdk/quartz/gdkdisplay-quartz.c:
        * gdk/quartz/gdkevents-quartz.c:
        (gdk_keyboard_grab):
        (gdk_display_keyboard_ungrab):
        (gdk_keyboard_grab_info_libgtk_only):
        (find_window_for_event):
        Implement keyboard grabs.

        (_gdk_quartz_send_map_events):
        * gdk/quartz/gdkmain-quartz.c:
        * gdk/quartz/gdkprivate-quartz.h:
        New function that synthesizes map events.

        * gdk/quartz/gdkwindow-quartz.c:
        (_gdk_windowing_window_init):
        The root window is always visible.

        (all_parents_shown):
        (show_window_internal):
        Send map events.

        (gdk_window_hide):
        Ungrab keyboard and pointer
2006-01-16 10:52:40 +00:00
Anders Carlsson
c18f7da40d Implement local-only atoms.
2006-01-10  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/gdkproperty-quartz.c:
        (ensure_atom_tables):
        (intern_atom_internal):
        (gdk_atom_intern):
        (gdk_atom_intern_static_string):
        (gdk_atom_name):
        Implement local-only atoms.
2006-01-10 16:38:26 +00:00
Johan Dahlin
ba9c437d54 Add cvsignore 2006-01-09 19:25:35 +00:00
Anders Carlsson
6130996a77 Have these return TRUE
2006-01-02  Anders Carlsson  <andersca@imendio.com>

        * gdk/quartz/GdkQuartzWindow.c:
        (-[GdkQuartzWindow canBecomeMainWindow]):
        (-[GdkQuartzWindow canBecomeKeyWindow]):
        Have these return TRUE

        * gdk/quartz/gdkevents-quartz.c:
        (pointer_grab_internal):
        Remove FIXME

        (find_child_window_by_point_helper):
        Fix bug in offset calculation

        (find_window_for_event):
        Use grab window toplevel when a grab is in effect

        (gdk_event_translate):
        Don't call _gdk_event_button_generate on mouse up

        * gdk/quartz/gdkgc-quartz.c:
        (_gdk_quartz_gc_new):
        Fix indentation

        * gdk/quartz/gdkwindow-quartz.c:
        (gdk_window_new):
        Make TEMP windows borderless

        (gdk_window_hide):
        Hide window

        (gdk_window_get_origin):
        Implement
2006-01-02 16:34:21 +00:00
Anders Carlsson
1097260aa7 Add quartz backend.
2005-11-21  Anders Carlsson  <andersca@imendio.com>

        * configure.in:
        * gtk/Makefile.am:
        * gdk/Makefile.am:
	* gdk/quartz/*:
	Add quartz backend.

        * docs/tools/Makefile.am:
	Only build docshooter when the X11 backend is used.

        * gtk/gtkplug-stub.c:
	Include gtkplug.h here.

        * gtk/gtksocket-stub.c:
	Include gtksocket.h here.
2005-11-22 10:03:32 +00:00