[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-frameworks-devel
Subject:    Re: Review Request 119594: fix FileDialog size restorage
From:       Thomas_Lübking <thomas.luebking () gmail ! com>
Date:       2014-08-04 20:54:23
Message-ID: 20140804205423.20973.42674 () probe ! kde ! org
[Download RAW message or body]

--===============8861908762490560277==
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit



> On Aug. 4, 2014, 12:11 nachm., Martin Klapetek wrote:
> > This does fix the issue here; +1 from me
> > 
> > Also, are you investigating/reporting the bug to Qt devs?
> 
> Thomas Lübking wrote:
> On a quick glimpse, it looks like the issue is that QWidgetWindow syncs stuff and \
> that it syncs (only) in ::event() ie. the eventloop must be up for \
> QWindow::setGeometry() to impact QWidget::geometry() 
> -> I fear that's out of scope for a noon break ;-)
> I'll try to have a more detailed look this week.

https://bugreports.qt-project.org/browse/QTBUG-40584


- Thomas


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/119594/#review63765
-----------------------------------------------------------


On Aug. 4, 2014, 11:57 vorm., Thomas Lübking wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/119594/
> -----------------------------------------------------------
> 
> (Updated Aug. 4, 2014, 11:57 vorm.)
> 
> 
> Review request for KDE Frameworks, kdelibs, Aleix Pol Gonzalez, Lukáš Tinkl, and \
> Martin Klapetek. 
> 
> Repository: frameworkintegration
> 
> 
> Description
> -------
> 
> - saving in the deconstrutor is insufficient,
> the dialog might survive the runtime
> -> needs to be saved when the dialog is finished or just closed
> (the closeEvent is not invoked if at least a sync dialog is finished)
> 
> - ensure a windowHandle and then restore the window size before calling ::exec()
> 
> - workaround an apparent QWidget QPA bug where even for a created platform window
> the QWindow geometry is not applied on the QWidget
> 
> 
> Diffs
> -----
> 
> src/platformtheme/kdeplatformfiledialogbase.cpp b823bc7 
> src/platformtheme/kdeplatformfiledialogbase_p.h 8ef5b1e 
> src/platformtheme/kdeplatformfiledialoghelper.h 406a4f1 
> src/platformtheme/kdeplatformfiledialoghelper.cpp 520b6f5 
> 
> Diff: https://git.reviewboard.kde.org/r/119594/diff/
> 
> 
> Testing
> -------
> 
> See
> https://git.reviewboard.kde.org/r/119512/
> 
> 
> Thanks,
> 
> Thomas Lübking
> 
> 


--===============8861908762490560277==
MIME-Version: 1.0
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: 8bit




<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="12" style="border: 1px #c9c399 \
solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">  \
<tr>  <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://git.reviewboard.kde.org/r/119594/">https://git.reviewboard.kde.org/r/119594/</a>
  </td>
    </tr>
   </table>
   <br />





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <p style="margin-top: 0;">On August 4th, 2014, 12:11 nachm. UTC, <b>Martin \
Klapetek</b> wrote:</p>  <blockquote style="margin-left: 1em; border-left: 2px solid \
#d0d0d0; padding-left: 10px;">  <pre style="white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">This does fix the issue here; +1 from me</p> <p \
style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
inherit;">Also, are you investigating/reporting the bug to Qt devs?</p></pre>  \
</blockquote>




 <p>On August 4th, 2014, 12:36 nachm. UTC, <b>Thomas Lübking</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">On a \
quick glimpse, it looks like the issue is that QWidgetWindow syncs stuff and that it \
syncs (only) in ::event() ie. the eventloop must be up for QWindow::setGeometry() to \
impact QWidget::geometry()</p> <p style="padding: 0;text-rendering: inherit;margin: \
0;line-height: inherit;white-space: inherit;">-&gt; I fear that's out of scope for a \
noon break ;-)<br style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: normal;" /> I'll try to have a more detailed look this \
week.</p></pre>  </blockquote>








</blockquote>

<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
inherit;">https://bugreports.qt-project.org/browse/QTBUG-40584</p></pre> <br />










<p>- Thomas</p>


<br />
<p>On August 4th, 2014, 11:57 vorm. UTC, Thomas Lübking wrote:</p>









<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="12" style="border: \
1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; \
-webkit-border-radius: 6px;">  <tr>
  <td>

<div>Review request for KDE Frameworks, kdelibs, Aleix Pol Gonzalez, Lukáš Tinkl, \
and Martin Klapetek.</div> <div>By Thomas Lübking.</div>


<p style="color: grey;"><i>Updated Aug. 4, 2014, 11:57 vorm.</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
frameworkintegration
</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" \
style="border: 1px solid #b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;"><ul style="padding: 0;text-rendering: inherit;margin: 0 0 0 \
1em;line-height: inherit;white-space: normal;"> <li style="padding: 0;text-rendering: \
inherit;margin: 0;line-height: inherit;white-space: normal;"> <p style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
inherit;">saving in the deconstrutor is insufficient,<br style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;" />  \
the dialog might survive the runtime<br style="padding: 0;text-rendering: \
                inherit;margin: 0;line-height: inherit;white-space: normal;" />
  -&gt; needs to be saved when the dialog is finished or just closed<br \
style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
normal;" />  (the closeEvent is not invoked if at least a sync dialog is \
finished)</p> </li>
<li style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: normal;"> <p style="padding: 0;text-rendering: inherit;margin: \
0;line-height: inherit;white-space: inherit;">ensure a windowHandle and then restore \
the window size before calling ::exec()</p> </li>
<li style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: normal;"> <p style="padding: 0;text-rendering: inherit;margin: \
0;line-height: inherit;white-space: inherit;">workaround an apparent QWidget QPA bug \
where even for a created platform window<br style="padding: 0;text-rendering: \
inherit;margin: 0;line-height: inherit;white-space: normal;" />  the QWindow geometry \
is not applied on the QWidget</p> </li>
</ul></pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: \
1px solid #b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">See<br style="padding: 0;text-rendering: \
inherit;margin: 0;line-height: inherit;white-space: normal;" /> \
https://git.reviewboard.kde.org/r/119512/</p></pre>  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>src/platformtheme/kdeplatformfiledialogbase.cpp <span style="color: \
grey">(b823bc7)</span></li>

 <li>src/platformtheme/kdeplatformfiledialogbase_p.h <span style="color: \
grey">(8ef5b1e)</span></li>

 <li>src/platformtheme/kdeplatformfiledialoghelper.h <span style="color: \
grey">(406a4f1)</span></li>

 <li>src/platformtheme/kdeplatformfiledialoghelper.cpp <span style="color: \
grey">(520b6f5)</span></li>

</ul>

<p><a href="https://git.reviewboard.kde.org/r/119594/diff/" style="margin-left: \
3em;">View Diff</a></p>






  </td>
 </tr>
</table>








  </div>
 </body>
</html>


--===============8861908762490560277==--



_______________________________________________
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic