for (;;);{"error":null,"payload":{"timeline":"\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-97522\" data-sigil=\"transaction\" data-meta=\"0_51\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-minor-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/bffmowqqdn4guvv4ilri\/PHID-FILE-5s7elqllxgnhduswakly\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/franciscofernandes\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003ca name=\"97522\" id=\"97522\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-pencil phui-timeline-icon\" data-meta=\"0_50\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/franciscofernandes\/\" class=\"phui-handle phui-link-person\"\u003efranciscofernandes\u003c\/a\u003e created this task.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#97522\" data-sigil=\"has-tooltip\" data-meta=\"0_49\"\u003eJun 12 2017, 3:43 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-125174\" data-sigil=\"transaction\" data-meta=\"0_54\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-minor-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/jp3luzknmku7uqxtuvo6\/PHID-FILE-xsdcutgttv2nstp3pfh2\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/ngraham\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003ca name=\"125174\" id=\"125174\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-user-plus phui-timeline-icon\" data-meta=\"0_53\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/ngraham\/\" class=\"phui-handle phui-link-person\"\u003engraham\u003c\/a\u003e added a subscriber: \u003ca href=\"\/p\/ngraham\/\" class=\"phui-handle phui-link-person\" data-sigil=\"hovercard\" data-meta=\"0_21\"\u003engraham\u003c\/a\u003e.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#125174\" data-sigil=\"has-tooltip\" data-meta=\"0_52\"\u003eJan 28 2018, 5:09 AM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-125177\" data-sigil=\"transaction\" data-meta=\"0_63\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/q7o7zc3d66245rw5rti6\/PHID-FILE-ypocx4xpzqe54rziu5yp\/b4c4ad-alphanumeric_lato-white_S.png-0%2C0%2C0%2C0.png)\" class=\"phui-timeline-image\" href=\"\/p\/safaalfulaij\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"125177\" id=\"125177\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-user-plus phui-timeline-icon\" data-meta=\"0_62\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/safaalfulaij\/\" class=\"phui-handle phui-link-person\"\u003esafaalfulaij\u003c\/a\u003e added a subscriber: \u003ca href=\"\/p\/safaalfulaij\/\" class=\"phui-handle phui-link-person\" data-sigil=\"hovercard\" data-meta=\"0_22\"\u003esafaalfulaij\u003c\/a\u003e.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#125177\" data-sigil=\"has-tooltip\" data-meta=\"0_61\"\u003eJan 28 2018, 7:28 AM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_59\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_60\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_23\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cp\u003eI really don't see why we need this if we have Kolourpaint.\u003cbr \/\u003e\n\u201cExport image\u201d\u2192 \u201cKolourpaint\u201d.\u003c\/p\u003e\n\n\u003cp\u003eSpectacle needs to focus (soon) on captuering in Wayland, which is much important.\u003c\/p\u003e\n\n\u003cp\u003eWe can just embed the editing widget in Kolourpaint into Spectacle without reinventing the wheel.\u003cbr \/\u003e\nOr make it an optional dependency.\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-125353\" data-sigil=\"transaction\" data-meta=\"0_72\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/jp3luzknmku7uqxtuvo6\/PHID-FILE-xsdcutgttv2nstp3pfh2\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/ngraham\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"125353\" id=\"125353\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_71\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/ngraham\/\" class=\"phui-handle phui-link-person\"\u003engraham\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#125353\" data-sigil=\"has-tooltip\" data-meta=\"0_70\"\u003eJan 30 2018, 2:06 AM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_68\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_69\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_24\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cblockquote\u003e\u003cp\u003eWe can just embed the editing widget in Kolourpaint into Spectacle without reinventing the wheel.\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eThat sounds like a great idea! But I really do like the idea of having this UI inside Spectacle itself. It would enable the kind of speed-of-thought screenshot workflow that we're targeting for \u003ca href=\"https:\/\/phabricator.kde.org\/T6831\" class=\"remarkup-link\" target=\"_blank\" rel=\"noreferrer\"\u003ehttps:\/\/phabricator.kde.org\/T6831\u003c\/a\u003e\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126348\" data-sigil=\"transaction\" data-meta=\"0_81\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/57joaammbzh4zjfzcw4o\/PHID-FILE-6lf5tijisy6bd2vrnzb7\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/dporobic\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126348\" id=\"126348\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-user-plus phui-timeline-icon\" data-meta=\"0_80\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/dporobic\/\" class=\"phui-handle phui-link-person\"\u003edporobic\u003c\/a\u003e added a subscriber: \u003ca href=\"\/p\/dporobic\/\" class=\"phui-handle phui-link-person\" data-sigil=\"hovercard\" data-meta=\"0_25\"\u003edporobic\u003c\/a\u003e.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#126348\" data-sigil=\"has-tooltip\" data-meta=\"0_79\"\u003eFeb 4 2018, 8:16 AM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_77\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_78\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_26\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cp\u003eIf no one is working on this task I would take it and see what I can do.\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126395\" data-sigil=\"transaction\" data-meta=\"0_91\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/vpvsmwbpjsforz2rpiuy\/PHID-FILE-rc5ymxiwqtz5mgqkyqdt\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/rkflx\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126395\" id=\"126395\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-user-plus phui-timeline-icon\" data-meta=\"0_90\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/rkflx\/\" class=\"phui-handle phui-link-person\"\u003erkflx\u003c\/a\u003e added a subscriber: \u003ca href=\"\/p\/rkflx\/\" class=\"phui-handle phui-link-person\" data-sigil=\"hovercard\" data-meta=\"0_27\"\u003erkflx\u003c\/a\u003e.\u003cspan class=\"phui-timeline-extra\"\u003eEdited\u003cspan class=\"visual-only\" aria-hidden=\"true\"\u003e \u00b7 \u003c\/span\u003e\u003ca href=\"#126395\" data-sigil=\"has-tooltip\" data-meta=\"0_89\"\u003eFeb 4 2018, 10:11 AM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_87\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_88\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_28\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cp\u003e\u003ca href=\"\/p\/dporobic\/\" class=\"phui-tag-view phui-tag-type-person \" data-sigil=\"hovercard\" data-meta=\"0_0\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-person\"\u003e@dporobic\u003c\/span\u003e\u003c\/a\u003e Great to have you on board! Let us know if you need help and want to discuss the design you have in mind.\u003c\/p\u003e\n\n\u003cp\u003eI thought a bit about this too, here are my reasons why I'd prefer adding it via a separate button (either in \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eExport Image \/ Share\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e or maybe as an overlay button instead of cramming it in):\u003c\/p\u003e\n\n\u003cul class=\"remarkup-list\"\u003e\n\u003cli class=\"remarkup-list-item\"\u003eDo you have any example of an application which transforms itself from being a small dialog to a full fledged editor? I thinks that's a hard problem to solve, maybe even an anti-pattern. A good screenshot editor would need a menubar, a toolbar, undo\/redo history etc, all things which would fit better into a different UI paradigm. If we go that route, it would be a radical transformation of Spectacle.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eRelated to that: Currently Spectacle shows a thumbnail of what was captured (which makes sense), but annotating is better done on a larger representation of the screenshot (e.g. 50%-100% zoom).\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eHaving a separate application specialized in picture annotation would also allow to edit screenshots taken by other means, downloaded from the web or simply at a later point in time. Why limit the utility of the tool and the hard work that goes into it to Spectacle?\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003eIf you are not convinced by this, maybe splitting the top part of Spectacle into two tabs could work: \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eCapture\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e and \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eEdit\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e. Or have our cake and eat it too: Make the editor a \u003ctt class=\"remarkup-monospaced\"\u003eKPart\u003c\/tt\u003e or a library and use it in a standalone app as well as in Spectacle.\u003c\/p\u003e\n\n\u003chr class=\"remarkup-hr\" \/\u003e\n\n\u003cp\u003eFor reference, see discussion here:\u003cbr \/\u003e\n\u003ca href=\"https:\/\/www.mail-archive.com\/kde-devel@kde.org\/msg09954.html\" class=\"remarkup-link\" target=\"_blank\" rel=\"noreferrer\"\u003ehttps:\/\/www.mail-archive.com\/kde-devel@kde.org\/msg09954.html\u003c\/a\u003e\u003c\/p\u003e\n\n\u003chr class=\"remarkup-hr\" \/\u003e\n\n\u003cp\u003eJust tried \u003ca href=\"https:\/\/github.com\/DamirPorobic\/ksnip\" class=\"remarkup-link\" target=\"_blank\" rel=\"noreferrer\"\u003eKsnip\u003c\/a\u003e and wanted to share some quick impressions on the editing options:\u003c\/p\u003e\n\n\u003cul class=\"remarkup-list\"\u003e\n\u003cli class=\"remarkup-list-item\"\u003eThe performance of the \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eRectangular Area\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e tool is impressive, I'd love to have that in Spectacle. The port to QML made it so slow, and I don't know how to solve the HiDPI issues in it (\u003ca href=\"https:\/\/bugs.kde.org\/show_bug.cgi?id=357022\" class=\"remarkup-link\" target=\"_blank\" rel=\"noreferrer\"\u003ehttps:\/\/bugs.kde.org\/show_bug.cgi?id=357022\u003c\/a\u003e).\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eThe "Paint Item Shadows" are impressive!\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eThe "Marker" is really nice.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003e"Numbering" is very cool.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003e\u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eScaling\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e dialog: Maybe look at the layout of Gwenview's \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eResize\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e dialog which is a bit nicer (it misses percent scaling, though).\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eThe tool dropdown button is a bit annoying, I'd prefer having all tools immediately visible, maybe in a separate toolbar (e.g. on the side like in Kolourpaint) or like in Gwenview's \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eOperations\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e sidebar.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003e\u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eErase\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e could use some visual feedback, e.g. the item about to be deleted on click could get highlighted or something (but see also next points).\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003e\u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eSelect\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e draws a rectangle, but maybe highlighting the actual shape of an item would be nicer, as well as mouse-over feedback.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003ePerhaps separate \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eSelect\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e and \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eErase\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e a bit from the other tools, because I only discovered at the very end that indeed I am able to move\/delete things later on.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eAlso I wonder why we need a separate \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eErase\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e: Why not have a \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eSelect\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e mode only, which would then allow to \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eResize\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e, \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eMove\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e, \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eEdit\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e and \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eDelete\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eI found no way to change text or resize elements. Would be nice to have, but it's probably easier said than done.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eSometimes text I added was quite hard to read, what about setting a background color for the text?\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126402\" data-sigil=\"transaction\" data-meta=\"0_100\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/57joaammbzh4zjfzcw4o\/PHID-FILE-6lf5tijisy6bd2vrnzb7\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/dporobic\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126402\" id=\"126402\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_99\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/dporobic\/\" class=\"phui-handle phui-link-person\"\u003edporobic\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#126402\" data-sigil=\"has-tooltip\" data-meta=\"0_98\"\u003eFeb 4 2018, 11:32 AM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_96\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_97\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_29\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cp\u003e\u003ca href=\"\/p\/rkflx\/\" class=\"phui-tag-view phui-tag-type-person \" data-sigil=\"hovercard\" data-meta=\"0_1\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-person\"\u003e@rkflx\u003c\/span\u003e\u003c\/a\u003e Thank you for your detailed feedback!\u003c\/p\u003e\n\n\u003cp\u003eAs I wrote on the mailing list, currently you have already something like "separate button opens editor", when you go Export Image > KolourPaint, this is basically the same functionality and user, including my self, are not too happy with that as it requires a lot of clicks when you just need a quick screenshot, it basically feels like a lot of overhead to me.\u003c\/p\u003e\n\n\u003cp\u003eMost of the screenshot application that I have worked with start small (small like small interface before taking screenshot) and when you take the screenshot they increase in size to match the screenshot and the application is centered around the screenshot. With spectacle, the screenshot is minimized on the left size and you can't really see what you have there, if there something that I don't want to show (like sensitive information...). That is something that always bothered me with Spectacle. IMHO it would make sense to think about a visual redesign of Spectacle, maybe something like:\u003c\/p\u003e\n\n\u003cul class=\"remarkup-list\"\u003e\n\u003cli class=\"remarkup-list-item\"\u003eReplace current text options (on main screen) with Icons, that would eventually take less space on the right side.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eShow screenshot in full size, not scaled down.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eSet Spectacle size to match screenshot\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eAs franciscofernandes suggested, show paint\/annotation items on the right side, below other options, in form of icons.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eTry to work with keyboard shortcuts to mitigate missing default stuff, like undo\/redo.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003eEven with all those changes, I'm not sure if it will feel totally naturally in the end but that is what I would try, though I'm open for suggestions. \u003cbr \/\u003e\nHowever, if the majority thinks that it should be a separate window, we can do that too, should be less problematic to implement.\u003c\/p\u003e\n\n\u003cp\u003eRegarding your second point, if you go for a separate annotation application, why not use KSnip? It was written specifically for annotation and you can already open other images via CLI or GUI. Maybe there is some way to couple Spectacle and KSnip tighter to make the switch between them more seamless? That is actually something one of my users was looking into.\u003c\/p\u003e\n\n\u003cp\u003eRegarding your KSnip Feedback:\u003c\/p\u003e\n\n\u003cul class=\"remarkup-list\"\u003e\n\u003cli class=\"remarkup-list-item\"\u003eScaling dialog was added last week, mostly based on some Scale dialogs that I have seen in other application, can be changed.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eTrue, it started only with two tools, now with several tools it's a bit annoying to switch. Something like the toolbar in KolourPaint is exactly what I was planning to implement in the future. I had in mind to have some kind of customizable layout so that you can have only the stuff there that you use, but that would require some more refactoring.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eThe selection feedback (the border) is something that I was planning to implement as configuration option. Currently we can, basically by calling a different method, paint the selection border either around the bounding rect (current behavior) or around the shape. The user could then switch between those two options in settings as he prefers. I prefer the shape but some users that I spoke to preferred the rectangle so I've implemented the rectangle initially.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eHow would you differentiate between select\/move and delete if it were one tool? You can already delete single items with right click and select delete from context menu.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003ePaint\/Annotation items edit is in pipeline, haven't managed yet to find a nice way to implement it, this is an open issue on github.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eResize elements could be done, should not be that complex. Text font can be changed in settings if you mean that?\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eBackground for text is also not a problem, the only problem I had is to have too many color pickers in the popup menu.\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126417\" data-sigil=\"transaction\" data-meta=\"0_109\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/vpvsmwbpjsforz2rpiuy\/PHID-FILE-rc5ymxiwqtz5mgqkyqdt\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/rkflx\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126417\" id=\"126417\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_108\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/rkflx\/\" class=\"phui-handle phui-link-person\"\u003erkflx\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#126417\" data-sigil=\"has-tooltip\" data-meta=\"0_107\"\u003eFeb 4 2018, 1:18 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_105\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_106\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_30\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cblockquote\u003e\u003cp\u003e"separate button opens editor"\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eI hear you, but I'm not sure yet how it could work without giving Spectacle a Frankenstein UI.\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cp\u003eWith spectacle, the screenshot is minimized on the left size and you can't really see what you have there\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eYup, I think that should be improved at some point.\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cp\u003eReplace current text options (on main screen) with Icons, that would eventually take less space on the right side.\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eAs those options are not part of the general UI knowledge (e.g. like the open\/save\/copy\/paste icons), I would advice against not showing the text.\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cp\u003eEven with all those changes, I'm not sure if it will feel totally naturally in the end\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eThat's my concern too.\u003c\/p\u003e\n\n\u003cp\u003eHere's an idea: We could add the editor in two steps:\u003c\/p\u003e\n\n\u003col class=\"remarkup-list\"\u003e\n\u003cli class=\"remarkup-list-item\"\u003eSimple button to open a separate window while still being part of Spectacles save\/upload workflow. This would allow us to focus on the integration of the tools first, setup translations, get first user feedback, improve the tool handling. We could iterate fast, without getting stuck with a complete redesign.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eEventually integrate the editor more nicely into Spectacle's main window. I think Spectacle has already quite a large window size for a dialog. If we want to make it even larger, Spectacle should become a full application with a menubar and toolbar eventually. Or come back to my tab idea. I'm not yet convinced by the transformation idea presented in the Description above, because it feels kinda awkward and unexpected.\u003c\/li\u003e\n\u003c\/ol\u003e\n\n\u003chr class=\"remarkup-hr\" \/\u003e\n\n\u003cblockquote\u003e\u003cp\u003eRegarding your second point, if you go for a separate annotation application, why not use KSnip?\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eCurrently it's not installed by default for our users, and its UI does not feel 100% KDE to me currently (but we could work on that). I'd love to have something like KSnip available outside of Spectacle! Did you look into how to split out some of KSnip into a library, so it could be used inside Spectacle and in a separate app? On the other hand, it's probably not that hard to add an \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eOpen\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e button to Spectacle \u2013 thinking about it, that's what I might prefer actually\u2026\u003c\/p\u003e\n\n\u003chr class=\"remarkup-hr\" \/\u003e\n\n\u003cp\u003eI'll reply to some of your questions below, but we should get the basic integration started first ;)\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cp\u003eThe selection feedback (the border) [\u2026] The user could then switch between those two options in settings as he prefers.\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eAs a general comment (personally, I prefer the shape too): Please don't get me wrong, but that's a typical problem I often find on the typical GitHub app vs. KDE's apps: A multitude of obscure options, hard to use and understand. While some say we have too many options, in reality we always strive for having very good defaults and sometimes say no to wishes of less utility.\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cp\u003eHow would you differentiate between select\/move and delete if it were one tool?\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eWell, it felt a bit awkward when I used it. I could detail why that is, but others already have solved this usability\/design problem and it's best to be consistent with how it works in general. For example, look at Inkscape (or Okular, LibreOffice Draw etc.) and observe how they implement the following workflow:\u003c\/p\u003e\n\n\u003cul class=\"remarkup-list\"\u003e\n\u003cli class=\"remarkup-list-item\"\u003eSelect rectangle tool, draw rectangle.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eSelect text tool, add text.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eAdd more text (without selecting tool again in Inkscape, needs double click on the tool in Okular and LibreOffice).\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eClick on mouse icon (hand icon in Okular) to enter select mode.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eClick on the rectangle to select it again, then resize and move it.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eClick on one of the texts to select it, move it, then delete it (via the keyboard, or by clicking on "Cut").\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003e(Inkscape features a separate "Erase" tool while Okular and LibreOffice do not, I think it's not needed for simple cases like your editor.)\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003eThat's the standard workflow for every app using discrete objects like your editor, in a pixel based painting app like Kolourpaint it is different obviously.\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cp\u003eText font can be changed in settings if you mean that?\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eNope, just wanted to fix a typo ;)\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cp\u003eBackground for text is also not a problem, the only problem I had is to have too many color pickers in the popup menu.\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eI understand. I don't think having the text coloured is too important, so you could add an additional tool (perhaps called "Labels"?) which would allow to add black text and configure the background colour with the usual button (and maybe with a black outline around the label, like \u003ca href=\"https:\/\/bugsfiles.kde.org\/attachment.cgi?id=110192\" class=\"remarkup-link\" target=\"_blank\" rel=\"noreferrer\"\u003ehere\u003c\/a\u003e).\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126418\" data-sigil=\"transaction\" data-meta=\"0_118\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/h6rnkn7ncx5h2slkw7qu\/PHID-FILE-wgrmaew34id2pcqxxk2b\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/kpiwowarski\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126418\" id=\"126418\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-user-plus phui-timeline-icon\" data-meta=\"0_117\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/kpiwowarski\/\" class=\"phui-handle phui-link-person\"\u003ekpiwowarski\u003c\/a\u003e added a subscriber: \u003ca href=\"\/p\/kpiwowarski\/\" class=\"phui-handle phui-link-person\" data-sigil=\"hovercard\" data-meta=\"0_31\"\u003ekpiwowarski\u003c\/a\u003e.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#126418\" data-sigil=\"has-tooltip\" data-meta=\"0_116\"\u003eFeb 4 2018, 2:05 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_114\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_115\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_32\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cp\u003eWhat about create new Framework for simple editing images?\u003c\/p\u003e\n\n\u003cul class=\"remarkup-list\"\u003e\n\u003cli class=\"remarkup-list-item\"\u003eIt would provide functions like cut, resize, add text, icons, draw lines, place stickers etc.\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eIt would be embeddable in any app like: Spectacle, Kamoso and Skanlite (yes, it would be nice to draw some highlights \/ arrows on scanned docs)\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eIt would provide add new stickers from \u003ca href=\"https:\/\/store.kde.org\/\" class=\"remarkup-link\" target=\"_blank\" rel=\"noreferrer\"\u003ehttps:\/\/store.kde.org\/\u003c\/a\u003e - nice for Kamoso on phone - you have builtin Snapchat\/Instagram function ;)\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126420\" data-sigil=\"transaction\" data-meta=\"0_127\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/57joaammbzh4zjfzcw4o\/PHID-FILE-6lf5tijisy6bd2vrnzb7\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/dporobic\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126420\" id=\"126420\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_126\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/dporobic\/\" class=\"phui-handle phui-link-person\"\u003edporobic\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#126420\" data-sigil=\"has-tooltip\" data-meta=\"0_125\"\u003eFeb 4 2018, 2:17 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_123\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_124\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_33\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cp\u003e\u003ca href=\"\/p\/rkflx\/\" class=\"phui-tag-view phui-tag-type-person \" data-sigil=\"hovercard\" data-meta=\"0_3\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-person\"\u003e@rkflx\u003c\/span\u003e\u003c\/a\u003e \u003cbr \/\u003e\nOk, so we go for now with a separate window, it's not the perfect solution but it might be our best bet for now and we could change stuff in the future when we have some foundation.\u003c\/p\u003e\n\n\u003cp\u003e\u003ca href=\"\/p\/kpiwowarski\/\" class=\"phui-tag-view phui-tag-type-person \" data-sigil=\"hovercard\" data-meta=\"0_2\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-person\"\u003e@kpiwowarski\u003c\/span\u003e\u003c\/a\u003e \u003cbr \/\u003e\nSounds like an interesting idea. Do you have any specific requirements in mind for such a framework?\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126422\" data-sigil=\"transaction\" data-meta=\"0_137\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/h6rnkn7ncx5h2slkw7qu\/PHID-FILE-wgrmaew34id2pcqxxk2b\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/kpiwowarski\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126422\" id=\"126422\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_136\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/kpiwowarski\/\" class=\"phui-handle phui-link-person\"\u003ekpiwowarski\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003eEdited\u003cspan class=\"visual-only\" aria-hidden=\"true\"\u003e \u00b7 \u003c\/span\u003e\u003ca href=\"#126422\" data-sigil=\"has-tooltip\" data-meta=\"0_135\"\u003eFeb 4 2018, 2:37 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_133\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_134\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_34\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cp\u003e\u003ca href=\"\/p\/dporobic\/\" class=\"phui-tag-view phui-tag-type-person \" data-sigil=\"hovercard\" data-meta=\"0_4\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-person\"\u003e@dporobic\u003c\/span\u003e\u003c\/a\u003e I'm not a KDE programmer (yet!) but I have in my mind something like \u003ca href=\"https:\/\/api.kde.org\/frameworks\/ktexteditor\/html\/\" class=\"remarkup-link\" target=\"_blank\" rel=\"noreferrer\"\u003eKTextEditor\u003c\/a\u003e for text editing (KImageEditor?).\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126423\" data-sigil=\"transaction\" data-meta=\"0_146\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/57joaammbzh4zjfzcw4o\/PHID-FILE-6lf5tijisy6bd2vrnzb7\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/dporobic\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126423\" id=\"126423\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_145\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/dporobic\/\" class=\"phui-handle phui-link-person\"\u003edporobic\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#126423\" data-sigil=\"has-tooltip\" data-meta=\"0_144\"\u003eFeb 4 2018, 2:53 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_142\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_143\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_35\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cp\u003eOk, that would go in direction of being an annotation "widget" that you could use basically anywhere, interesting idea.\u003c\/p\u003e\n\n\u003cp\u003e\u003ca href=\"\/p\/rkflx\/\" class=\"phui-tag-view phui-tag-type-person \" data-sigil=\"hovercard\" data-meta=\"0_6\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-person\"\u003e@rkflx\u003c\/span\u003e\u003c\/a\u003e \u003ca href=\"\/p\/ngraham\/\" class=\"phui-tag-view phui-tag-type-person \" data-sigil=\"hovercard\" data-meta=\"0_5\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-person\"\u003e@ngraham\u003c\/span\u003e\u003c\/a\u003e what do you guys think about that idea?\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126436\" data-sigil=\"transaction\" data-meta=\"0_157\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/jp3luzknmku7uqxtuvo6\/PHID-FILE-xsdcutgttv2nstp3pfh2\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/ngraham\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126436\" id=\"126436\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_156\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/ngraham\/\" class=\"phui-handle phui-link-person\"\u003engraham\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#126436\" data-sigil=\"has-tooltip\" data-meta=\"0_155\"\u003eFeb 4 2018, 3:28 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_153\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_154\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_36\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cp\u003eFWIW, I could and would support using the main UI for this. I'm \u003cbr \/\u003e\nenvisioning a button that says "Edit and annotate" and, when pushed, \u003cbr \/\u003e\nexpands the main window to show the annotation and editing tools inline. \u003cbr \/\u003e\nThat way the window would still have the usual complement of \u003cbr \/\u003e\nexport\/copy\/save actions without extra clicks.\u003c\/p\u003e\n\n\u003cp\u003eBut if a separate window would be easier for now, that's fine too. I \u003cbr \/\u003e\nalso think that an annotation widget in a framework would be really \u003cbr \/\u003e\nhandy. I could see Gwenview or even Okular using it, too. Lack of \u003cbr \/\u003e\nannotation in Gwenview is something I miss from macOS Preview, which has \u003cbr \/\u003e\na full suite of annotation and even basic image editing tools.\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126437\" data-sigil=\"transaction\" data-meta=\"0_166\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/57joaammbzh4zjfzcw4o\/PHID-FILE-6lf5tijisy6bd2vrnzb7\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/dporobic\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126437\" id=\"126437\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_165\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/dporobic\/\" class=\"phui-handle phui-link-person\"\u003edporobic\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#126437\" data-sigil=\"has-tooltip\" data-meta=\"0_164\"\u003eFeb 4 2018, 3:35 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_162\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_163\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_37\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cp\u003eI think I'm a fan of the annotation widget approach. Later on we could replace the preview window with the annotation widget.\u003cbr \/\u003e\nSomeone mentioned KParts earlier, I haven't worked with it yet but that could be something suitable as fart as I can tell from my quick googeling. Would be nice to have someone with experience with KParts to give kick start or at least point me in the right direction.\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126465\" data-sigil=\"transaction\" data-meta=\"0_175\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/vpvsmwbpjsforz2rpiuy\/PHID-FILE-rc5ymxiwqtz5mgqkyqdt\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/rkflx\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126465\" id=\"126465\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_174\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/rkflx\/\" class=\"phui-handle phui-link-person\"\u003erkflx\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#126465\" data-sigil=\"has-tooltip\" data-meta=\"0_173\"\u003eFeb 4 2018, 7:46 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_171\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_172\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_38\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cp\u003eAs far as I can see the complicated part is not about providing a widget containing a couple of toolbuttons, but how to integrate the editing functionality with the image display infrastructure already in place in existing apps.\u003c\/p\u003e\n\n\u003cp\u003eI mentioned KParts, but I'm not really familiar with it and also not sure it is a good fit with the Frameworks idea. For example the Okular KPart is also used in Kile to display PDFs, or Konsole in Kate and Dolphin. You could imagine it as a kind of widget you embed in your app. Here comes the tricky part: Assume we want to annotate something in Gwenview or Skanlite: Certainly we would not want to replace Gwenview's advanced image display component completely, but merely draw an overlay over an already existing pixmap (and get mouse movement data back to your library). Is that possible with KParts? If the image display widget itself is not really important like in Spectacle, a KPart or even a simple widget could of course offer the displaying and editing functions itself.\u003c\/p\u003e\n\n\u003cp\u003eSorry, no idea yet on which level of abstraction a library should operate. I guess you'd have to find someone more experienced in that topic, e.g. by asking on kde-devel, the Krita guys also have lots of experience with drawing apps.\u003c\/p\u003e\n\n\u003cp\u003eA simpler approach would be to create something like KColorChooser, which can be started standalone but also embedded in apps as a color picker (either as a widget showing the picker directly or via an access button).\u003c\/p\u003e\n\n\u003cp\u003eThe last thing you could look into would be creating a QML component, but I have no clue how the overlay\/embed topic would work in that case either. You'd have to ask the experts ;)\u003c\/p\u003e\n\n\u003chr class=\"remarkup-hr\" \/\u003e\n\n\u003cp\u003eI suspect something like KColorChooser might be the most feasible, i.e. a widget containing the image view, interaction as well as the buttons. It would not work in Gwenview and Okular, but in Spectacle and (not sure about that) possibly in Skanlite and Kamoso. It would even fit nicely with the two-step integration idea: First as a button, later in tandem with a more thorough redesign.\u003c\/p\u003e\n\n\u003cp\u003eI'd say ask around a bit and do some prototyping regarding the various approaches. But let's not forget our primary goal while dreaming of a perfect design: annotating screenshots in Spectacle.\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126530\" data-sigil=\"transaction\" data-meta=\"0_185\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/57joaammbzh4zjfzcw4o\/PHID-FILE-6lf5tijisy6bd2vrnzb7\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/dporobic\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126530\" id=\"126530\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_184\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/dporobic\/\" class=\"phui-handle phui-link-person\"\u003edporobic\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003eEdited\u003cspan class=\"visual-only\" aria-hidden=\"true\"\u003e \u00b7 \u003c\/span\u003e\u003ca href=\"#126530\" data-sigil=\"has-tooltip\" data-meta=\"0_183\"\u003eFeb 5 2018, 9:49 AM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_181\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_182\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_39\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cblockquote\u003e\u003cp\u003eAssume we want to annotate something in Gwenview or Skanlite: Certainly we would not want to replace Gwenview's advanced image display component completely\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eJust had a quick look into Gwenview's source code, they seem to have a QStackedWidget as the main widget, so the can switch between different widgets that could be shown. Same could be valid for annotation, they would just bring the annotation widget to front and we host the current image that we get as a pixmap and after done, we return again a pixmap, now with annotation and Gwenview could show that image instead of the old. Same could eventually work for other application. Don't know how feasible that is, just an idea.\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cp\u003eoverlay over an already existing pixmap (and get mouse movement data back to your library)\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eProblem that I see with an overlay is that you need to return an image back to from where the annotation widget was called, then you have on one side an image and on other you have the annotation which you need to combine.\u003c\/p\u003e\n\n\u003cp\u003eI think I'll start with an KPart widget and test how could it could be reused as the main widget of a dialog and also as a widget in a QStackedWidget, so we have two options to use it.\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126592\" data-sigil=\"transaction\" data-meta=\"0_194\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/jp3luzknmku7uqxtuvo6\/PHID-FILE-xsdcutgttv2nstp3pfh2\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/ngraham\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126592\" id=\"126592\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_193\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/ngraham\/\" class=\"phui-handle phui-link-person\"\u003engraham\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#126592\" data-sigil=\"has-tooltip\" data-meta=\"0_192\"\u003eFeb 5 2018, 2:58 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_190\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_191\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_40\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cp\u003eFantastic news! It's great to see this happening.\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126650\" data-sigil=\"transaction\" data-meta=\"0_204\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/vpvsmwbpjsforz2rpiuy\/PHID-FILE-rc5ymxiwqtz5mgqkyqdt\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/rkflx\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126650\" id=\"126650\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_203\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/rkflx\/\" class=\"phui-handle phui-link-person\"\u003erkflx\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003eEdited\u003cspan class=\"visual-only\" aria-hidden=\"true\"\u003e \u00b7 \u003c\/span\u003e\u003ca href=\"#126650\" data-sigil=\"has-tooltip\" data-meta=\"0_202\"\u003eFeb 5 2018, 8:59 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_200\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_201\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_41\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cblockquote class=\"remarkup-reply-block\"\u003e\n\u003cdiv class=\"remarkup-reply-head\"\u003eIn \u003ca href=\"\/T6321#126530\" class=\"phui-tag-view phui-tag-type-object \" data-sigil=\"hovercard\" data-meta=\"0_7\"\u003e\u003cspan class=\"phui-tag-core-closed\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-object\"\u003eT6321#126530\u003c\/span\u003e\u003c\/span\u003e\u003c\/a\u003e, \u003ca href=\"\/p\/dporobic\/\" class=\"phui-tag-view phui-tag-type-person \" data-sigil=\"hovercard\" data-meta=\"0_8\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-person\"\u003e@dporobic\u003c\/span\u003e\u003c\/a\u003e wrote:\u003c\/div\u003e\n\u003cdiv class=\"remarkup-reply-body\"\u003e\u003cp\u003eJust had a quick look into Gwenview's source code, they seem to have a QStackedWidget as the main widget\u003c\/p\u003e\u003c\/div\u003e\n\u003c\/blockquote\u003e\n\n\u003cp\u003eGwenview's \u003ctt class=\"remarkup-monospaced\"\u003eQStackedWidget\u003c\/tt\u003e is used to switch modes, e.g. \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eStart Page\u003c\/span\u003e\u003c\/span\u003e\u003cspan class=\"remarkup-nav-sequence-arrow\"\u003e \u2192 \u003c\/span\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eBrowse\u003c\/span\u003e\u003c\/span\u003e\u003cspan class=\"remarkup-nav-sequence-arrow\"\u003e \u2192 \u003c\/span\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eView\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e. I'm afraid we cannot simply add the annotation tool at this level, because we'd lose pretty much everything: thumbnail bar at the bottom, zoom buttons, the small bird eye view when zoomed in, the context menu. Have a look at the \u003ctt class=\"remarkup-monospaced\"\u003eCropTool\u003c\/tt\u003e class (both code and UI behaviour) to see what would be required for integration in Gwenview.\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cp\u003ebring the annotation widget to front and we host the current image that we get as a pixmap and after done, we return again a pixmap, now with annotation and Gwenview could show that image instead of the old.\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eTo me it seems like there are two cases:\u003c\/p\u003e\n\n\u003cul class=\"remarkup-list\"\u003e\n\u003cli class=\"remarkup-list-item\"\u003eApp already has advanced viewing component and only wants to add a feature on top (e.g. Gwenview).\u003c\/li\u003e\n\u003cli class=\"remarkup-list-item\"\u003eApp only shows a pixmap, might as well use another component which shows the pixmap and offers additional features (e.g. Spectacle).\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003eEither you find a way to combine both approaches, or decide for a specific use case (or do both with as much code reuse as possible).\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cp\u003eI think I'll start with an KPart widget\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eAs far as my limited understanding goes, KParts are more of a container around a bunch of widgets providing additional features like menubar integration. So it is not either KPart or a simple widget, but rather how far you want to go.\u003c\/p\u003e\n\n\u003cp\u003eAnyway, you are doing the work so let's see what comes out of it. Clearly people are looking forward to it ;)\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126744\" data-sigil=\"transaction\" data-meta=\"0_214\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/vpvsmwbpjsforz2rpiuy\/PHID-FILE-rc5ymxiwqtz5mgqkyqdt\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/rkflx\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126744\" id=\"126744\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-user-plus phui-timeline-icon\" data-meta=\"0_213\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/rkflx\/\" class=\"phui-handle phui-link-person\"\u003erkflx\u003c\/a\u003e added a subscriber: \u003ca href=\"\/p\/gregormi\/\" class=\"phui-handle phui-link-person\" data-sigil=\"hovercard\" data-meta=\"0_42\"\u003egregormi\u003c\/a\u003e.\u003cspan class=\"phui-timeline-extra\"\u003eEdited\u003cspan class=\"visual-only\" aria-hidden=\"true\"\u003e \u00b7 \u003c\/span\u003e\u003ca href=\"#126744\" data-sigil=\"has-tooltip\" data-meta=\"0_212\"\u003eFeb 6 2018, 2:14 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_210\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_211\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_43\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cp\u003eJust found out about \u003ca href=\"\/p\/gregormi\/\" class=\"phui-tag-view phui-tag-type-person \" data-sigil=\"hovercard\" data-meta=\"0_9\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-person\"\u003e@gregormi\u003c\/span\u003e\u003c\/a\u003e's \u003ca href=\"https:\/\/feinstaub.github.io\/kreenshot-editor\/\" class=\"remarkup-link\" target=\"_blank\" rel=\"noreferrer\"\u003eKreenshot Editor\u003c\/a\u003e (compile fix \u003ca href=\"https:\/\/build.opensuse.org\/package\/view_file\/home:wolfi323:branches:KDE:Frameworks5\/kreenshot-editor\/fix-build.patch\" class=\"remarkup-link\" target=\"_blank\" rel=\"noreferrer\"\u003ehere\u003c\/a\u003e). It's a bit broken, but the behaviour of the tool selection is very nice.\u003c\/p\u003e\n\n\u003cp\u003eIt was planned (not sure whether implemented, though) to "Provide a QWidget component to seemlessly integrate in other screenshot tools".\u003c\/p\u003e\n\n\u003cp\u003eMight be worth to have a look at the implementation and\/or collaborate with Gregor.\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126807\" data-sigil=\"transaction\" data-meta=\"0_224\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/rcrhdg6y3atwrpovpxrk\/PHID-FILE-iezr57xo6r6gf2dnkjh5\/f79dcc-alphanumeric_lato-dark_G.png-255%2C255%2C255%2C0.4.png)\" class=\"phui-timeline-image\" href=\"\/p\/gregormi\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126807\" id=\"126807\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_223\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/gregormi\/\" class=\"phui-handle phui-link-person\"\u003egregormi\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003eEdited\u003cspan class=\"visual-only\" aria-hidden=\"true\"\u003e \u00b7 \u003c\/span\u003e\u003ca href=\"#126807\" data-sigil=\"has-tooltip\" data-meta=\"0_222\"\u003eFeb 6 2018, 10:40 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_220\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_221\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_44\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cblockquote class=\"remarkup-reply-block\"\u003e\n\u003cdiv class=\"remarkup-reply-head\"\u003eIn \u003ca href=\"\/T6321#126422\" class=\"phui-tag-view phui-tag-type-object \" data-sigil=\"hovercard\" data-meta=\"0_10\"\u003e\u003cspan class=\"phui-tag-core-closed\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-object\"\u003eT6321#126422\u003c\/span\u003e\u003c\/span\u003e\u003c\/a\u003e, \u003ca href=\"\/p\/kpiwowarski\/\" class=\"phui-tag-view phui-tag-type-person \" data-sigil=\"hovercard\" data-meta=\"0_18\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-person\"\u003e@kpiwowarski\u003c\/span\u003e\u003c\/a\u003e wrote:\u003c\/div\u003e\n\u003cdiv class=\"remarkup-reply-body\"\u003e\u003cp\u003e\u003ca href=\"\/p\/dporobic\/\" class=\"phui-tag-view phui-tag-type-person \" data-sigil=\"hovercard\" data-meta=\"0_19\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-person\"\u003e@dporobic\u003c\/span\u003e\u003c\/a\u003e I'm not a KDE programmer (yet!) but I have in my mind something like \u003ca href=\"https:\/\/api.kde.org\/frameworks\/ktexteditor\/html\/\" class=\"remarkup-link\" target=\"_blank\" rel=\"noreferrer\"\u003eKTextEditor\u003c\/a\u003e for text editing (KImageEditor?).\u003c\/p\u003e\u003c\/div\u003e\n\u003c\/blockquote\u003e\n\n\u003cp\u003eI like that idea. That's why I initiated Kreenshot Editor. I came to the conclusion though, that this component\/framework probably won't be so generic to be called "KImageEditor" but rather "KScreenshotEditor" or "KAnnotateImageEditor" because it is primarily about annotating an image. Otherwise one could end up with GIMP :-)\u003c\/p\u003e\n\n\u003cblockquote class=\"remarkup-reply-block\"\u003e\n\u003cdiv class=\"remarkup-reply-head\"\u003eIn \u003ca href=\"\/T6321#126744\" class=\"phui-tag-view phui-tag-type-object \" data-sigil=\"hovercard\" data-meta=\"0_11\"\u003e\u003cspan class=\"phui-tag-core-closed\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-object\"\u003eT6321#126744\u003c\/span\u003e\u003c\/span\u003e\u003c\/a\u003e, \u003ca href=\"\/p\/rkflx\/\" class=\"phui-tag-view phui-tag-type-person \" data-sigil=\"hovercard\" data-meta=\"0_16\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-person\"\u003e@rkflx\u003c\/span\u003e\u003c\/a\u003e wrote:\u003c\/div\u003e\n\u003cdiv class=\"remarkup-reply-body\"\u003e\u003cp\u003eJust found out about \u003ca href=\"\/p\/gregormi\/\" class=\"phui-tag-view phui-tag-type-person \" data-sigil=\"hovercard\" data-meta=\"0_17\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-person\"\u003e@gregormi\u003c\/span\u003e\u003c\/a\u003e's \u003ca href=\"https:\/\/feinstaub.github.io\/kreenshot-editor\/\" class=\"remarkup-link\" target=\"_blank\" rel=\"noreferrer\"\u003eKreenshot Editor\u003c\/a\u003e (compile fix \u003ca href=\"https:\/\/build.opensuse.org\/package\/view_file\/home:wolfi323:branches:KDE:Frameworks5\/kreenshot-editor\/fix-build.patch\" class=\"remarkup-link\" target=\"_blank\" rel=\"noreferrer\"\u003ehere\u003c\/a\u003e). It's a bit broken, but the behaviour of the tool selection is very nice.\u003c\/p\u003e\u003c\/div\u003e\n\u003c\/blockquote\u003e\n\n\u003cp\u003eThanks. I put some effort into getting the resize handles for the items to work properly.\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cp\u003eIt was planned (not sure whether implemented, though) to "Provide a QWidget component to seemlessly integrate in other screenshot tools".\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eThe image editor is written as separate widget from the start. But this widget was not exported yet to be used by other applications.\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cp\u003eMight be worth to have a look at the implementation and\/or collaborate with Gregor.\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eI think it is worth looking at the code for some details. Most tools were inspired by Greenshot and there is one new tool I called "Rip out". It is not implemented yet but it should work similar to "Crop" but a bit the other way round: draw a horizontal (or vertical) rectangular area from left to right (or top to bottom). Activate "Rip out" would delete the selected area and stitch the image together to leave no hole. So, the image would decrease in height (width). It could be used to remove unwanted menu bars or other things e.g. to create mockups out of a screenshot.\u003c\/p\u003e\n\n\u003cp\u003e\u003cstrong\u003eTo go forward,\u003c\/strong\u003e I suggest to go for Ksnip as it is actively developed and is more usable.\u003c\/p\u003e\n\n\u003cblockquote class=\"remarkup-reply-block\"\u003e\n\u003cdiv class=\"remarkup-reply-head\"\u003eIn \u003ca href=\"\/T6321#126402\" class=\"phui-tag-view phui-tag-type-object \" data-sigil=\"hovercard\" data-meta=\"0_12\"\u003e\u003cspan class=\"phui-tag-core-closed\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-object\"\u003eT6321#126402\u003c\/span\u003e\u003c\/span\u003e\u003c\/a\u003e, \u003ca href=\"\/p\/dporobic\/\" class=\"phui-tag-view phui-tag-type-person \" data-sigil=\"hovercard\" data-meta=\"0_15\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-person\"\u003e@dporobic\u003c\/span\u003e\u003c\/a\u003e wrote:\u003c\/div\u003e\n\u003cdiv class=\"remarkup-reply-body\"\u003e\u003cul class=\"remarkup-list\"\u003e\n\u003cli class=\"remarkup-list-item\"\u003eSet Spectacle size to match screenshot\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\n\u003c\/blockquote\u003e\n\n\u003cp\u003e+1 (or add scrollbars); because a downscaled image is not suitable for annotating\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cul class=\"remarkup-list\"\u003e\n\u003cli class=\"remarkup-list-item\"\u003eTrue, it started only with two tools, now with several tools it's a bit annoying to switch.\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003e+1 :)\u003c\/p\u003e\n\n\u003cblockquote class=\"remarkup-reply-block\"\u003e\n\u003cdiv class=\"remarkup-reply-head\"\u003eIn \u003ca href=\"\/T6321#126436\" class=\"phui-tag-view phui-tag-type-object \" data-sigil=\"hovercard\" data-meta=\"0_13\"\u003e\u003cspan class=\"phui-tag-core-closed\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-object\"\u003eT6321#126436\u003c\/span\u003e\u003c\/span\u003e\u003c\/a\u003e, \u003ca href=\"\/p\/ngraham\/\" class=\"phui-tag-view phui-tag-type-person \" data-sigil=\"hovercard\" data-meta=\"0_14\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-person\"\u003e@ngraham\u003c\/span\u003e\u003c\/a\u003e wrote:\u003c\/div\u003e\n\u003cdiv class=\"remarkup-reply-body\"\u003e\u003cp\u003eFWIW, I could and would support using the main UI for this. I'm \u003cbr \/\u003e\n envisioning a button that says "Edit and annotate" and, when pushed, \u003cbr \/\u003e\n expands the main window to show the annotation and editing tools inline.\u003c\/p\u003e\u003c\/div\u003e\n\u003c\/blockquote\u003e\n\n\u003cp\u003eSounds great. And then maybe an advanced user could enable an option to make the edit tools be visible by default.\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126857\" data-sigil=\"transaction\" data-meta=\"0_233\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/57joaammbzh4zjfzcw4o\/PHID-FILE-6lf5tijisy6bd2vrnzb7\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/dporobic\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126857\" id=\"126857\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_232\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/dporobic\/\" class=\"phui-handle phui-link-person\"\u003edporobic\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#126857\" data-sigil=\"has-tooltip\" data-meta=\"0_231\"\u003eFeb 7 2018, 7:41 AM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_229\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_230\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_45\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cblockquote\u003e\u003cp\u003eI came to the conclusion though, that this component\/framework probably won't be so generic to be called "KImageEditor" but rather "KScreenshotEditor" or "KAnnotateImageEditor"\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eKImageAnnotator is actually what I had in mind :)\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cp\u003eI put some effort into getting the resize handles for the items to work properly.\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eI'm planning to have such handles in this widget too, will definitely have a look at your implementation.\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cp\u003eThe image editor is written as separate widget from the start. But this widget was not exported yet to be used by other applications.\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eSame with KSnip, all the logic is basically in a class that inherits from QGraphicsScene, only the crop function is in the QGraphicsView that hosts the QGraphicsScene, so you could take the hosting QGraphicsView, add it to some other application, wire up signals and slots and that could work. But anyhow, I plan to start on a greenfield for this one and use some of KSnip implementation for the annotations and eventually some of the selection from Kreenshot Editor. Also I will definitely look into using KParts.\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cp\u003e+1 (or add scrollbars); because a downscaled image is not suitable for annotating\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eAgree on that one, though as it looks like we will for now implement the annotation as a separate widget\/dialog thingy and as next (somewhere in the future) step we could look into redesigning the main view of Spectacle ()and hopefully also the rect selection.\u003c\/p\u003e\n\n\u003cblockquote\u003e\u003cblockquote\u003e\u003cp\u003eTrue, it started only with two tools, now with several tools it's a bit annoying to switch.\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003e+1 :)\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eComing next \u003ca href=\"https:\/\/github.com\/DamirPorobic\/ksnip\/issues\/93\" class=\"remarkup-link\" target=\"_blank\" rel=\"noreferrer\"\u003ehttps:\/\/github.com\/DamirPorobic\/ksnip\/issues\/93\u003c\/a\u003e\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126897\" data-sigil=\"transaction\" data-meta=\"0_242\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/vpvsmwbpjsforz2rpiuy\/PHID-FILE-rc5ymxiwqtz5mgqkyqdt\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/rkflx\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126897\" id=\"126897\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_241\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/rkflx\/\" class=\"phui-handle phui-link-person\"\u003erkflx\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#126897\" data-sigil=\"has-tooltip\" data-meta=\"0_240\"\u003eFeb 7 2018, 10:43 AM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_238\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_239\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_46\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cblockquote\u003e\u003cp\u003eit looks like we will for now implement the annotation as a separate widget\/dialog\u003c\/p\u003e\u003c\/blockquote\u003e\n\n\u003cp\u003eWe'll reserve a spot in the upcoming \u003cspan class=\"remarkup-nav-sequence\"\u003e\u003cspan class=\"phui-tag-view phui-tag-type-shade phui-tag-grey phui-tag-shade \"\u003e\u003cspan class=\"phui-tag-core \"\u003eTools\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e button, see \u003ca href=\"\/T7841#126894\" class=\"phui-tag-view phui-tag-type-object \" data-sigil=\"hovercard\" data-meta=\"0_20\"\u003e\u003cspan class=\"phui-tag-core phui-tag-color-object\"\u003eT7841#126894\u003c\/span\u003e\u003c\/a\u003e for rationale. More prominent place hopefully later ;)\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126922\" data-sigil=\"transaction\" data-meta=\"0_251\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-major-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/57joaammbzh4zjfzcw4o\/PHID-FILE-6lf5tijisy6bd2vrnzb7\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/dporobic\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003cdiv class=\"phui-timeline-inner-content\"\u003e\u003ca name=\"126922\" id=\"126922\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon phui-timeline-title-with-menu\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-comment phui-timeline-icon\" data-meta=\"0_250\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/dporobic\/\" class=\"phui-handle phui-link-person\"\u003edporobic\u003c\/a\u003e added a comment.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#126922\" data-sigil=\"has-tooltip\" data-meta=\"0_249\"\u003eFeb 7 2018, 12:22 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003ca href=\"#\" class=\"phui-timeline-menu\" aria-haspopup=\"true\" aria-expanded=\"false\" data-sigil=\"phui-dropdown-menu\" data-meta=\"0_247\"\u003e\u003cspan class=\"aural-only\"\u003eComment Actions\u003c\/span\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-caret-down\" data-meta=\"0_248\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-core-content\"\u003e\u003cspan class=\"transaction-comment\" data-sigil=\"transaction-comment\" data-meta=\"0_47\"\u003e\u003cdiv class=\"phabricator-remarkup\"\u003e\u003cp\u003eNice, I'll start work on this, hopefully before weekend. I believe we can quickly have some basic functionality for first thought.\u003c\/p\u003e\u003c\/div\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126924\" data-sigil=\"transaction\" data-meta=\"0_254\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-minor-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/ofub7ti26qdxt72dx2h7\/PHID-FILE-yy26zuwtrgr3ysfhpn32\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/simgunz\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003ca name=\"126924\" id=\"126924\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-user-plus phui-timeline-icon\" data-meta=\"0_253\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/simgunz\/\" class=\"phui-handle phui-link-person\"\u003esimgunz\u003c\/a\u003e added a subscriber: \u003ca href=\"\/p\/simgunz\/\" class=\"phui-handle phui-link-person\" data-sigil=\"hovercard\" data-meta=\"0_48\"\u003esimgunz\u003c\/a\u003e.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#126924\" data-sigil=\"has-tooltip\" data-meta=\"0_252\"\u003eFeb 7 2018, 12:26 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-spacer\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-shell\" id=\"anchor-126926\" data-sigil=\"transaction\" data-meta=\"0_257\"\u003e\u003cdiv class=\"phui-timeline-event-view phui-timeline-minor-event\"\u003e\u003cdiv class=\"phui-timeline-content\"\u003e\u003ca style=\"background-image: url(https:\/\/phabricator.kde.org\/file\/data\/ofub7ti26qdxt72dx2h7\/PHID-FILE-yy26zuwtrgr3ysfhpn32\/profile)\" class=\"phui-timeline-image\" href=\"\/p\/simgunz\/\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-wedge phui-timeline-border\" style=\"\"\u003e\u003c\/div\u003e\u003cdiv class=\"phui-timeline-group phui-timeline-border\"\u003e\u003ca name=\"126926\" id=\"126926\" class=\"phabricator-anchor-view\"\u003e\u003c\/a\u003e\u003cdiv class=\"phui-timeline-title phui-timeline-title-with-icon\"\u003e\u003cspan class=\"phui-timeline-icon-fill\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-link phui-timeline-icon\" data-meta=\"0_256\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003ca href=\"\/p\/simgunz\/\" class=\"phui-handle phui-link-person\"\u003esimgunz\u003c\/a\u003e mentioned this in \u003ca href=\"\/T7841\" class=\"phui-handle\"\u003eT7841: Revamp buttons on the bottom to solve various usability issues\u003c\/a\u003e.\u003cspan class=\"phui-timeline-extra\"\u003e\u003ca href=\"#126926\" data-sigil=\"has-tooltip\" data-meta=\"0_255\"\u003eFeb 7 2018, 12:30 PM\u003c\/a\u003e\u003c\/span\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e\u003c\/div\u003e"},"javelin_metadata":[{"hoverPHID":"PHID-USER-aywgweprxnfqhwxsmsdy"},{"hoverPHID":"PHID-USER-swerxwndf6qxck6frzr2"},{"hoverPHID":"PHID-USER-txmfzjjr6pnlzcc6iqmc"},{"hoverPHID":"PHID-USER-swerxwndf6qxck6frzr2"},{"hoverPHID":"PHID-USER-aywgweprxnfqhwxsmsdy"},{"hoverPHID":"PHID-USER-jq3s5ymaiskiv7akdlte"},{"hoverPHID":"PHID-USER-swerxwndf6qxck6frzr2"},{"hoverPHID":"PHID-TASK-mfyf63gf2i3v2bf2auwb"},{"hoverPHID":"PHID-USER-aywgweprxnfqhwxsmsdy"},{"hoverPHID":"PHID-USER-pnm5e2w7sqrgak3v5ewy"},{"hoverPHID":"PHID-TASK-mfyf63gf2i3v2bf2auwb"},{"hoverPHID":"PHID-TASK-mfyf63gf2i3v2bf2auwb"},{"hoverPHID":"PHID-TASK-mfyf63gf2i3v2bf2auwb"},{"hoverPHID":"PHID-TASK-mfyf63gf2i3v2bf2auwb"},{"hoverPHID":"PHID-USER-jq3s5ymaiskiv7akdlte"},{"hoverPHID":"PHID-USER-aywgweprxnfqhwxsmsdy"},{"hoverPHID":"PHID-USER-swerxwndf6qxck6frzr2"},{"hoverPHID":"PHID-USER-pnm5e2w7sqrgak3v5ewy"},{"hoverPHID":"PHID-USER-txmfzjjr6pnlzcc6iqmc"},{"hoverPHID":"PHID-USER-aywgweprxnfqhwxsmsdy"},{"hoverPHID":"PHID-TASK-o5fu2ksvyf6buw55kuyd"},{"hoverPHID":"PHID-USER-jq3s5ymaiskiv7akdlte"},{"hoverPHID":"PHID-USER-ogaj6cyplmojrxq2azck"},{"phid":"PHID-XACT-TASK-xpjuducvbrnlutx"},{"phid":"PHID-XACT-TASK-e3acdqcmupkw2jf"},{"hoverPHID":"PHID-USER-aywgweprxnfqhwxsmsdy"},{"phid":"PHID-XACT-TASK-vbbafoe3qs65f43"},{"hoverPHID":"PHID-USER-swerxwndf6qxck6frzr2"},{"phid":"PHID-XACT-TASK-scanjwxxbns7efo"},{"phid":"PHID-XACT-TASK-4rthmgfki3snh3k"},{"phid":"PHID-XACT-TASK-raeqeuiqf5fkyi2"},{"hoverPHID":"PHID-USER-txmfzjjr6pnlzcc6iqmc"},{"phid":"PHID-XACT-TASK-ty5lzttkukf4vsp"},{"phid":"PHID-XACT-TASK-fc5l4jn5l2dyxfe"},{"phid":"PHID-XACT-TASK-wmv72vaesp7gmp3"},{"phid":"PHID-XACT-TASK-prcil7lozfjo6wi"},{"phid":"PHID-XACT-TASK-yxekqabrnsqo37h"},{"phid":"PHID-XACT-TASK-pdn7gaylvfi4hir"},{"phid":"PHID-XACT-TASK-27z6tqfk3q35qew"},{"phid":"PHID-XACT-TASK-we32hmqgs7vh4lo"},{"phid":"PHID-XACT-TASK-7yk5n6r2aeefx5o"},{"phid":"PHID-XACT-TASK-vnbztjnsrqydika"},{"hoverPHID":"PHID-USER-pnm5e2w7sqrgak3v5ewy"},{"phid":"PHID-XACT-TASK-r6nwqikiudgcj55"},{"phid":"PHID-XACT-TASK-cyfyrard7vm5mve"},{"phid":"PHID-XACT-TASK-7czdcefopihgj5c"},{"phid":"PHID-XACT-TASK-qmyg225uuitu3tm"},{"phid":"PHID-XACT-TASK-6iy75ddzqjlaomv"},{"hoverPHID":"PHID-USER-pijswiav2xehtrpgkx6l"},{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-3ukbp2x4axumndg","anchor":"97522"},{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-nbjojbifnlonau6","anchor":"125174"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-xpjuducvbrnlutx\/","ref":"T6321#125177"},[],{"anchor":"125177"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_1\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_55\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_56\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_3\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-xpjuducvbrnlutx\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_57\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_58\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-yw6khmaknwfva67","anchor":"125177"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-e3acdqcmupkw2jf\/","ref":"T6321#125353"},[],{"anchor":"125353"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_5\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_64\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_65\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_7\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-e3acdqcmupkw2jf\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_66\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_67\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-e3acdqcmupkw2jf","anchor":"125353"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-vbbafoe3qs65f43\/","ref":"T6321#126348"},[],{"anchor":"126348"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_9\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_73\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_74\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_11\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-vbbafoe3qs65f43\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_75\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_76\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-y4mgpki5intrygh","anchor":"126348"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-scanjwxxbns7efo\/","ref":"T6321#126395"},[],{"anchor":"126395"},[],[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_13\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_82\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_83\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_15\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-scanjwxxbns7efo\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_84\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_85\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_17\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/history\/PHID-XACT-TASK-scanjwxxbns7efo\/\" class=\"phabricator-action-view-item\" data-sigil=\"workflow\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-list phabricator-action-view-icon\" data-meta=\"0_86\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Edit History\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-k7zplmltqgoi3ai","anchor":"126395"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-4rthmgfki3snh3k\/","ref":"T6321#126402"},[],{"anchor":"126402"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_19\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_92\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_93\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_21\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-4rthmgfki3snh3k\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_94\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_95\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-4rthmgfki3snh3k","anchor":"126402"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-raeqeuiqf5fkyi2\/","ref":"T6321#126417"},[],{"anchor":"126417"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_23\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_101\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_102\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_25\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-raeqeuiqf5fkyi2\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_103\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_104\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-raeqeuiqf5fkyi2","anchor":"126417"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-ty5lzttkukf4vsp\/","ref":"T6321#126418"},[],{"anchor":"126418"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_27\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_110\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_111\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_29\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-ty5lzttkukf4vsp\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_112\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_113\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-now3hg54ii7papb","anchor":"126418"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-fc5l4jn5l2dyxfe\/","ref":"T6321#126420"},[],{"anchor":"126420"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_31\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_119\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_120\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_33\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-fc5l4jn5l2dyxfe\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_121\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_122\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-fc5l4jn5l2dyxfe","anchor":"126420"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-wmv72vaesp7gmp3\/","ref":"T6321#126422"},[],{"anchor":"126422"},[],[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_35\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_128\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_129\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_37\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-wmv72vaesp7gmp3\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_130\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_131\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_39\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/history\/PHID-XACT-TASK-wmv72vaesp7gmp3\/\" class=\"phabricator-action-view-item\" data-sigil=\"workflow\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-list phabricator-action-view-icon\" data-meta=\"0_132\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Edit History\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-wmv72vaesp7gmp3","anchor":"126422"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-prcil7lozfjo6wi\/","ref":"T6321#126423"},[],{"anchor":"126423"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_41\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_138\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_139\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_43\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-prcil7lozfjo6wi\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_140\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_141\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-prcil7lozfjo6wi","anchor":"126423"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-yxekqabrnsqo37h\/","ref":"T6321#126436"},[],{"anchor":"126436"},[],{"anchor":"126436"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_45\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_147\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_148\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_47\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-yxekqabrnsqo37h\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_149\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_150\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_49\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-yxekqabrnsqo37h\/?email\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_151\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-envelope-o phabricator-action-view-icon\" data-meta=\"0_152\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Email Body\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Email"},[],{"phid":"PHID-XACT-TASK-yxekqabrnsqo37h","anchor":"126436"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-pdn7gaylvfi4hir\/","ref":"T6321#126437"},[],{"anchor":"126437"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_51\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_158\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_159\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_53\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-pdn7gaylvfi4hir\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_160\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_161\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-pdn7gaylvfi4hir","anchor":"126437"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-27z6tqfk3q35qew\/","ref":"T6321#126465"},[],{"anchor":"126465"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_55\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_167\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_168\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_57\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-27z6tqfk3q35qew\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_169\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_170\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-27z6tqfk3q35qew","anchor":"126465"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-we32hmqgs7vh4lo\/","ref":"T6321#126530"},[],{"anchor":"126530"},[],[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_59\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_176\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_177\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_61\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-we32hmqgs7vh4lo\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_178\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_179\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_63\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/history\/PHID-XACT-TASK-we32hmqgs7vh4lo\/\" class=\"phabricator-action-view-item\" data-sigil=\"workflow\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-list phabricator-action-view-icon\" data-meta=\"0_180\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Edit History\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-we32hmqgs7vh4lo","anchor":"126530"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-7yk5n6r2aeefx5o\/","ref":"T6321#126592"},[],{"anchor":"126592"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_65\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_186\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_187\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_67\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-7yk5n6r2aeefx5o\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_188\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_189\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-7yk5n6r2aeefx5o","anchor":"126592"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-vnbztjnsrqydika\/","ref":"T6321#126650"},[],{"anchor":"126650"},[],[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_69\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_195\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_196\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_71\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-vnbztjnsrqydika\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_197\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_198\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_73\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/history\/PHID-XACT-TASK-vnbztjnsrqydika\/\" class=\"phabricator-action-view-item\" data-sigil=\"workflow\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-list phabricator-action-view-icon\" data-meta=\"0_199\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Edit History\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-vnbztjnsrqydika","anchor":"126650"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-r6nwqikiudgcj55\/","ref":"T6321#126744"},[],{"anchor":"126744"},[],[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_75\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_205\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_206\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_77\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-r6nwqikiudgcj55\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_207\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_208\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_79\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/history\/PHID-XACT-TASK-r6nwqikiudgcj55\/\" class=\"phabricator-action-view-item\" data-sigil=\"workflow\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-list phabricator-action-view-icon\" data-meta=\"0_209\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Edit History\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-yoef6zmcztyrxm3","anchor":"126744"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-cyfyrard7vm5mve\/","ref":"T6321#126807"},[],{"anchor":"126807"},[],[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_81\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_215\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_216\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_83\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-cyfyrard7vm5mve\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_217\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_218\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_85\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/history\/PHID-XACT-TASK-cyfyrard7vm5mve\/\" class=\"phabricator-action-view-item\" data-sigil=\"workflow\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-list phabricator-action-view-icon\" data-meta=\"0_219\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Edit History\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-cyfyrard7vm5mve","anchor":"126807"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-7czdcefopihgj5c\/","ref":"T6321#126857"},[],{"anchor":"126857"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_87\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_225\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_226\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_89\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-7czdcefopihgj5c\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_227\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_228\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-7czdcefopihgj5c","anchor":"126857"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-qmyg225uuitu3tm\/","ref":"T6321#126897"},[],{"anchor":"126897"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_91\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_234\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_235\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_93\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-qmyg225uuitu3tm\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_236\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_237\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-qmyg225uuitu3tm","anchor":"126897"},{"targetID":"UQ0_1","uri":"\/transactions\/quote\/PHID-XACT-TASK-6iy75ddzqjlaomv\/","ref":"T6321#126922"},[],{"anchor":"126922"},[],{"items":"\u003cul class=\"phabricator-action-list-view \"\u003e\u003cli id=\"UQ0_95\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"#\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-quote\" data-meta=\"0_243\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-quote-left phabricator-action-view-icon\" data-meta=\"0_244\" aria-hidden=\"true\"\u003e\u003c\/span\u003eQuote Comment\u003c\/a\u003e\u003c\/li\u003e\u003cli id=\"UQ0_97\" class=\"phabricator-action-view phabricator-action-view-href action-has-icon\" style=\"\"\u003e\u003ca href=\"\/transactions\/raw\/PHID-XACT-TASK-6iy75ddzqjlaomv\/\" class=\"phabricator-action-view-item\" data-sigil=\"transaction-raw\" data-meta=\"0_245\"\u003e\u003cspan class=\"visual-only phui-icon-view phui-font-fa fa-code phabricator-action-view-icon\" data-meta=\"0_246\" aria-hidden=\"true\"\u003e\u003c\/span\u003eView Remarkup\u003c\/a\u003e\u003c\/li\u003e\u003c\/ul\u003e"},[],{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-6iy75ddzqjlaomv","anchor":"126922"},{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-xgejbeemg7wpt6k","anchor":"126924"},{"tip":"Via Web"},[],{"phid":"PHID-XACT-TASK-4xaxlgvob5sszst","anchor":"126926"}],"javelin_behaviors":{"phui-hovercards":[],"phabricator-watch-anchor":[],"phabricator-tooltips":[],"phui-dropdown-menu":[]},"javelin_resources":["https:\/\/phabricator.kde.org\/res\/defaultX\/phabricator\/8e3d1fb7\/core.pkg.css","https:\/\/phabricator.kde.org\/res\/defaultX\/phabricator\/2058ec09\/core.pkg.js","https:\/\/phabricator.kde.org\/res\/defaultX\/phabricator\/638a4e2b\/rsrc\/externals\/javelin\/core\/init.js"]}