[gtk+/wip/baedert/box] GtkTextHandle: Use min-width/min-height
- From: Timm Bäder <baedert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/wip/baedert/box] GtkTextHandle: Use min-width/min-height
- Date: Tue, 4 Oct 2016 19:16:48 +0000 (UTC)
commit 498dfdfbd20e962ea91be8e942e1baaa86aefe6c
Author: Timm Bäder <mail baedert org>
Date: Tue Oct 4 21:13:29 2016 +0200
GtkTextHandle: Use min-width/min-height
instead of GtkWidget's text-handle-width/text-handle-height style
properties
gtk/gtktexthandle.c | 37 ++++++++++++++++++++-----------------
1 files changed, 20 insertions(+), 17 deletions(-)
---
diff --git a/gtk/gtktexthandle.c b/gtk/gtktexthandle.c
index cc98d22..4e9e359 100644
--- a/gtk/gtktexthandle.c
+++ b/gtk/gtktexthandle.c
@@ -76,24 +76,27 @@ static void _gtk_text_handle_update (GtkTextHandle *handle,
GtkTextHandlePosition pos);
static void
-_gtk_text_handle_get_size (GtkTextHandle *handle,
- gint *width,
- gint *height)
+_gtk_text_handle_get_size (GtkTextHandle *handle,
+ GtkTextHandlePosition pos,
+ gint *width,
+ gint *height)
{
- GtkTextHandlePrivate *priv;
- gint w, h;
+ GtkTextHandlePrivate *priv = handle->priv;
+ GtkWidget *widget = priv->windows[pos].widget;
+ GtkStyleContext *context;
- priv = handle->priv;
+ context = gtk_widget_get_style_context (widget);
+
+ gtk_style_context_get (context,
+ gtk_style_context_get_state (context),
+ "min-width",
+ width, NULL);
- gtk_widget_style_get (priv->parent,
- "text-handle-width", &w,
- "text-handle-height", &h,
- NULL);
- if (width)
- *width = w;
- if (height)
- *height = h;
+ gtk_style_context_get (context,
+ gtk_style_context_get_state (context),
+ "min-height",
+ height, NULL);
}
static void
@@ -110,7 +113,7 @@ _gtk_text_handle_draw (GtkTextHandle *handle,
handle_window = &priv->windows[pos];
context = gtk_widget_get_style_context (handle_window->widget);
- _gtk_text_handle_get_size (handle, &width, &height);
+ _gtk_text_handle_get_size (handle, pos, &width, &height);
cairo_save (cr);
cairo_translate (cr, handle_window->border.left, handle_window->border.top);
@@ -232,7 +235,7 @@ gtk_text_handle_widget_event (GtkWidget *widget,
window = gtk_widget_get_parent (priv->windows[pos].widget);
gtk_widget_get_allocation (priv->windows[pos].widget, &allocation);
- _gtk_text_handle_get_size (handle, &handle_width, &handle_height);
+ _gtk_text_handle_get_size (handle, pos, &handle_width, &handle_height);
_gtk_window_get_popover_position (GTK_WINDOW (window),
priv->windows[pos].widget,
@@ -383,7 +386,7 @@ _gtk_text_handle_update (GtkTextHandle *handle,
gint w, h;
_gtk_text_handle_ensure_widget (handle, pos);
- _gtk_text_handle_get_size (handle, &width, &height);
+ _gtk_text_handle_get_size (handle, pos, &width, &height);
border->top = height;
border->bottom = height;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]