0
#include <twitter-glib/twitter-glib.h>
0
#include "tweet-animation.h"
0
+#include "tweet-canvas.h"
0
#include "tweet-config.h"
0
#include "tweet-preferences.h"
0
#include "tweet-spinner.h"
0
@@ -1112,6 +1113,24 @@ on_canvas_focus_out (GtkWidget *widget,
0
+on_canvas_size_allocate (GtkWidget *widget,
0
+ GtkAllocation *allocation,
0
+ TweetWindowPrivate *priv = window->priv;
0
+ clutter_actor_set_size (priv->scroll,
0
+ clutter_actor_set_size (priv->status_view,
0
tweet_window_focus_in (GtkWidget *widget,
0
@@ -1193,9 +1212,9 @@ tweet_window_init (TweetWindow *window)
0
ClutterActor *stage, *view;
0
ClutterColor stage_color = { 0, 0, 0, 255 };
0
+ GtkRequisition canvas_req = { 0, };
0
GTK_WINDOW (window)->type = GTK_WINDOW_TOPLEVEL;
0
- gtk_window_set_resizable (GTK_WINDOW (window), FALSE);
0
gtk_window_set_default_size (GTK_WINDOW (window), WINDOW_WIDTH, 600);
0
gtk_window_set_title (GTK_WINDOW (window), "Tweet");
0
@@ -1257,28 +1276,29 @@ tweet_window_init (TweetWindow *window)
0
gtk_container_add (GTK_CONTAINER (priv->vbox), frame);
0
gtk_widget_show (frame);
0
- priv->canvas = gtk_clutter_embed_new ();
0
+ priv->canvas = tweet_canvas_new ();
0
+ tweet_canvas_set_border_width (TWEET_CANVAS (priv->canvas), CANVAS_PADDING);
0
g_signal_connect (priv->canvas,
0
"focus-in-event", G_CALLBACK (on_canvas_focus_in),
0
g_signal_connect (priv->canvas,
0
"focus-out-event", G_CALLBACK (on_canvas_focus_out),
0
- GTK_WIDGET_SET_FLAGS (priv->canvas, GTK_CAN_FOCUS);
0
+ g_signal_connect (priv->canvas,
0
+ "size-allocate", G_CALLBACK (on_canvas_size_allocate),
0
- gtk_widget_set_size_request (priv->canvas,
0
- CANVAS_WIDTH + CANVAS_PADDING,
0
- CANVAS_HEIGHT + CANVAS_PADDING);
0
+ GTK_WIDGET_SET_FLAGS (priv->canvas, GTK_CAN_FOCUS);
0
gtk_container_add (GTK_CONTAINER (frame), priv->canvas);
0
+ gtk_widget_size_request (priv->canvas, &canvas_req);
0
stage = gtk_clutter_embed_get_stage (GTK_CLUTTER_EMBED (priv->canvas));
0
- gtk_widget_set_size_request (priv->canvas,
0
- CANVAS_WIDTH + CANVAS_PADDING,
0
- CANVAS_HEIGHT + CANVAS_PADDING);
0
clutter_stage_set_color (CLUTTER_STAGE (stage), &stage_color);
0
clutter_actor_set_size (stage,
0
- CANVAS_WIDTH + CANVAS_PADDING,
0
- CANVAS_HEIGHT + CANVAS_PADDING);
0
+ canvas_req.width + CANVAS_PADDING,
0
+ canvas_req.height + CANVAS_PADDING);
0
view = tweet_status_view_new (priv->status_model);
0
g_signal_connect (view,
0
@@ -1293,7 +1313,7 @@ tweet_window_init (TweetWindow *window)
0
clutter_actor_set_reactive (view, TRUE);
0
priv->status_view = view;
0
- clutter_actor_set_size (priv->scroll,
CANVAS_WIDTH, CANVAS_HEIGHT);
0
+ clutter_actor_set_size (priv->scroll,
canvas_req.width, canvas_req.height);
0
clutter_actor_set_position (priv->scroll, CANVAS_PADDING, CANVAS_PADDING);
0
clutter_container_add_actor (CLUTTER_CONTAINER (stage), priv->scroll);
0
clutter_actor_set_reactive (priv->scroll, TRUE);
Comments
No one has commented yet.