[Okular-devel] Review Request 122570: Update session restore/save to account for multiple tabs

Albert Astals Cid aacid at kde.org
Sun Feb 22 16:28:11 UTC 2015


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


Was thinking about the saving the viewport, are we closing the documents properly? Because if we are, on opening they should just be resotred to their proper viewport as when just opening a document from scratch, no?


shell/shell.cpp
<https://git.reviewboard.kde.org/r/122570/#comment52649>

    Do we need to call slotQuit both from here and from the signal connection? I understand you mean session only calls aboutToQuit and not the closeEvent (which is weird), but does normal close only call closeEvent and not aboutToQuit?


- Albert Astals Cid


On feb. 22, 2015, 5:10 a.m., Jonathan Doman wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/122570/
> -----------------------------------------------------------
> 
> (Updated feb. 22, 2015, 5:10 a.m.)
> 
> 
> Review request for Okular.
> 
> 
> Bugs: 335852
>     http://bugs.kde.org/show_bug.cgi?id=335852
> 
> 
> Repository: okular
> 
> 
> Description
> -------
> 
> New Shell logic loops through each tab and saves URLs and active tab index in session config.
> 
> Viewport was previously saved in session config, but I opted to remove it because:
> 1. It complicates the restore logic. It would require either using QMetaObject::invoke or adding functions to ViewerInterface. Also hard to get right since opening a document isn't exactly synchronous.
> 2. Viewport info is already saved during a graceful shutdown.
> 
> 
> Diffs
> -----
> 
>   part.h 594eb44113ae130a6fefbf2800af32886aa3cbef 
>   part.cpp 36438af1cd1036ee954f80b5359a0cab2c019036 
>   shell/main.cpp 16289608f0acf299db04258d842bbb87add62c0b 
>   shell/shell.h 224acfe023ef8e9cc58b52ddf32068af8937896a 
>   shell/shell.cpp f7675fdc8203e90210b8ba82620b19ae69ee43e1 
> 
> Diff: https://git.reviewboard.kde.org/r/122570/diff/
> 
> 
> Testing
> -------
> 
> I was not familiar with session functionality in KDE before working on this bug, so my tests may not represent reality. I used the dbus interface to trigger a session save (org.kde.KSMServerInterface.saveCurrentSession), and then reloaded a session by running `okular --session xyz`, which I think is how KDE does it behind the scenes.
> 
> - Restore one or more documents in single window with tabs enabled.
> - Restore multiple windows, tabs enabled or disabled.
> - Restore session config describing multible tabs, even though tabs are disabled
> 
> 
> Thanks,
> 
> Jonathan Doman
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/okular-devel/attachments/20150222/51c414a2/attachment.html>


More information about the Okular-devel mailing list