[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