Re: Building multiple backends on on same system



On Mon, 2010-12-06 at 23:28 +0100, Alexander Larsson wrote:
> 
> An approximate list of the externally called (i.e. from gdk core and as
> public API) symbols left to convert is:

I cleaned these up a bit and ordered it by what vtable it needs to go.

Unfortunately I don't really have any time to work on this any more, as
I'm moving, starting tomorrow. Benjamin, any chance you could pick this
up? Its mainly gruntwork, but could be important in the future.

Actually, It might not necassary be required to finish all this before
3.0 is release, as all of this is ABI compatible. The only thing that
needs doing before 3.0 is:

* Merge gdk and gtk+ (if we want to do this, and i think it makes sense)
* Rename libgtk-x11-3.0.so to libgtk-3.0.so
* Change the way the pc files are set up so that gtk+-x11-3.0.pc just
  depends on gtk+-3.0 and adds the includedir for gdkx.h.
* Convert GdkCursor to a GObject
* Hide Class definitions of backend-instantiated/derived types
  (Actually, we should probably hide the instance struct too)

------------------------------------------------------------

Move to common code, uses no backend specific code:
gdk_add_client_message_filter
gdk_devices_list
gdk_get_display
gdk_utf8_to_string_target
gdk_utf8_to_compound_text_for_display
gdk_window_lookup

GdkBackend (add internal object type and derive in each backend):
_gdk_windowing_exit
_gdk_windowing_init
_gdk_windowing_set_default_display
_gdk_windowing_substitute_screen_number
gdk_atom_intern (could with some work share most code between backends)
gdk_atom_intern_static_string
gdk_atom_name
gdk_display_open
gdk_drag_context_new
gdk_error_trap_pop
gdk_error_trap_pop_ignored
gdk_error_trap_push
gdk_events_pending
gdk_flush
gdk_keyval_from_name
gdk_keyval_name
gdk_free_compound_text
gdk_free_text_list
gdk_set_locale

GdkDisplay:
_gdk_events_queue
_gdk_window_impl_new
_gdk_windowing_after_process_all_updates
_gdk_windowing_before_process_all_updates
_gdk_windowing_display_set_sm_client_id
_gdk_windowing_event_data_copy
_gdk_windowing_event_data_free
_gdk_windowing_get_device_state
_gdk_windowing_window_at_device_position
_gdk_windowing_window_get_next_serial
gdk_cursor_new_for_display
gdk_cursor_new_from_name
gdk_cursor_new_from_pixbuf
gdk_display_get_default_cursor_size
gdk_display_get_maximal_cursor_size
gdk_display_supports_cursor_alpha
gdk_display_supports_cursor_color
gdk_display_warp_device
gdk_display_warp_pointer
gdk_drag_get_protocol_for_display
gdk_notify_startup_complete
gdk_notify_startup_complete_with_id
gdk_selection_owner_get_for_display
gdk_selection_owner_set_for_display
gdk_string_to_compound_text_for_display
gdk_text_property_to_text_list_for_display
gdk_text_property_to_utf8_list_for_display
gdk_window_lookup_for_display
gdk_window_foreign_new_for_display

GdkScreen:
gdk_spawn_command_line_on_screen
gdk_spawn_on_screen
gdk_spawn_on_screen_with_pipes

GdkWindowImpl:
_gdk_input_window_destroy
_gdk_windowing_window_destroy_foreign
_gdk_windowing_window_process_updates_recurse
_gdk_windowing_window_set_composited
gdk_drag_begin
gdk_input_set_extension_events
gdk_property_change
gdk_property_delete
gdk_property_get
gdk_selection_convert
gdk_selection_property_get
gdk_test_render_sync
gdk_test_simulate_button
gdk_test_simulate_key

GdkVisual (for some reason this is not derived by backends, needs
fixing):
gdk_visual_get_type:
gdk_visual_get_screen
gdk_visual_get_type

GdkDragContext (for some reason this is not derived by backends, needs
fixing):
gdk_drag_abort
gdk_drag_context_get_device
gdk_drag_context_set_device
gdk_drag_drop
gdk_drag_drop_succeeded
gdk_drag_find_window_for_screen
gdk_drag_get_selection
gdk_drag_motion
gdk_drag_status
gdk_drop_finish
gdk_drop_reply

GdkCursor (needs to be made a GObject):
_gdk_cursor_destroy
gdk_cursor_get_display
gdk_cursor_get_image

GdkDevice:
_gdk_input_check_extension_events
_gdk_windowing_device_grab
gdk_device_ungrab

GdkAppLaunchContext:
_gdk_windowing_get_startup_notify_id
_gdk_windowing_launch_failed


-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Alexander Larsson                                            Red Hat, Inc 
       alexl redhat com            alexander larsson gmail com 
He's an underprivileged hunchbacked ex-con looking for 'the Big One.' She's a 
vivacious kleptomaniac Hell's Angel descended from a line of powerful witches. 
They fight crime! 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]