[gnome-boxes/fix-transfer-box-stealing-focus: 3/3] display-page: Center the DnD transfer message in an overlayed osd box



commit ab7b7e8e77afb5cdc148bb5b32ae65daae512116
Author: Felipe Borges <felipeborges gnome org>
Date:   Tue May 5 17:23:42 2020 +0200

    display-page: Center the DnD transfer message in an overlayed osd box
    
    This is a better version than c9cd4efd that introduced a regression
    which the GtkBox with the transfer message was interfering with the
    drag-motion event of the underlying widget in the overlay.
    
    Now we cover the whole display with transfer_message_box. Visually
    it stays the same because we now have another GtkBox inside the
    transfer_message_box which has the app-notification and overlay-box
    css classes (as expected).
    
    Fixes #533

 data/ui/display-page.ui | 108 ++++++++++++++++++++++++++----------------------
 1 file changed, 58 insertions(+), 50 deletions(-)
---
diff --git a/data/ui/display-page.ui b/data/ui/display-page.ui
index dcb5ed65..37237766 100644
--- a/data/ui/display-page.ui
+++ b/data/ui/display-page.ui
@@ -47,82 +47,90 @@
 
             <child type="overlay">
               <object class="GtkBox" id="transfer_message_box">
-                <property name="can_focus">False</property>
-                <property name="halign">center</property>
-                <property name="valign">center</property>
-                <property name="hexpand">true</property>
-                <property name="vexpand">true</property>
-                <style>
-                  <class name="app-notification"/>
-                </style>
+                <property name="hexpand">True</property>
+                <property name="vexpand">True</property>
                 <child>
-                  <object class="GtkImage">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="halign">end</property>
-                    <property name="valign">center</property>
-                    <property name="margin_right">24</property>
-                    <property name="icon_name">document-save-symbolic</property>
-                    <property name="icon_size">6</property>
-                  </object>
-                  <packing>
-                    <property name="expand">True</property>
-                    <property name="fill">True</property>
-                    <property name="position">0</property>
-                  </packing>
-                </child>
-                <child type="center">
                   <object class="GtkBox">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="halign">start</property>
+                    <property name="halign">center</property>
                     <property name="valign">center</property>
                     <property name="hexpand">True</property>
                     <property name="vexpand">True</property>
-                    <property name="orientation">vertical</property>
-                    <property name="spacing">10</property>
+                    <style>
+                      <class name="app-notification"/>
+                      <class name="overlay-box"/>
+                    </style>
                     <child>
-                      <object class="GtkLabel">
+                      <object class="GtkImage">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="halign">start</property>
-                        <property name="margin_left">4</property>
-                        <property name="label" translatable="yes">Ready to Receive File</property>
-                        <property name="justify">center</property>
-                        <style>
-                          <class name="tooltip"/>
-                        </style>
-                        <attributes>
-                          <attribute name="weight" value="bold"/>
-                        </attributes>
+                        <property name="halign">end</property>
+                        <property name="valign">center</property>
+                        <property name="margin_right">24</property>
+                        <property name="icon_name">document-save-symbolic</property>
+                        <property name="icon_size">6</property>
                       </object>
                       <packing>
-                        <property name="expand">False</property>
+                        <property name="expand">True</property>
                         <property name="fill">True</property>
                         <property name="position">0</property>
                       </packing>
                     </child>
-                    <child>
-                      <object class="GtkLabel">
+                    <child type="center">
+                      <object class="GtkBox">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
+                        <property name="halign">start</property>
+                        <property name="valign">center</property>
+                        <property name="hexpand">True</property>
                         <property name="vexpand">True</property>
-                        <property name="label" translatable="yes">You will find your file in the Downloads 
directory.</property>
-                        <property name="wrap">True</property>
-                        <property name="max_width_chars">25</property>
+                        <property name="orientation">vertical</property>
+                        <property name="spacing">10</property>
+                        <child>
+                          <object class="GtkLabel">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="halign">start</property>
+                            <property name="margin_left">4</property>
+                            <property name="label" translatable="yes">Ready to Receive File</property>
+                            <property name="justify">center</property>
+                            <style>
+                              <class name="tooltip"/>
+                            </style>
+                            <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">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="vexpand">True</property>
+                            <property name="label" translatable="yes">You will find your file in the 
Downloads directory.</property>
+                            <property name="wrap">True</property>
+                            <property name="max_width_chars">25</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="position">1</property>
+                        <property name="position">2</property>
                       </packing>
                     </child>
                   </object>
-                  <packing>
-                    <property name="expand">False</property>
-                    <property name="fill">True</property>
-                    <property name="position">2</property>
-                  </packing>
                 </child>
               </object>
             </child>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]