forked from AuroraMiddleware/gtk
texthandle: Remove relative_to API
It's unused now, GtkTextHandle uses widget coordinates.
This commit is contained in:
parent
844c6b8951
commit
4a8a2286e1
@ -3209,7 +3209,6 @@ gtk_entry_realize (GtkWidget *widget)
|
|||||||
|
|
||||||
gtk_entry_adjust_scroll (entry);
|
gtk_entry_adjust_scroll (entry);
|
||||||
gtk_entry_update_primary_selection (entry);
|
gtk_entry_update_primary_selection (entry);
|
||||||
_gtk_text_handle_set_relative_to (priv->text_handle, priv->text_area);
|
|
||||||
|
|
||||||
/* If the icon positions are already setup, create their windows.
|
/* If the icon positions are already setup, create their windows.
|
||||||
* Otherwise if they don't exist yet, then construct_icon_info()
|
* Otherwise if they don't exist yet, then construct_icon_info()
|
||||||
@ -3237,7 +3236,6 @@ gtk_entry_unrealize (GtkWidget *widget)
|
|||||||
gtk_entry_reset_layout (entry);
|
gtk_entry_reset_layout (entry);
|
||||||
|
|
||||||
gtk_im_context_set_client_window (priv->im_context, NULL);
|
gtk_im_context_set_client_window (priv->im_context, NULL);
|
||||||
_gtk_text_handle_set_relative_to (priv->text_handle, NULL);
|
|
||||||
|
|
||||||
clipboard = gtk_widget_get_clipboard (widget, GDK_SELECTION_PRIMARY);
|
clipboard = gtk_widget_get_clipboard (widget, GDK_SELECTION_PRIMARY);
|
||||||
if (gtk_clipboard_get_owner (clipboard) == G_OBJECT (entry))
|
if (gtk_clipboard_get_owner (clipboard) == G_OBJECT (entry))
|
||||||
@ -4062,13 +4060,22 @@ gtk_entry_move_handle (GtkEntry *entry,
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
GtkAllocation primary, secondary;
|
||||||
GdkRectangle rect;
|
GdkRectangle rect;
|
||||||
|
gint win_x, win_y;
|
||||||
|
|
||||||
rect.x = CLAMP (x, 0, gdk_window_get_width (priv->text_area));
|
get_icon_allocations (entry, &primary, &secondary);
|
||||||
rect.y = y;
|
gtk_entry_get_text_area_size (entry, &win_x, &win_y, NULL, NULL);
|
||||||
|
rect.x = CLAMP (x, 0, gdk_window_get_width (priv->text_area)) + win_x;
|
||||||
|
rect.y = y + win_y;
|
||||||
rect.width = 1;
|
rect.width = 1;
|
||||||
rect.height = height;
|
rect.height = height;
|
||||||
|
|
||||||
|
if (gtk_widget_get_direction (GTK_WIDGET (entry)) == GTK_TEXT_DIR_RTL)
|
||||||
|
rect.x += secondary.width;
|
||||||
|
else
|
||||||
|
rect.x += primary.width;
|
||||||
|
|
||||||
_gtk_text_handle_set_visible (priv->text_handle, pos, TRUE);
|
_gtk_text_handle_set_visible (priv->text_handle, pos, TRUE);
|
||||||
_gtk_text_handle_set_position (priv->text_handle, pos, &rect);
|
_gtk_text_handle_set_position (priv->text_handle, pos, &rect);
|
||||||
}
|
}
|
||||||
|
@ -35,8 +35,7 @@ enum {
|
|||||||
|
|
||||||
enum {
|
enum {
|
||||||
PROP_0,
|
PROP_0,
|
||||||
PROP_PARENT,
|
PROP_PARENT
|
||||||
PROP_RELATIVE_TO
|
|
||||||
};
|
};
|
||||||
|
|
||||||
struct _HandleWindow
|
struct _HandleWindow
|
||||||
@ -55,7 +54,6 @@ struct _GtkTextHandlePrivate
|
|||||||
{
|
{
|
||||||
HandleWindow windows[2];
|
HandleWindow windows[2];
|
||||||
GtkWidget *parent;
|
GtkWidget *parent;
|
||||||
GdkWindow *relative_to;
|
|
||||||
guint mode : 2;
|
guint mode : 2;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -306,9 +304,6 @@ gtk_text_handle_finalize (GObject *object)
|
|||||||
|
|
||||||
priv = GTK_TEXT_HANDLE (object)->priv;
|
priv = GTK_TEXT_HANDLE (object)->priv;
|
||||||
|
|
||||||
if (priv->relative_to)
|
|
||||||
g_object_unref (priv->relative_to);
|
|
||||||
|
|
||||||
if (priv->windows[GTK_TEXT_HANDLE_POSITION_SELECTION_START].widget)
|
if (priv->windows[GTK_TEXT_HANDLE_POSITION_SELECTION_START].widget)
|
||||||
gtk_widget_destroy (priv->windows[GTK_TEXT_HANDLE_POSITION_SELECTION_START].widget);
|
gtk_widget_destroy (priv->windows[GTK_TEXT_HANDLE_POSITION_SELECTION_START].widget);
|
||||||
|
|
||||||
@ -335,10 +330,6 @@ gtk_text_handle_set_property (GObject *object,
|
|||||||
case PROP_PARENT:
|
case PROP_PARENT:
|
||||||
priv->parent = g_value_get_object (value);
|
priv->parent = g_value_get_object (value);
|
||||||
break;
|
break;
|
||||||
case PROP_RELATIVE_TO:
|
|
||||||
_gtk_text_handle_set_relative_to (handle,
|
|
||||||
g_value_get_object (value));
|
|
||||||
break;
|
|
||||||
default:
|
default:
|
||||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
|
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
|
||||||
}
|
}
|
||||||
@ -359,9 +350,6 @@ gtk_text_handle_get_property (GObject *object,
|
|||||||
case PROP_PARENT:
|
case PROP_PARENT:
|
||||||
g_value_set_object (value, priv->parent);
|
g_value_set_object (value, priv->parent);
|
||||||
break;
|
break;
|
||||||
case PROP_RELATIVE_TO:
|
|
||||||
g_value_set_object (value, priv->relative_to);
|
|
||||||
break;
|
|
||||||
default:
|
default:
|
||||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
|
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
|
||||||
}
|
}
|
||||||
@ -403,13 +391,6 @@ _gtk_text_handle_class_init (GtkTextHandleClass *klass)
|
|||||||
GTK_TYPE_WIDGET,
|
GTK_TYPE_WIDGET,
|
||||||
GTK_PARAM_READWRITE |
|
GTK_PARAM_READWRITE |
|
||||||
G_PARAM_CONSTRUCT_ONLY));
|
G_PARAM_CONSTRUCT_ONLY));
|
||||||
g_object_class_install_property (object_class,
|
|
||||||
PROP_RELATIVE_TO,
|
|
||||||
g_param_spec_object ("relative-to",
|
|
||||||
P_("Window"),
|
|
||||||
P_("Window the coordinates are based upon"),
|
|
||||||
GDK_TYPE_WINDOW,
|
|
||||||
GTK_PARAM_READWRITE));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -426,27 +407,6 @@ _gtk_text_handle_new (GtkWidget *parent)
|
|||||||
NULL);
|
NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
_gtk_text_handle_set_relative_to (GtkTextHandle *handle,
|
|
||||||
GdkWindow *window)
|
|
||||||
{
|
|
||||||
GtkTextHandlePrivate *priv;
|
|
||||||
|
|
||||||
g_return_if_fail (GTK_IS_TEXT_HANDLE (handle));
|
|
||||||
g_return_if_fail (!window || GDK_IS_WINDOW (window));
|
|
||||||
|
|
||||||
priv = handle->priv;
|
|
||||||
|
|
||||||
if (priv->relative_to)
|
|
||||||
g_object_unref (priv->relative_to);
|
|
||||||
|
|
||||||
if (window)
|
|
||||||
g_object_ref (window);
|
|
||||||
|
|
||||||
priv->relative_to = window;
|
|
||||||
g_object_notify (G_OBJECT (handle), "relative-to");
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
_gtk_text_handle_set_mode (GtkTextHandle *handle,
|
_gtk_text_handle_set_mode (GtkTextHandle *handle,
|
||||||
GtkTextHandleMode mode)
|
GtkTextHandleMode mode)
|
||||||
|
@ -4251,8 +4251,6 @@ gtk_text_view_realize (GtkWidget *widget)
|
|||||||
|
|
||||||
/* Ensure updating the spot location. */
|
/* Ensure updating the spot location. */
|
||||||
gtk_text_view_update_im_spot_location (text_view);
|
gtk_text_view_update_im_spot_location (text_view);
|
||||||
|
|
||||||
_gtk_text_handle_set_relative_to (priv->text_handle, priv->text_window->window);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -4293,8 +4291,6 @@ gtk_text_view_unrealize (GtkWidget *widget)
|
|||||||
if (priv->bottom_window)
|
if (priv->bottom_window)
|
||||||
text_window_unrealize (priv->bottom_window);
|
text_window_unrealize (priv->bottom_window);
|
||||||
|
|
||||||
_gtk_text_handle_set_relative_to (priv->text_handle, NULL);
|
|
||||||
|
|
||||||
GTK_WIDGET_CLASS (gtk_text_view_parent_class)->unrealize (widget);
|
GTK_WIDGET_CLASS (gtk_text_view_parent_class)->unrealize (widget);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user