Review Request 125921: Don't rely graphic objects in panel script engine

Marco Martin notmart at gmail.com
Mon Dec 28 15:52:02 UTC 2015


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

Ship it!


Ship It!

- Marco Martin


On Dec. 28, 2015, 3:44 p.m., David Edmundson wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/125921/
> -----------------------------------------------------------
> 
> (Updated Dec. 28, 2015, 3:44 p.m.)
> 
> 
> Review request for Plasma.
> 
> 
> Bugs: 355918
>     https://bugs.kde.org/show_bug.cgi?id=355918
> 
> 
> Repository: plasma-workspace
> 
> 
> Description
> -------
> 
> The basic design of Plasma is that scripts and and the shell (in theory)
> manipulate a tree of basic applet geometry and configs.
> 
> Plasmashell then reacts to those changes and displays them visually with
> a distinct separation between the layout and UI.
> 
> Panel's scriptengine seemed to do away with all, and try and manipulate the graphic object directly..which might not exist and that leads to complex code.
> 
> This changes it to read/write from the same config object as
> PanelView will use. More akin to how the script engine for applet and contiainment work.
> 
> If there's a view for this panel, we update immediately, otherwise it'll just get loaded when it's needed. PanelView::reload() has the error checking/bounds management so no point duplicating that.
> 
> Idea is to fix the same bug as https://git.reviewboard.kde.org/r/125920/ but also clean up a lot of the code which I thought had grown a bit complex. 
> 
> Bit too big to backport though. Might be Plasma 5.6 material at this point.
> 
> 
> Diffs
> -----
> 
>   shell/panelview.h 9f8d4ce9c92e86d81aa8076ca8eb01c0eb8a18c9 
>   shell/panelview.cpp 4dec906b63bd535b3add732f2f5e3971c0a5f37a 
>   shell/scripting/panel.h f7279100a7c79f2f15917b88d8199573a379cb7d 
>   shell/scripting/panel.cpp fb0ff2119850823c4fb76f223ed04f0e9c0d0010 
> 
> Diff: https://git.reviewboard.kde.org/r/125921/diff/
> 
> 
> Testing
> -------
> 
> Modified my layout.js to set min, max sizes as well as alignment and offset which were previously broken.
> 
> Once loaded opened the interactive editor and run stuff like:
> panel = panelById(1);
> panel.alignment = "center"
> panel.height = 40
> 
> Seems to work as before
> 
> 
> Thanks,
> 
> David Edmundson
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20151228/81fca836/attachment.html>


More information about the Plasma-devel mailing list