2016-04-09 18:06:41 +10:00
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
|
<!-- Generated with glade 3.20.0 -->
|
|
|
|
|
<interface>
|
|
|
|
|
<requires lib="gtk+" version="3.10"/>
|
|
|
|
|
<template class="ConversationViewer" parent="GtkStack">
|
|
|
|
|
<property name="visible">True</property>
|
|
|
|
|
<property name="can_focus">False</property>
|
|
|
|
|
<property name="transition_type">crossfade</property>
|
|
|
|
|
<child>
|
|
|
|
|
<object class="GtkImage" id="splash_page">
|
|
|
|
|
<property name="visible">True</property>
|
|
|
|
|
<property name="can_focus">False</property>
|
|
|
|
|
<property name="pixel_size">256</property>
|
|
|
|
|
<property name="icon_name">mail-inbox-symbolic</property>
|
|
|
|
|
</object>
|
|
|
|
|
<packing>
|
|
|
|
|
<property name="name">splash_page</property>
|
|
|
|
|
</packing>
|
|
|
|
|
</child>
|
|
|
|
|
<child>
|
|
|
|
|
<object class="GtkSpinner" id="loading_page">
|
|
|
|
|
<property name="visible">True</property>
|
|
|
|
|
<property name="can_focus">False</property>
|
|
|
|
|
<property name="active">True</property>
|
|
|
|
|
</object>
|
|
|
|
|
<packing>
|
|
|
|
|
<property name="name">loading_page</property>
|
|
|
|
|
<property name="position">1</property>
|
|
|
|
|
</packing>
|
|
|
|
|
</child>
|
|
|
|
|
<child>
|
|
|
|
|
<object class="GtkScrolledWindow" id="conversation_page">
|
|
|
|
|
<property name="visible">True</property>
|
|
|
|
|
<property name="can_focus">True</property>
|
|
|
|
|
<property name="hscrollbar_policy">never</property>
|
|
|
|
|
<property name="shadow_type">in</property>
|
|
|
|
|
<child>
|
|
|
|
|
<object class="GtkViewport">
|
|
|
|
|
<property name="visible">True</property>
|
|
|
|
|
<property name="can_focus">False</property>
|
|
|
|
|
<child>
|
|
|
|
|
<object class="GtkListBox" id="conversation_listbox">
|
|
|
|
|
<property name="name">conversation_listbox</property>
|
|
|
|
|
<property name="visible">True</property>
|
|
|
|
|
<property name="can_focus">False</property>
|
|
|
|
|
<property name="selection_mode">none</property>
|
|
|
|
|
<style>
|
|
|
|
|
<class name="background"/>
|
|
|
|
|
</style>
|
|
|
|
|
</object>
|
|
|
|
|
</child>
|
|
|
|
|
</object>
|
|
|
|
|
</child>
|
|
|
|
|
</object>
|
|
|
|
|
<packing>
|
|
|
|
|
<property name="name">conversation_page</property>
|
|
|
|
|
<property name="position">2</property>
|
|
|
|
|
</packing>
|
|
|
|
|
</child>
|
|
|
|
|
<child>
|
|
|
|
|
<object class="GtkBox" id="user_message_page">
|
|
|
|
|
<property name="visible">True</property>
|
|
|
|
|
<property name="can_focus">False</property>
|
|
|
|
|
<property name="orientation">vertical</property>
|
|
|
|
|
<child>
|
|
|
|
|
<object class="GtkLabel" id="user_message_label">
|
|
|
|
|
<property name="name">100</property>
|
|
|
|
|
<property name="visible">True</property>
|
|
|
|
|
<property name="can_focus">False</property>
|
|
|
|
|
<property name="xpad">18</property>
|
|
|
|
|
<property name="ypad">18</property>
|
|
|
|
|
<property name="label">🎔</property>
|
|
|
|
|
<style>
|
|
|
|
|
<class name="frame"/>
|
|
|
|
|
<class name="view"/>
|
|
|
|
|
</style>
|
|
|
|
|
</object>
|
|
|
|
|
<packing>
|
|
|
|
|
<property name="expand">True</property>
|
|
|
|
|
<property name="fill">False</property>
|
|
|
|
|
<property name="position">0</property>
|
|
|
|
|
</packing>
|
|
|
|
|
</child>
|
|
|
|
|
</object>
|
|
|
|
|
<packing>
|
|
|
|
|
<property name="name">user_message_page</property>
|
|
|
|
|
<property name="position">3</property>
|
|
|
|
|
</packing>
|
|
|
|
|
</child>
|
Reenable and update code for attached, full pane message composer.
Display attached+un-embedded composer as an additional ConversationViewer
stack page, although it realy should be broken as its own top-level
widget - there's already too much state in ConversationViewer.
* src/client/conversation-viewer/conversation-viewer.vala: Remove old
composer boxes code. Add new ViewState enum, property and methods to
define and manipulate the current view state - either conversation or
composer.
(do_conversation): New method to put the viewer in conversation mode.
(do_compose): New method to put the viewer in compose mode, hook up the
composer widget, and handle ConversationListView selection management
for now.
(on_folder_selected, on_conversation_count_changed,
on_conversations_selected): Ensure these methods do the right thing
depending on the viewer's current view state.
(set_paned_composer): Replaced by ::do_compose, fixed call sites.
(show_multiple_selected): Minor code clean up - moved down to a more
appropriate location.
* src/client/composer/composer-box.vala (ComposerBox): Don't attempt to
up-manage it's parent's state, since the parent has a much better idea
of how best to do that. Likewise move code to manage previous
ConversationList selection out, provide signal so the a more
appropriate class can manage it instead.
* src/client/composer/composer-container.vala: Add some method comments.
* ui/conversation-viewer.ui: Add new page to the stack for the composer.
2016-04-11 02:52:53 +10:00
|
|
|
<child>
|
|
|
|
|
<object class="GtkBox" id="composer_page">
|
|
|
|
|
<property name="visible">True</property>
|
|
|
|
|
<property name="can_focus">False</property>
|
|
|
|
|
<property name="orientation">vertical</property>
|
|
|
|
|
<child>
|
|
|
|
|
<placeholder/>
|
|
|
|
|
</child>
|
|
|
|
|
</object>
|
|
|
|
|
<packing>
|
|
|
|
|
<property name="name">composer_page</property>
|
|
|
|
|
<property name="position">4</property>
|
|
|
|
|
</packing>
|
|
|
|
|
</child>
|
2016-04-09 18:06:41 +10:00
|
|
|
</template>
|
|
|
|
|
</interface>
|