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

List:       kfm-devel
Subject:    Re: Review Request 112567: Move the tab-handling away from DolphinMainWindow (Patch-Series)
From:       "Emmanuel Pescosta" <emmanuelpescosta099 () gmail ! com>
Date:       2013-09-08 23:48:00
Message-ID: 20130908234800.19314.98541 () vidsolbach ! de
[Download RAW message or body]

> On Sept. 8, 2013, 10:21 p.m., Frank Reininghaus wrote:
> > Thanks for your efforts to refactor the tab-handling code.
> > 
> > Hm, I'm not quite sure what I and possible other reviewers are supposed \
> > to say about this review request. I think that a patch that removes \
> > crucial functionality should not be pushed to master. There are quite a \
> > few people (including myself) who use the master branch for their daily \
> > work, and most of them would not be happy if splitting the view and \
> > opening tabs suddenly does not work any more, even if it's just a \
> > temporary regression. 
> > I like the idea of splitting huge changes into smaller independent \
> > commits, but also the other two patches are a bit hard to comment on, \
> > considering that I don't know what the final result is supposed to be, \
> > and that I haven't worked much with that code in DolphinMainWindow at \
> > all. 
> > Maybe your patch series could be committed to a feature branch? That \
> > would enable others to look at all patches in context and to test it. I \
> > would really appreciate any help from others here. As I said, I don't \
> > know that code well, and going through all this and comparing with the \
> > old code will probably take *many* hours. 
> > I think it might also help if you could provide a high-level overview \
> > of what your patch series does, what new classes there are, etc. And \
> > maybe even more importantly, what is the benefit of the change? To be \
> > honest, at the moment it looks to me like you are proposing to turn a \
> > lot of code (which has worked well for a couple of years) upside down, \
> > and I'm not sure if I understand what the purpose of the change is. 
> > Please try to make the review job a bit easier for everyone else. I \
> > cannot really spend more than an hour per day on Dolphin on average, \
> > and my motivation to spend at the very least a week, possibly more, of \
> > the daily "Dolphin time" figuring out all that stuff myself, seeing the \
> > bug reports pile up during that time, and getting no work done myself \
> > is rather low if I don't see the "big picture" and I don't know what \
> > the purpose of the change is.

Thanks for your feedback.

Yes I agree with you, that this and the other already published feature \
requests look a little bit weird, but I think it will be more obvious once \
I have published all changes ;)

> who use the master branch for their daily work
Yes if we commit these changes to master, we have to commit all patches in \
this patch series at once.  So a feature branch for these changes is not a \
bad idea I think.

> I think it might also help if you could provide a high-level overview of \
> what your patch series does, what new classes there are, etc.
Yes I will definitely do this when I have all patches ready/working. I will \
draw a small dependency graph for the new classes, so that everybody has a \
big picture of it ;)

The review requests for "DolphinRecentTabsMenu" and \
"DolphinViewSignalAdapter" are intended to get early feedback on design \
decisions.

> And maybe even more importantly, what is the benefit of the change?
1. Make DolphinMainWindow much smaller
2. Encapsulate the functionality into different classes like \
DolphinRecentTabsMenu, DolphinTabPage (Split View handling) and \
DolphinTabWidget (Tab handling) 3. Port away from KTabBar to QTabBar and \
QTabWidget (Brings some other benefits like smooth tab changing - fading, \
keep settings for every tab page like splitter size, ...) 4. Make it easier \
for other developers to read the code or to change something in the \
tab/split view handling of Dolphin


All in all: No loss in functionality but easier to understand, extend and \
maintain.


- Emmanuel


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/112567/#review39612
-----------------------------------------------------------


On Sept. 6, 2013, 4:48 p.m., Emmanuel Pescosta wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/112567/
> -----------------------------------------------------------
> 
> (Updated Sept. 6, 2013, 4:48 p.m.)
> 
> 
> Review request for Dolphin.
> 
> 
> Description
> -------
> 
> Move the tab-handling away from DolphinMainWindow (Patch-Series)
> 
> Removed all code in DolphinMainWindow which is related to tabbed \
> browsing, except of some functions/slots which are required for the \
> current UI, like openNewTab(), openInNewTab(), ...
> 
> The tab-handling will be implemented again in another patch.
> 
> Split View and Tabbed Browsing will not work anymore with this patch!
> 
> 
> Diffs
> -----
> 
> dolphin/src/dolphinmainwindow.h 7da5801 
> dolphin/src/dolphinmainwindow.cpp 4128cdf 
> 
> Diff: http://git.reviewboard.kde.org/r/112567/diff/
> 
> 
> Testing
> -------
> 
> Split View and Tabbed Browsing doesn't work (is ok)
> 
> Everything else works fine for me (Only one view)
> 
> 
> Thanks,
> 
> Emmanuel Pescosta
> 
> 


[Attachment #3 (text/html)]

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





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; \
padding-left: 10px;">  <p style="margin-top: 0;">On September 8th, 2013, \
10:21 p.m. UTC, <b>Frank Reininghaus</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;">Thanks for your efforts to refactor the tab-handling code.

Hm, I&#39;m not quite sure what I and possible other reviewers are supposed \
to say about this review request. I think that a patch that removes crucial \
functionality should not be pushed to master. There are quite a few people \
(including myself) who use the master branch for their daily work, and most \
of them would not be happy if splitting the view and opening tabs suddenly \
does not work any more, even if it&#39;s just a temporary regression.

I like the idea of splitting huge changes into smaller independent commits, \
but also the other two patches are a bit hard to comment on, considering \
that I don&#39;t know what the final result is supposed to be, and that I \
haven&#39;t worked much with that code in DolphinMainWindow at all.

Maybe your patch series could be committed to a feature branch? That would \
enable others to look at all patches in context and to test it. I would \
really appreciate any help from others here. As I said, I don&#39;t know \
that code well, and going through all this and comparing with the old code \
will probably take *many* hours.

I think it might also help if you could provide a high-level overview of \
what your patch series does, what new classes there are, etc. And maybe \
even more importantly, what is the benefit of the change? To be honest, at \
the moment it looks to me like you are proposing to turn a lot of code \
(which has worked well for a couple of years) upside down, and I&#39;m not \
sure if I understand what the purpose of the change is.

Please try to make the review job a bit easier for everyone else. I cannot \
really spend more than an hour per day on Dolphin on average, and my \
motivation to spend at the very least a week, possibly more, of the daily \
&quot;Dolphin time&quot; figuring out all that stuff myself, seeing the bug \
reports pile up during that time, and getting no work done myself is rather \
low if I don&#39;t see the &quot;big picture&quot; and I don&#39;t know \
what the purpose of the change is.</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;">Thanks for \
your feedback.

Yes I agree with you, that this and the other already published feature \
requests look a little bit weird, but I think it will be more obvious once \
I have published all changes ;)

&gt; who use the master branch for their daily work
Yes if we commit these changes to master, we have to commit all patches in \
this patch series at once.  So a feature branch for these changes is not a \
bad idea I think.

&gt; I think it might also help if you could provide a high-level overview \
of what your patch series does, what new classes there are, etc. Yes I will \
definitely do this when I have all patches ready/working. I will draw a \
small dependency graph for the new classes, so that everybody has a big \
picture of it ;)

The review requests for &quot;DolphinRecentTabsMenu&quot; and \
&quot;DolphinViewSignalAdapter&quot; are intended to get early feedback on \
design decisions.

&gt; And maybe even more importantly, what is the benefit of the change?
1. Make DolphinMainWindow much smaller
2. Encapsulate the functionality into different classes like \
DolphinRecentTabsMenu, DolphinTabPage (Split View handling) and \
DolphinTabWidget (Tab handling) 3. Port away from KTabBar to QTabBar and \
QTabWidget (Brings some other benefits like smooth tab changing - fading, \
keep settings for every tab page like splitter size, ...) 4. Make it easier \
for other developers to read the code or to change something in the \
tab/split view handling of Dolphin


All in all: No loss in functionality but easier to understand, extend and \
maintain. </pre>
<br />










<p>- Emmanuel</p>


<br />
<p>On September 6th, 2013, 4:48 p.m. UTC, Emmanuel Pescosta wrote:</p>








<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" \
style="background-image: \
url('http://git.reviewboard.kde.org/static/rb/images/review_request_box_top_bg.ab6f3b1072c9.png'); \
background-position: left top; background-repeat: repeat-x; border: 1px \
black solid;">  <tr>
  <td>

<div>Review request for Dolphin.</div>
<div>By Emmanuel Pescosta.</div>


<p style="color: grey;"><i>Updated Sept. 6, 2013, 4:48 p.m.</i></p>






<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;">Move the tab-handling away from DolphinMainWindow \
(Patch-Series)  
Removed all code in DolphinMainWindow which is related to tabbed browsing,
except of some functions/slots which are required for the current UI, like
openNewTab(), openInNewTab(), ...
    
The tab-handling will be implemented again in another patch.

Split View and Tabbed Browsing will not work anymore with this patch!</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;">Split View and Tabbed Browsing doesn&#39;t work (is ok)

Everything else works fine for me (Only one view)</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>dolphin/src/dolphinmainwindow.h <span style="color: \
grey">(7da5801)</span></li>

 <li>dolphin/src/dolphinmainwindow.cpp <span style="color: \
grey">(4128cdf)</span></li>

</ul>

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







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








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



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

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