aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libempathy-gtk/empathy-chat.c52
-rw-r--r--libempathy-gtk/empathy-chat.glade112
2 files changed, 120 insertions, 44 deletions
diff --git a/libempathy-gtk/empathy-chat.c b/libempathy-gtk/empathy-chat.c
index 082f33c92..6d0225951 100644
--- a/libempathy-gtk/empathy-chat.c
+++ b/libempathy-gtk/empathy-chat.c
@@ -65,33 +65,34 @@
#define COMPOSING_STOP_TIMEOUT 5
struct _EmpathyChatPriv {
- EmpathyLogManager *log_manager;
- EmpathyTpChat *tp_chat;
- McAccount *account;
- MissionControl *mc;
- GtkWidget *widget;
- guint composing_stop_timeout_id;
- gboolean sensitive;
- gchar *id;
- GSList *sent_messages;
- gint sent_messages_index;
- GList *compositors;
- guint scroll_idle_id;
- gboolean first_tp_chat;
- GList *backlog_messages;
- gboolean is_first_char;
- guint block_events_timeout_id;
- TpHandleType handle_type;
- gchar *name;
- gchar *tooltip;
- const gchar *icon_name;
+ EmpathyTpChat *tp_chat;
+ gchar *name;
+ gchar *tooltip;
+ const gchar *icon_name;
+ GtkWidget *widget;
+
+ EmpathyLogManager *log_manager;
+ McAccount *account;
+ MissionControl *mc;
+ guint composing_stop_timeout_id;
+ gboolean sensitive;
+ gchar *id;
+ GSList *sent_messages;
+ gint sent_messages_index;
+ GList *compositors;
+ guint scroll_idle_id;
+ gboolean first_tp_chat;
+ GList *backlog_messages;
+ gboolean is_first_char;
+ guint block_events_timeout_id;
+ TpHandleType handle_type;
/* Used to automatically shrink a window that has temporarily
* grown due to long input.
*/
- gint padding_height;
- gint default_window_height;
- gint last_input_height;
- gboolean vscroll_visible;
+ gint padding_height;
+ gint default_window_height;
+ gint last_input_height;
+ gboolean vscroll_visible;
};
static void empathy_chat_class_init (EmpathyChatClass *klass);
@@ -1220,8 +1221,6 @@ empathy_chat_init (EmpathyChat *chat)
chat->view = empathy_chat_view_new ();
chat->input_text_view = gtk_text_view_new ();
- priv->is_first_char = TRUE;
-
g_object_set (chat->input_text_view,
"pixels-above-lines", 2,
"pixels-below-lines", 2,
@@ -1231,6 +1230,7 @@ empathy_chat_init (EmpathyChat *chat)
"wrap-mode", GTK_WRAP_WORD_CHAR,
NULL);
+ priv->is_first_char = TRUE;
priv->log_manager = empathy_log_manager_new ();
priv->default_window_height = -1;
priv->vscroll_visible = FALSE;
diff --git a/libempathy-gtk/empathy-chat.glade b/libempathy-gtk/empathy-chat.glade
index 800ad8def..c3026f093 100644
--- a/libempathy-gtk/empathy-chat.glade
+++ b/libempathy-gtk/empathy-chat.glade
@@ -2,40 +2,116 @@
<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
<!--*- mode: xml -*-->
<glade-interface>
- <widget class="GtkWindow" id="chat_page_window">
- <property name="title" translatable="yes">Chat</property>
- <property name="default_width">350</property>
- <property name="default_height">250</property>
+ <widget class="GtkWindow" id="chat_window">
+ <property name="border_width">6</property>
+ <property name="title" translatable="yes">Group Chat</property>
+ <property name="icon_name">system-users</property>
<child>
- <widget class="GtkVBox" id="chat_widget">
+ <widget class="GtkVBox" id="group_chat_widget">
<property name="visible">True</property>
<property name="border_width">4</property>
- <property name="spacing">3</property>
+ <property name="spacing">6</property>
<child>
- <widget class="GtkScrolledWindow" id="chat_view_sw">
+ <widget class="GtkHBox" id="hbox_topic">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="shadow_type">GTK_SHADOW_IN</property>
+ <property name="spacing">6</property>
<child>
- <placeholder/>
+ <widget class="GtkLabel" id="label80">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0</property>
+ <property name="label" translatable="yes">&lt;b&gt;Topic:&lt;/b&gt;</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label_topic">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="xalign">0</property>
+ <property name="use_markup">True</property>
+ <property name="wrap">True</property>
+ <property name="selectable">True</property>
+ <property name="ellipsize">PANGO_ELLIPSIZE_END</property>
+ <property name="single_line_mode">True</property>
+ </widget>
+ <packing>
+ <property name="position">1</property>
+ </packing>
</child>
</widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="padding">2</property>
+ </packing>
</child>
<child>
- <widget class="GtkScrolledWindow" id="input_text_view_sw">
+ <widget class="GtkHPaned" id="hpaned">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
- <property name="vscrollbar_policy">GTK_POLICY_NEVER</property>
- <property name="shadow_type">GTK_SHADOW_IN</property>
<child>
- <placeholder/>
+ <widget class="GtkVBox" id="vbox_left">
+ <property name="width_request">600</property>
+ <property name="height_request">500</property>
+ <property name="visible">True</property>
+ <property name="spacing">6</property>
+ <child>
+ <widget class="GtkScrolledWindow" id="scrolled_window_chat">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="shadow_type">GTK_SHADOW_IN</property>
+ <child>
+ <placeholder/>
+ </child>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkScrolledWindow" id="scrolled_window_input">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+ <property name="vscrollbar_policy">GTK_POLICY_NEVER</property>
+ <property name="shadow_type">GTK_SHADOW_IN</property>
+ <child>
+ <placeholder/>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="resize">True</property>
+ <property name="shrink">True</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkScrolledWindow" id="scrolled_window_contacts">
+ <property name="width_request">200</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+ <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+ <property name="shadow_type">GTK_SHADOW_IN</property>
+ <child>
+ <placeholder/>
+ </child>
+ </widget>
+ <packing>
+ <property name="resize">True</property>
+ <property name="shrink">True</property>
+ </packing>
</child>
</widget>
<packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>