commit 69f2d93d65309bf74a7c7471c38e6a9d2537527b
parent 65fcc6b96086267da1f3862474efc28db27a51c3
Author: Jacki <jacki@thejackimonster.de>
Date: Sat, 11 May 2024 16:12:43 +0200
Solve issues with header bars
Signed-off-by: Jacki <jacki@thejackimonster.de>
Diffstat:
5 files changed, 23 insertions(+), 985 deletions(-)
diff --git a/resources/ui/#messenger.ui# b/resources/ui/#messenger.ui#
@@ -1,978 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.40.0
-
-Copyright (C) 2021‑‑2022 GNUnet e.V.
-
-GNUnet is free software: you can redistribute it and/or modify it
-under the terms of the GNU Affero General Public License as published
-by the Free Software Foundation, either version 3 of the License,
-or (at your option) any later version.
-
-GNUnet is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-Affero General Public License for more details.
-
-You should have received a copy of the GNU Affero General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-SPDX-License-Identifier: AGPL3.0-or-later
-Author: Tobias Frisch
-
--->
-<interface>
- <requires lib="gtk+" version="3.24"/>
- <requires lib="libhandy" version="1.2"/>
- <object class="GtkApplicationWindow" id="main_window">
- <property name="can-focus">False</property>
- <property name="icon-name">org.gnunet.Messenger</property>
- <property name="startup-id">org.gnunet.Messenger</property>
- <property name="show-menubar">False</property>
- <child>
- <object class="HdyLeaflet" id="leaflet_chat">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="hhomogeneous-folded">False</property>
- <property name="vhomogeneous-folded">False</property>
- <property name="can-swipe-back">True</property>
- <child>
- <object class="GtkBox" id="nav_box">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="orientation">vertical</property>
- <child>
- <object class="HdyFlap" id="flap_user_details">
- <property name="width-request">300</property>
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="reveal-flap">False</property>
- <property name="fold-policy">always</property>
- <child type="content">
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="orientation">vertical</property>
- <child>
- <object class="GtkScrolledWindow">
- <property name="visible">True</property>
- <property name="can-focus">True</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="chats_listbox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- </object>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="pack-type">end</property>
- <property name="position">0</property>
- </packing>
- </child>
- </object>
- </child>
- <child type="separator">
- <object class="GtkSeparator">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- </object>
- </child>
- <child type="flap">
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="orientation">vertical</property>
- <child>
- <object class="GtkBox">
- <property name="width-request">240</property>
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="border-width">16</property>
- <property name="orientation">vertical</property>
- <property name="spacing">16</property>
- <child>
- <object class="GtkButton" id="profile_button">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="receives-default">True</property>
- <property name="halign">start</property>
- <property name="relief">none</property>
- <child>
- <object class="HdyAvatar" id="profile_avatar">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="size">64</property>
- </object>
- </child>
- <style>
- <class name="profile-button"/>
- </style>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="orientation">vertical</property>
- <property name="spacing">2</property>
- <child>
- <object class="GtkLabel" id="profile_label">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="ellipsize">end</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="weight" value="bold"/>
- </attributes>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="profile_key_label">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="ellipsize">end</property>
- <property name="max-width-chars">30</property>
- <property name="xalign">0</property>
- <style>
- <class name="profile-key"/>
- </style>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="border-width">8</property>
- <property name="orientation">vertical</property>
- <property name="spacing">8</property>
- <property name="homogeneous">True</property>
- <child>
- <object class="GtkButton" id="hide_user_details_button">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="receives-default">True</property>
- <property name="relief">none</property>
- <child>
- <object class="GtkImage">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="icon-name">go-previous-symbolic</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkButton" id="lobby_button">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="receives-default">True</property>
- <property name="halign">center</property>
- <property name="valign">center</property>
- <property name="relief">none</property>
- <child>
- <object class="GtkImage">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="icon-name">dialog-password-symbolic</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- <child>
- <object class="GtkButton" id="account_details_button">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="receives-default">True</property>
- <property name="halign">center</property>
- <property name="valign">center</property>
- <property name="relief">none</property>
- <child>
- <object class="GtkImage" id="account_details_symbol">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="icon-name">go-down-symbolic</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="position">2</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="pack-type">end</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkScrolledWindow">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <child>
- <object class="GtkViewport">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="shadow-type">none</property>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="orientation">vertical</property>
- <child>
- <object class="GtkRevealer" id="account_details_revealer">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <child>
- <object class="GtkScrolledWindow">
- <property name="height-request">250</property>
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <child>
- <object class="GtkViewport">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <child>
- <object class="GtkListBox" id="accounts_listbox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <child>
- <object class="GtkListBoxRow" id="add_account_listbox_row">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="selectable">False</property>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="spacing">8</property>
- <child>
- <object class="GtkImage">
- <property name="width-request">36</property>
- <property name="height-request">36</property>
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="icon-name">list-add-symbolic</property>
- <property name="icon_size">3</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">Add Account</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- <style>
- <class name="account-entry"/>
- </style>
- </object>
- </child>
- </object>
- </child>
- </object>
- </child>
- </object>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="orientation">vertical</property>
- <child>
- <object class="GtkButton" id="new_contact_button">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="receives-default">True</property>
- <property name="relief">none</property>
- <property name="always-show-image">True</property>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="border-width">4</property>
- <property name="spacing">16</property>
- <child>
- <object class="GtkImage">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="icon-name">contact-new-symbolic</property>
- <property name="icon_size">3</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="new-contact-label">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">New Contact</property>
- <property name="xalign">0</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkButton" id="new_group_button">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="receives-default">True</property>
- <property name="relief">none</property>
- <property name="always-show-image">True</property>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="border-width">4</property>
- <property name="spacing">16</property>
- <child>
- <object class="GtkImage">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="icon-name">system-users-symbolic</property>
- <property name="icon_size">3</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="new-group-label">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">New Group</property>
- <property name="xalign">0</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- <child>
- <object class="GtkButton" id="new_platform_button">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="receives-default">True</property>
- <property name="relief">none</property>
- <property name="always-show-image">True</property>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="border-width">4</property>
- <property name="spacing">16</property>
- <child>
- <object class="GtkImage">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="icon-name">network-wired-symbolic</property>
- <property name="icon_size">3</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="new-platform-label">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">New Platform</property>
- <property name="xalign">0</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">2</property>
- </packing>
- </child>
- <child>
- <object class="GtkButton" id="contacts_button">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="receives-default">True</property>
- <property name="relief">none</property>
- <property name="always-show-image">True</property>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="border-width">4</property>
- <property name="spacing">16</property>
- <child>
- <object class="GtkImage">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="icon-name">avatar-default-symbolic</property>
- <property name="icon_size">3</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="contacts-label">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">Contacts</property>
- <property name="xalign">0</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">3</property>
- </packing>
- </child>
- <child>
- <object class="GtkButton" id="settings_button">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="receives-default">True</property>
- <property name="relief">none</property>
- <property name="always-show-image">True</property>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="border-width">4</property>
- <property name="spacing">16</property>
- <child>
- <object class="GtkImage">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="icon-name">emblem-system-symbolic</property>
- <property name="icon_size">3</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="settings-label">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">Settings</property>
- <property name="xalign">0</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">4</property>
- </packing>
- </child>
- <child>
- <object class="GtkButton" id="about_button">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="receives-default">True</property>
- <property name="relief">none</property>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="border-width">4</property>
- <property name="spacing">16</property>
- <child>
- <object class="GtkImage">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="icon-name">help-about-symbolic</property>
- <property name="icon_size">3</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="about-label">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">About</property>
- <property name="xalign">0</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">5</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="border-width">16</property>
- <property name="orientation">vertical</property>
- <child>
- <object class="GtkLabel" id="application-name-label">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="halign">start</property>
- <attributes>
- <attribute name="weight" value="bold"/>
- </attributes>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="application-version-label">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="halign">start</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="pack-type">end</property>
- <property name="position">2</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- <style>
- <class name="flap-background"/>
- </style>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="pack-type">end</property>
- <property name="position">0</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="name">nav</property>
- </packing>
- </child>
- <child>
- <object class="GtkBox" id="main_box">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="hexpand">True</property>
- <property name="orientation">vertical</property>
- <child>
- <object class="GtkStack" id="chats_stack">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <child>
- <object class="GtkBox" id="no_chat_box">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="orientation">vertical</property>
- <child>
- <object class="GtkLabel">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="halign">center</property>
- <property name="valign">center</property>
- <property name="label" translatable="yes">Select a chat to start messaging...</property>
- <style>
- <class name="message-box"/>
- <class name="status"/>
- </style>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="pack-type">end</property>
- <property name="position">0</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="name">main</property>
- </packing>
- </child>
- </object>
- </child>
- <child type="titlebar">
- <object class="HdyTitleBar">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <child>
- <object class="HdyLeaflet" id="leaflet_title">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="hhomogeneous-folded">False</property>
- <property name="vhomogeneous-folded">False</property>
- <child>
- <object class="GtkHeaderBar" id="nav_bar">
- <property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="can-focus">False</property>
- <property name="spacing">4</property>
- <child type="title">
- <object class="GtkStack" id="chats_title_stack">
- <property name="width-request">204</property>
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="transition-type">slide-down</property>
- <child>
- <object class="GtkBox" id="title_box">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="hexpand">True</property>
- <child>
- <object class="GtkLabel">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="label" translatable="yes">GNUnet Messenger</property>
- <property name="xalign">0</property>
- <attributes>
- <attribute name="weight" value="bold"/>
- </attributes>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <style>
- <class name="header-box"/>
- </style>
- </object>
- <packing>
- <property name="name">title_page</property>
- </packing>
- </child>
- <child>
- <object class="GtkBox" id="search_box">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="hexpand">True</property>
- <child>
- <object class="GtkSearchEntry" id="chats_search_entry">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="primary-icon-name">edit-find-symbolic</property>
- <property name="primary-icon-activatable">False</property>
- <property name="primary-icon-sensitive">False</property>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <style>
- <class name="header-box"/>
- </style>
- </object>
- <packing>
- <property name="name">search_page</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- </child>
- <child>
- <object class="GtkButton" id="user_details_button">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="receives-default">True</property>
- <property name="relief">none</property>
- <child>
- <object class="GtkImage">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="icon-name">open-menu-symbolic</property>
- </object>
- </child>
- </object>
- </child>
- <child>
- <object class="GtkButton" id="chats_search_button">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="receives-default">True</property>
- <property name="relief">none</property>
- <child>
- <object class="GtkStack" id="search_icon_stack">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <child>
- <object class="GtkImage">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="icon-name">edit-find-symbolic</property>
- </object>
- <packing>
- <property name="name">title_page</property>
- </packing>
- </child>
- <child>
- <object class="GtkImage">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="icon-name">window-close-symbolic</property>
- </object>
- <packing>
- <property name="name">search_page</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="pack-type">end</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="name">nav</property>
- </packing>
- </child>
- <child>
- <object class="GtkHeaderBar" id="main_bar">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="hexpand">True</property>
- <property name="spacing">0</property>
- <child type="title">
- <object class="GtkStack" id="chat_title_stack">
- <property name="visible">True</property>
- <property name="can-focus">False</property>
- <property name="hexpand">True</property>
- <property name="transition-type">slide-down</property>
- <child>
- <placeholder/>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="name">main</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- </child>
- </object>
- <object class="GtkSizeGroup">
- <property name="mode">vertical</property>
- <widgets>
- <widget name="nav_bar"/>
- <widget name="main_bar"/>
- </widgets>
- </object>
- <object class="GtkSizeGroup">
- <property name="mode">vertical</property>
- <widgets>
- <widget name="nav_box"/>
- <widget name="main_box"/>
- </widgets>
- </object>
- <object class="GtkSizeGroup">
- <widgets>
- <widget name="new-contact-label"/>
- <widget name="new-group-label"/>
- <widget name="new-platform-label"/>
- <widget name="contacts-label"/>
- <widget name="settings-label"/>
- </widgets>
- </object>
- <object class="GtkSizeGroup">
- <widgets>
- <widget name="nav_box"/>
- <widget name="nav_bar"/>
- </widgets>
- </object>
- <object class="GtkSizeGroup">
- <widgets>
- <widget name="main_box"/>
- <widget name="main_bar"/>
- </widgets>
- </object>
-</interface>
diff --git a/resources/ui/messenger.ui b/resources/ui/messenger.ui
@@ -784,10 +784,11 @@ Author: Tobias Frisch
<property name="hhomogeneous-folded">False</property>
<property name="vhomogeneous-folded">False</property>
<child>
- <object class="GtkHeaderBar" id="nav_bar">
+ <object class="HdyHeaderBar" id="nav_bar">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="spacing">4</property>
+ <property name="show-close-button">True</property>
<child type="title">
<object class="GtkStack" id="chats_title_stack">
<property name="width-request">204</property>
@@ -913,11 +914,13 @@ Author: Tobias Frisch
</packing>
</child>
<child>
- <object class="GtkHeaderBar" id="main_bar">
+ <object class="HdyHeaderBar" id="main_bar">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="hexpand">True</property>
- <property name="spacing">0</property>
+ <property name="spacing">4</property>
+ <property name="show-close-button">True</property>
+ <property name="interpolate-size">True</property>
<child type="title">
<object class="GtkStack" id="chat_title_stack">
<property name="visible">True</property>
@@ -974,4 +977,10 @@ Author: Tobias Frisch
<widget name="main_bar"/>
</widgets>
</object>
+ <object class="HdyHeaderGroup">
+ <headerbars>
+ <headerbar name="nav_bar"/>
+ <headerbar name="main_bar"/>
+ </headerbars>
+ </object>
</interface>
diff --git a/src/event.c b/src/event.c
@@ -363,6 +363,13 @@ event_update_profile(MESSENGER_Application *app)
ui_label_set_text(ui->profile_key_label, key);
gtk_stack_set_visible_child(ui->chats_stack, ui->no_chat_box);
+
+ GList *children = gtk_container_get_children(GTK_CONTAINER(ui->leaflet_chat));
+
+ if (children) {
+ hdy_leaflet_set_visible_child(ui->leaflet_chat, GTK_WIDGET(children->data));
+ g_list_free(children);
+ }
GNUNET_CHAT_iterate_contacts(chat->handle, _iterate_profile_contacts, app);
GNUNET_CHAT_iterate_groups(chat->handle, _iterate_profile_groups, app);
diff --git a/src/ui/messenger.c b/src/ui/messenger.c
@@ -468,11 +468,11 @@ ui_messenger_init(MESSENGER_Application *app,
gtk_builder_get_object(handle->builder, "flap_user_details")
);
- handle->nav_bar = GTK_HEADER_BAR(
+ handle->nav_bar = HDY_HEADER_BAR(
gtk_builder_get_object(handle->builder, "nav_bar")
);
- handle->main_bar = GTK_HEADER_BAR(
+ handle->main_bar = HDY_HEADER_BAR(
gtk_builder_get_object(handle->builder, "main_bar")
);
diff --git a/src/ui/messenger.h b/src/ui/messenger.h
@@ -48,8 +48,8 @@ typedef struct UI_MESSENGER_Handle
HdyLeaflet *leaflet_chat;
HdyFlap *flap_user_details;
- GtkHeaderBar *nav_bar;
- GtkHeaderBar *main_bar;
+ HdyHeaderBar *nav_bar;
+ HdyHeaderBar *main_bar;
GtkButton *profile_button;
HdyAvatar *profile_avatar;