D11198: [libbreezecommon] Add box shadow helper

2018-07-16 Thread Rik Mills
rikmills added a comment.


  In D11198#292783 , @zzag wrote:
  
  > @rikmills Should build now.
  
  
  @zzag It does. Thank you

REPOSITORY
  R31 Breeze

REVISION DETAIL
  https://phabricator.kde.org/D11198

To: zzag, #breeze, #vdg, hpereiradacosta
Cc: rikmills, ngraham, broulik, abetts, plasma-devel, ragreen, Pitel, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, sebas, apol, mart


D14150: [kdecoration] Delete unused includes

2018-07-16 Thread Vlad Zagorodniy
zzag created this revision.
zzag added a reviewer: Plasma.
Restricted Application added a project: Plasma.
Restricted Application added a subscriber: plasma-devel.
zzag requested review of this revision.

TEST PLAN
  Still builds.

REPOSITORY
  R31 Breeze

BRANCH
  delete-unused-includes

REVISION DETAIL
  https://phabricator.kde.org/D14150

AFFECTED FILES
  kdecoration/breezedecoration.cpp

To: zzag, #plasma
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14143: Make the action selector OSD independent of the other OSDs

2018-07-16 Thread Frederik Gladhorn
gladhorn added inline comments.

INLINE COMMENTS

> zzag wrote in osd.cpp:120
> s/expansion/extension/

Good point. I copied this from the original instantiation, will fix both.

REPOSITORY
  R104 KScreen

REVISION DETAIL
  https://phabricator.kde.org/D14143

To: gladhorn, #plasma
Cc: zzag, plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14143: Make the action selector OSD independent of the other OSDs

2018-07-16 Thread Frederik Gladhorn
gladhorn updated this revision to Diff 37850.
gladhorn added a comment.


  Remove string ref in return.

REPOSITORY
  R104 KScreen

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14143?vs=37826&id=37850

BRANCH
  arcpatch-D14143

REVISION DETAIL
  https://phabricator.kde.org/D14143

AFFECTED FILES
  kded/osd.cpp
  kded/osd.h
  kded/qml/OsdSelector.qml

To: gladhorn, #plasma
Cc: zzag, plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14152: Remove ref from returned QString

2018-07-16 Thread Frederik Gladhorn
gladhorn created this revision.
gladhorn added a reviewer: Plasma.
Restricted Application added a project: Plasma.
Restricted Application added a subscriber: plasma-devel.
gladhorn requested review of this revision.

REVISION SUMMARY
  Let's leave it up to the compiler to eliminate the ref.
  Suggested by zzag.

REPOSITORY
  R104 KScreen

REVISION DETAIL
  https://phabricator.kde.org/D14152

AFFECTED FILES
  kded/osd.cpp

To: gladhorn, #plasma
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14152: Remove ref from returned QString

2018-07-16 Thread Vlad Zagorodniy
zzag added inline comments.

INLINE COMMENTS

> osd.cpp:58
>  
> -const QString &osdPath = 
> QStandardPaths::locate(QStandardPaths::QStandardPaths::GenericDataLocation, 
> QStringLiteral("kded_kscreen/qml/Osd.qml"));
> +QString osdPath = 
> QStandardPaths::locate(QStandardPaths::QStandardPaths::GenericDataLocation, 
> QStringLiteral("kded_kscreen/qml/Osd.qml"));
>  if (osdPath.isEmpty()) {

Please keep `const`.

REPOSITORY
  R104 KScreen

REVISION DETAIL
  https://phabricator.kde.org/D14152

To: gladhorn, #plasma
Cc: zzag, plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14145: Show a vertical menu for the panel widget options pop-up

2018-07-16 Thread Kai Uwe Broulik
broulik added a comment.


  +1000
  
  this flyout has annoyed me forever

INLINE COMMENTS

> ConfigOverlay.qml:366
>  
> -LayoutMirroring.enabled: Qt.application.layoutDirection === 
> Qt.RightToLeft
> -LayoutMirroring.childrenInherit: true
> -
> -Row {
> -id: handleRow
> +Column {
> +id: handleButtons

I think if you used `ColumnLayout` you could let it figure out the width on its 
own rather than having to do manual calculations for every item

  ColumnLayout {
  Heading { Layout.fillWidth: true; ... }
  ToolButton { Layout.fillWidth: true; ... }
  }

> ConfigOverlay.qml:374
> +level: 4
> +maximumLineCount: 1
> +

I think `Heading` never wraps on its own

> ConfigOverlay.qml:381
>  iconSource: "configure"
> +text: i18n("Configure")
>  onClicked: {

Doesn't this need an ellipsis, `i18n("Configure...")`

REPOSITORY
  R119 Plasma Desktop

REVISION DETAIL
  https://phabricator.kde.org/D14145

To: ngraham, #plasma
Cc: broulik, plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


Re: Discussion for Virtual Desktops and Activities future

2018-07-16 Thread Marco Martin
On Fri, Jul 13, 2018 at 6:20 PM David Edmundson
 wrote:
>  - effects show more options
>  - pager will show more options
>  - set on activity desktop menu will show more options
> (not really a huge issue. Just don't change activities if you don't want to 
> change activities)

To me that's exactly the problem, the direction went from "how can we
make it simpler" to "how we cover every possible workflow making it
even more complex in the process"
I don't think it could ever be made really "good" if we try to
preserve all possible workflows, sometimes to get something from
mediocre to really good, its scope has to be narrowed a lot

--
Marco Martin


Re: Discussion for Virtual Desktops and Activities future

2018-07-16 Thread Marco Martin
On Sun, Jul 15, 2018 at 3:57 PM Martin Flöser  wrote:
> Activities are weird and we (Thomas and I) never knew what they are and
> how we should integrate them in KWin. The existing code is just a bad
> copy of virtual desktops (bad because it copied the code 1:1 without
> understanding what it does including the things which just don't make
> sense). It's one of the few areas in KWin which are truly unmaintained.

totally agree on that point, it's a bad copy which needs to go.

> So from KWin perspective I would prefer:
>   * virtual desktops gain support for windows on multiple desktops
it does ;)
>   * activity support gets removed from KWin
>   * any mapping from activity to virtual desktop happens outside of KWin
> (e.g. in kamd)

yeah, i would like too to have the direct support of activities in
kwin gone (even in x11, but won't be possible for a long time i fear)
the way i originally tought about it was:
* kwin manages/saved/reads virtual desktops as now
* kamd uses as a "source" of valid activities the list of kwin desktops
* kamd reacts to desktop change with activity change
* removing a desktop would mean removing an activity
* adding a desktop is adding an activity
* if is kamd to ask to create an activity, it asks to kwin beforehand,
and creates it only if/when kwin anwered with a new desktop id
* if kamd wants to switch activity, asks kwin beforehand

annoying thing, the desktops kwayland protocol would have to have a
pretty much 1:1 identical implementation in dbus (which may be needed
anyways for the desktops kcm...)


Re: Discussion for Virtual Desktops and Activities future

2018-07-16 Thread Marco Martin
On Fri, Jul 13, 2018 at 1:54 PM David Edmundson
 wrote:
> work - 1
> work - 2
> browsing - 1
> browsing - 2

I really don't like having a different set of desktops for each
activity, to me would be really confusing, and i don't think it would
cover my main use case? (switching activities
Perhaps i could live with that if a desktop can be associated to one
and only one activity, which is how i understood it (so then you can
switch to the activity when you switch desktop), but if there are
multiple desktops per activity, still showing them all in the pager
is.. weird

> With KAMD only switching the DBus currentActivity when switching between the 
> first two desktops to the last two.

What would be the workflow/ui of adding a new virtual desktop, or
adding a new activity? have some UI questions that I think should be
answered before decising how viable the direction is.

there would need to be:
* an operation that creates an activity with its associated desktop
* an operation which creates another desktop for the current activity
both in the pager? one in the pager and the other one in the activity manager?

* What happens when you delete an activity? all its desktops get deleted?
* What happens when you delete the last desktop for an activity? the
activity gets deleted?

is it possible to create an ux workflow which makes this not confusing?

--
Marco Martin


D13935: Remove audio setup from Phonon KCM

2018-07-16 Thread Harald Sitter
sitter added a comment.


  This is on my radar and looked good from a diff review. I'd like to give this 
a proper review though and that will take a bit as I am super swamped just now.

REPOSITORY
  R119 Plasma Desktop

REVISION DETAIL
  https://phabricator.kde.org/D13935

To: nicolasfella, #plasma, sitter
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14147: Port from GConf to GSettings

2018-07-16 Thread Kai Uwe Broulik
broulik added a comment.


  I would prefer those keyword changes to be done separately

REPOSITORY
  R115 Plasma Audio Volume Applet

REVISION DETAIL
  https://phabricator.kde.org/D14147

To: nicolasfella, drosca, davidedmundson
Cc: broulik, asturmlechner, plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, 
ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


Re: Discussion for Virtual Desktops and Activities future

2018-07-16 Thread David Edmundson
For the vast majority of users my proposal is identical to your proposal.
The only real difference is in mine we explicitly say that we never assume
VD ID == activity ID which can allow for most future complexity should
someone want to both implement and opt into it.


> (switching activities
> Perhaps i could live with that if a desktop can be associated to one
> and only one activity, which is how i understood it


Yep, that's how I envisioned it too.
(Also, it's effectively Michail's mockup too)


> With KAMD only switching the DBus currentActivity when switching between
> the first two desktops to the last two.
>
> What would be the workflow/ui of adding a new virtual desktop, or
> adding a new activity? have some UI questions that I think should be
> answered before decising how viable the direction is.
>
>
Yeah, adding/removing is something that needs some thinking. The core
questions needs answering for the basic merging case too. Now we have fixed
IDs, kwin's +/- icons that push/pop to the end don't really cut it.

As for my mod, in my head it's basically what you just said above. Clicking
+ creates an activity which means KAMD then creates a N desktops. Clicking
- tells KAMD to delete the activity which in turn deletes N desktops. Might
not be the best for the group of dual-activity-VD users, but it would be
quite simple and consistent.

I'm not set in stone on that, depends a bit on getting feedback about the
explicit problems with merging.

Of course if someone wanted to write Michail's mockup as an optional effect
that could get far more fine grained control that'd be fine.


D14156: Show "muted" icon for dummy output

2018-07-16 Thread Kai Uwe Broulik
broulik created this revision.
broulik added reviewers: Plasma, drosca.
Restricted Application added a project: Plasma.
Restricted Application added a subscriber: plasma-devel.
broulik requested review of this revision.

REVISION SUMMARY
  Dummy output cannot play any sound

TEST PLAN
  Disconnected my headphones, got "Dummy Output" with muted icon in OSD

REPOSITORY
  R115 Plasma Audio Volume Applet

REVISION DETAIL
  https://phabricator.kde.org/D14156

AFFECTED FILES
  applet/contents/ui/main.qml

To: broulik, #plasma, drosca
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14157: Add QT_NO_KEYWORDS definition

2018-07-16 Thread Nicolas Fella
nicolasfella created this revision.
nicolasfella added reviewers: drosca, broulik, davidedmundson.
Restricted Application added a project: Plasma.
Restricted Application added a subscriber: plasma-devel.
nicolasfella requested review of this revision.

TEST PLAN
  Builds

REPOSITORY
  R115 Plasma Audio Volume Applet

BRANCH
  nokeywords

REVISION DETAIL
  https://phabricator.kde.org/D14157

AFFECTED FILES
  CMakeLists.txt
  src/card.cpp
  src/card.h
  src/client.cpp
  src/client.h
  src/device.h
  src/kcm/module.h
  src/maps.h
  src/module.cpp
  src/module.h
  src/profile.h
  src/pulseaudio.cpp
  src/pulseaudio.h
  src/pulseobject.h
  src/qml/globalactioncollection.cpp
  src/qml/globalactioncollection.h
  src/qml/volumefeedback.h
  src/qml/volumeosd.h
  src/server.cpp
  src/server.h
  src/sink.h
  src/sinkinput.cpp
  src/sourceoutput.cpp
  src/stream.h
  src/streamrestore.cpp
  src/streamrestore.h
  src/volumeobject.h

To: nicolasfella, drosca, broulik, davidedmundson
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14150: [kdecoration] Delete unused includes

2018-07-16 Thread Vlad Zagorodniy
This revision was automatically updated to reflect the committed changes.
Closed by commit R31:f28e591d: [kdecoration] Delete unused includes 
(authored by zzag).

REPOSITORY
  R31 Breeze

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14150?vs=37846&id=37865

REVISION DETAIL
  https://phabricator.kde.org/D14150

AFFECTED FILES
  kdecoration/breezedecoration.cpp

To: zzag, #plasma, davidedmundson
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14026: [Pager] Don't show a window list on hover if there is only one window

2018-07-16 Thread Nicolas Fella
This revision was automatically updated to reflect the committed changes.
Closed by commit R119:7f729fa1268c: [Pager] Don't show a window list on 
hover if there is only one window (authored by nicolasfella).

REPOSITORY
  R119 Plasma Desktop

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14026?vs=37504&id=37866

REVISION DETAIL
  https://phabricator.kde.org/D14026

AFFECTED FILES
  applets/pager/package/contents/ui/main.qml

To: nicolasfella, hein, broulik, ngraham
Cc: mart, plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol


KDE CI: Plasma kwayland stable-kf5-qt5 SUSEQt5.10 - Build # 30 - Failure!

2018-07-16 Thread CI System
BUILD FAILURE
 Build URL
https://build.kde.org/job/Plasma%20kwayland%20stable-kf5-qt5%20SUSEQt5.10/30/
 Project:
Plasma kwayland stable-kf5-qt5 SUSEQt5.10
 Date of build:
Mon, 16 Jul 2018 12:03:46 +
 Build duration:
2 min 31 sec and counting
   CONSOLE OUTPUT
  [...truncated 265.59 KB...][ 38%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/shadow_interface.cpp.o[ 38%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/blur_interface.cpp.o[ 38%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/contrast_interface.cpp.o[ 38%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/server_decoration_interface.cpp.o[ 38%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/server_decoration_palette_interface.cpp.o[ 38%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/pointerconstraints.cpp.o[ 38%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/pointergestures.cpp.o[ 39%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/shell_interface.cpp.o[ 39%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/surface_interface.cpp.o[ 39%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/subcompositor_interface.cpp.o[ 39%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/touch_interface.cpp.o[ 39%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/plasmashell.cpp.o[ 39%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/plasmawindowmanagement.cpp.o[ 39%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/textinput_interface.cpp.o[ 39%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/textinput_interface_v0.cpp.o/home/jenkins/workspace/Plasma kwayland stable-kf5-qt5 SUSEQt5.10/src/server/surface_interface.cpp:278:1: warning: missing initializer for member 'wl_surface_interface::damage_buffer' [-Wmissing-field-initializers] }; ^[ 40%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/textinput_interface_v2.cpp.o[ 40%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/xdgshell_interface.cpp.o[ 40%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/xdgshell_v5_interface.cpp.o[ 41%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/plasmawindowmodel.cpp.o[ 41%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/xdgforeign_v2_interface.cpp.o[ 41%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/xdgforeign_interface.cpp.o[ 42%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/xdgshell_v6_interface.cpp.o[ 42%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/region.cpp.o[ 42%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/xdgshell_stable_interface.cpp.o[ 42%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/xdgoutput_interface.cpp.o[ 42%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/__/compat/wayland-xdg-shell-v5-protocol.c.o[ 42%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-output-management-protocol.c.o[ 43%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-org_kde_kwin_outputdevice-protocol.c.o[ 43%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-plasma-shell-protocol.c.o[ 43%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-plasma-window-management-protocol.c.o[ 43%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-qt-surface-extension-protocol.c.o[ 43%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-idle-protocol.c.o[ 43%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-fake-input-protocol.c.o[ 44%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-shadow-protocol.c.o[ 44%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-dpms-protocol.c.o[ 44%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-blur-protocol.c.o[ 44%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/registry.cpp.o[ 44%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-contrast-protocol.c.o[ 44%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-relativepointer-unstable-v1-protocol.c.o[ 44%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/relativepointer.cpp.o[ 45%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-slide-protocol.c.o[ 45%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-server_decoration-protocol.c.o[ 45%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/seat.cpp.o[ 45%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-text-protocol.c.o[ 45%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/wayland-text-input-unstable-v2-protocol.c.o[ 45%] Building C object src/server/CMakeFiles/KF5WaylandServer.dir/w

KDE CI: Plasma kwayland kf5-qt5 FreeBSDQt5.10 - Build # 28 - Failure!

2018-07-16 Thread CI System
BUILD FAILURE
 Build URL
https://build.kde.org/job/Plasma%20kwayland%20kf5-qt5%20FreeBSDQt5.10/28/
 Project:
Plasma kwayland kf5-qt5 FreeBSDQt5.10
 Date of build:
Mon, 16 Jul 2018 12:03:46 +
 Build duration:
2 min 41 sec and counting
   CONSOLE OUTPUT
  [...truncated 259.99 KB...][ 40%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/region_interface.cpp.o[ 41%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/relativepointer_interface.cpp.o1 warning generated.[ 41%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/relativepointer_interface_v1.cpp.o/usr/home/jenkins/workspace/Plasma kwayland kf5-qt5 FreeBSDQt5.10/src/client/server_decoration_palette.cpp:124:34: warning: private field 'q' is not used [-Wunused-private-field]ServerSideDecorationPalette *q; ^1 warning generated.[ 41%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/shm_pool.cpp.o[ 41%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/resource.cpp.o[ 41%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/subcompositor.cpp.o[ 42%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/subsurface.cpp.o[ 42%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/seat_interface.cpp.o[ 42%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/slide_interface.cpp.o[ 43%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/shadow_interface.cpp.o[ 43%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/blur_interface.cpp.o[ 43%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/surface.cpp.o[ 43%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/contrast_interface.cpp.o[ 43%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/touch.cpp.o[ 43%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/textinput.cpp.o[ 43%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/textinput_v0.cpp.o/usr/home/jenkins/workspace/Plasma kwayland kf5-qt5 FreeBSDQt5.10/src/server/seat_interface.cpp:782:50: warning: unused parameter 'button' [-Wunused-parameter]static quint32 qtToWaylandButton(Qt::MouseButton button) ^[ 43%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/server_decoration_interface.cpp.o[ 43%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/server_decoration_palette_interface.cpp.o[ 44%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/shell_interface.cpp.o[ 44%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/surface_interface.cpp.o/usr/home/jenkins/workspace/Plasma kwayland kf5-qt5 FreeBSDQt5.10/src/client/touch.cpp:148:1: warning: missing field 'shape' initializer [-Wmissing-field-initializers]};^[ 45%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/textinput_v2.cpp.o[ 45%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/xdgshell.cpp.o1 warning generated.[ 45%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/xdgforeign_v2.cpp.o[ 45%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/xdgforeign.cpp.o[ 45%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/subcompositor_interface.cpp.o/usr/home/jenkins/workspace/Plasma kwayland kf5-qt5 FreeBSDQt5.10/src/server/surface_interface.cpp:278:1: warning: missing field 'damage_buffer' initializer [-Wmissing-field-initializers]};^/usr/home/jenkins/workspace/Plasma kwayland kf5-qt5 FreeBSDQt5.10/src/client/xdgshell.cpp:26:10: fatal error: 'wayland-xdg-shell-v5-client-protocol.h' file not found#include  ^~~~1 error generated.gmake[2]: *** [src/client/CMakeFiles/KF5WaylandClient.dir/build.make:895: src/client/CMakeFiles/KF5WaylandClient.dir/xdgshell.cpp.o] Error 1gmake[2]: *** Waiting for unfinished jobs[ 45%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/touch_interface.cpp.o[ 45%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/textinput_interface.cpp.o[ 45%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/textinput_interface_v0.cpp.o[ 46%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/textinput_interface_v2.cpp.o1 warning generated.[ 46%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/xdgshell_interface.cpp.o1 warning generated.[ 46%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/xdgshell_v5_interface.cpp.o[ 46%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/xdgforeign_v2_interface.cpp.ogmake[1]: *** [CMakeFiles/Makefile2:175: src/client/CMakeFiles/KF5WaylandClient.dir/all] Error 2gmake[1]: *** Waiting for unfinished jobs[ 46%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/xdgforeign_interface.cpp.o[ 47%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/xdgshell_v6_interfa

KDE CI: Plasma kwayland stable-kf5-qt5 FreeBSDQt5.10 - Build # 31 - Failure!

2018-07-16 Thread CI System
BUILD FAILURE
 Build URL
https://build.kde.org/job/Plasma%20kwayland%20stable-kf5-qt5%20FreeBSDQt5.10/31/
 Project:
Plasma kwayland stable-kf5-qt5 FreeBSDQt5.10
 Date of build:
Mon, 16 Jul 2018 12:03:46 +
 Build duration:
2 min 29 sec and counting
   CONSOLE OUTPUT
  [...truncated 260.80 KB...]1 error generated.gmake[2]: *** [src/client/CMakeFiles/KF5WaylandClient.dir/build.make:895: src/client/CMakeFiles/KF5WaylandClient.dir/xdgshell.cpp.o] Error 1gmake[2]: *** Waiting for unfinished jobs[ 40%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/remote_access_interface.cpp.o[ 41%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/outputconfiguration_interface.cpp.o[ 41%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/outputchangeset.cpp.o/usr/home/jenkins/workspace/Plasma kwayland stable-kf5-qt5 FreeBSDQt5.10/src/server/fakeinput_interface.cpp:74:22: warning: private field 'q' is not used [-Wunused-private-field]FakeInputDevice *q; ^[ 41%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/outputmanagement_interface.cpp.o[ 41%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/outputdevice_interface.cpp.o1 warning generated.[ 41%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/logging.cpp.o[ 42%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/output_interface.cpp.o[ 42%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/pointer_interface.cpp.o[ 42%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/plasmashell_interface.cpp.o[ 42%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/plasmawindowmanagement_interface.cpp.o[ 42%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/pointerconstraints_interface.cpp.ogmake[1]: *** [CMakeFiles/Makefile2:175: src/client/CMakeFiles/KF5WaylandClient.dir/all] Error 2gmake[1]: *** Waiting for unfinished jobs[ 43%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/pointerconstraints_interface_v1.cpp.o[ 43%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/pointergestures_interface.cpp.o[ 43%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/pointergestures_interface_v1.cpp.o[ 43%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/qtsurfaceextension_interface.cpp.o[ 43%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/region_interface.cpp.o[ 44%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/relativepointer_interface.cpp.o[ 44%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/relativepointer_interface_v1.cpp.o[ 44%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/resource.cpp.o[ 44%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/seat_interface.cpp.o[ 44%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/slide_interface.cpp.o/usr/home/jenkins/workspace/Plasma kwayland stable-kf5-qt5 FreeBSDQt5.10/src/server/plasmawindowmanagement_interface.cpp:118:17: warning: private field 'listener' is not used [-Wunused-private-field]wl_listener listener;^1 warning generated.[ 45%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/shadow_interface.cpp.o[ 45%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/blur_interface.cpp.o[ 45%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/contrast_interface.cpp.o[ 45%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/server_decoration_interface.cpp.o[ 45%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/server_decoration_palette_interface.cpp.o[ 46%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/shell_interface.cpp.o[ 46%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/surface_interface.cpp.o/usr/home/jenkins/workspace/Plasma kwayland stable-kf5-qt5 FreeBSDQt5.10/src/server/seat_interface.cpp:782:50: warning: unused parameter 'button' [-Wunused-parameter]static quint32 qtToWaylandButton(Qt::MouseButton button) ^[ 46%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/subcompositor_interface.cpp.o[ 46%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/touch_interface.cpp.o[ 46%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/textinput_interface.cpp.o[ 46%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/textinput_interface_v0.cpp.o/usr/home/jenkins/workspace/Plasma kwayland stable-kf5-qt5 FreeBSDQt5.10/src/server/surface_interface.cpp:278:1: warning: missing field 'damage_buffer' initializer [-Wmissing-field-initializers]};^[ 47%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/textinput_interface_v2.cpp.o[ 47%] Building CXX object src/server/CMakeFiles/KF5WaylandServer.dir/xdgshell_interface.cpp.o[ 47%] Building CXX object src/server/CMakeF

KDE CI: Plasma kwayland kf5-qt5 SUSEQt5.10 - Build # 31 - Failure!

2018-07-16 Thread CI System
BUILD FAILURE
 Build URL
https://build.kde.org/job/Plasma%20kwayland%20kf5-qt5%20SUSEQt5.10/31/
 Project:
Plasma kwayland kf5-qt5 SUSEQt5.10
 Date of build:
Mon, 16 Jul 2018 12:03:46 +
 Build duration:
5 min 55 sec and counting
   CONSOLE OUTPUT
  [...truncated 282.56 KB...]* [ 40%] Generating wayland-xdg-output-unstable-v1-protocol.c[ 41%] Generating wayland-xdg-shell-protocol.c[ 41%] Building CXX object src/tools/testserver/CMakeFiles/org-kde-kf5-kwayland-testserver.dir/testserver.cpp.oScanning dependencies of target KF5WaylandClient[ 41%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/appmenu.cpp.o[ 41%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/buffer.cpp.o[ 42%] Building CXX object src/tools/testserver/CMakeFiles/org-kde-kf5-kwayland-testserver.dir/org-kde-kf5-kwayland-testserver_autogen/mocs_compilation.cpp.oIn file included from /home/jenkins/workspace/Plasma kwayland kf5-qt5 SUSEQt5.10/src/client/buffer.cpp:21:/home/jenkins/workspace/Plasma kwayland kf5-qt5 SUSEQt5.10/src/client/buffer_p.h:32:29: warning: 'KWayland::Client::Buffer::Private' has a field 'KWayland::Client::Buffer::Private::nativeBuffer' whose type uses the anonymous namespace [-Wsubobject-linkage] class Q_DECL_HIDDEN Buffer::Private ^~~[ 43%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/blur.cpp.o[ 43%] Linking CXX executable ../../../bin/org-kde-kf5-kwayland-testserver[ 43%] Built target org-kde-kf5-kwayland-testserverScanning dependencies of target testWaylandServerSeat[ 43%] Building CXX object autotests/server/CMakeFiles/testWaylandServerSeat.dir/test_seat.cpp.o[ 44%] Building CXX object autotests/server/CMakeFiles/testWaylandServerSeat.dir/testWaylandServerSeat_autogen/mocs_compilation.cpp.o[ 44%] Linking CXX executable ../../bin/testWaylandServerSeat[ 44%] Built target testWaylandServerSeatScanning dependencies of target testNoXdgRuntimeDir[ 44%] Building CXX object autotests/server/CMakeFiles/testNoXdgRuntimeDir.dir/test_no_xdg_runtime_dir.cpp.o[ 44%] Building CXX object autotests/server/CMakeFiles/testNoXdgRuntimeDir.dir/testNoXdgRuntimeDir_autogen/mocs_compilation.cpp.o[ 45%] Linking CXX executable ../../bin/testNoXdgRuntimeDir[ 45%] Built target testNoXdgRuntimeDir[ 45%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/compositor.cpp.o[ 45%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/connection_thread.cpp.o[ 45%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/contrast.cpp.o[ 45%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/slide.cpp.o[ 45%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/event_queue.cpp.o[ 46%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/datadevice.cpp.o[ 46%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/datadevicemanager.cpp.o[ 46%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/dataoffer.cpp.o[ 46%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/datasource.cpp.o[ 46%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/dpms.cpp.o[ 47%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/fakeinput.cpp.o[ 47%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/fullscreen_shell.cpp.o[ 47%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/idle.cpp.o[ 47%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/idleinhibit.cpp.o[ 47%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/keyboard.cpp.o[ 48%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/remote_access.cpp.o[ 48%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/outputconfiguration.cpp.o[ 48%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/outputmanagement.cpp.o[ 48%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/outputdevice.cpp.o[ 48%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/logging.cpp.o[ 48%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/output.cpp.o[ 49%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/pointer.cpp.o[ 49%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/pointerconstraints.cpp.o[ 49%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/pointergestures.cpp.o[ 49%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/plasmashell.cpp.o[ 49%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/plasmawindowmanagement.cpp.o[ 50%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/plasmawindowmodel.cpp.o[ 50%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/region.cpp.o[ 50%] Building CXX object src/client/CMakeFiles/KF5WaylandClient.dir/registry.cpp.o[ 50%] Building CXX object src/client/CMakeFi

D14050: Fwupd Backend For Review and Improvement

2018-07-16 Thread Aleix Pol Gonzalez
apol requested changes to this revision.
apol added inline comments.
This revision now requires changes to proceed.

INLINE COMMENTS

> FwupdBackend.cpp:93
> +AbstractResource* res = (AbstractResource*) r;
> +if(r->m_id.isEmpty())
> +qDebug() << "Resource ID is Empty" << r->m_name;

Does it still make sense to add it if it doesn't have an id?
In which cases wouldn't it have an id?

> FwupdBackend.cpp:163
> +{
> +QString guidStr = QLatin1Literal((char *)g_ptr_array_index (guids, 
> 0));
> +for (uint i = 1; i < guids->len; i++)

This is not a literal. Use QString::fromLatin1 (or fromUtf8, it should be Utf8).

> FwupdBackend.cpp:223
> +/* add all Valid Resources */
> +m_resources.insert(res->name().toLower(), res);
> +  }

Usually name is a user-visible string. Would it make more sense to use 
packageName?
This way you could also skip the toLower part.

> FwupdBackend.cpp:241
> +{
> +#ifdef FWUPD_DEBUG
> +qDebug() << "No Devices Found";

Remove ifdef, fix indentation

> FwupdBackend.cpp:395
> +{
> +QEventLoop loop;
> +QTimer getTimer;

Are you sure you need an event-loop there? Let's make this non-blocking.

> FwupdBackend.cpp:755
> +{
> +return m_resources.count() ? true : false;
> +}

return !m_resources.isEmpty()

> FwupdBackend.h:83
> +
> +bool FwupdDownloadFile(const QUrl &uri,const QString &filename);
> +bool FwupdRefreshRemotes(uint cacheAge);

methods should always start with lower-case.

> FwupdNotifier.cpp:2
> +/***
> + *   Copyright © 2013 Lukas Appelhans  *
> + * *

Please remove fwupd notifier plugin altogether.

> FwupdResource.cpp:188
> +QDesktopServices d;
> +
> d.openUrl(QUrl(QStringLiteral("https://projects.kde.org/projects/extragear/sysadmin/muon";)));
> +}

?

> FwupdTransaction.h:38
> +~FwupdTransaction();
> +bool FwupdCheck();
> +bool FwupdInstall();

methods should always start lower-case, classes upperc-ase.

REPOSITORY
  R134 Discover Software Store

REVISION DETAIL
  https://phabricator.kde.org/D14050

To: abhijeet2096, apol, davidedmundson
Cc: zzag, anthonyfieroni, plasma-devel, ragreen, ixoos, Pitel, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


KDE CI: Plasma kwayland kf5-qt5 SUSEQt5.10 - Build # 32 - Still unstable!

2018-07-16 Thread CI System
BUILD UNSTABLE
 Build URL
https://build.kde.org/job/Plasma%20kwayland%20kf5-qt5%20SUSEQt5.10/32/
 Project:
Plasma kwayland kf5-qt5 SUSEQt5.10
 Date of build:
Mon, 16 Jul 2018 12:21:56 +
 Build duration:
6 min 13 sec and counting
   JUnit Tests
  Name: (root) Failed: 3 test(s), Passed: 42 test(s), Skipped: 0 test(s), Total: 45 test(s)Failed: TestSuite.kwayland-testRemoteAccessFailed: TestSuite.kwayland-testSelectionFailed: TestSuite.kwayland-testWaylandSeat
   Cobertura Report
  
   Project Coverage Summary
  
   Name
  PackagesFilesClassesLinesConditionalsCobertura Coverage Report63%
(5/8)90%
(228/254)90%
(228/254)85%
(23860/27958)52%
(9431/18049)Coverage Breakdown by Package
Name
   FilesClassesLinesConditionalsautotests.client98%
(40/41)98%
(40/41)97%
(11122/11517)49%
(5903/12105)autotests.server100%
(5/5)100%
(5/5)99%
(353/356)49%
(169/344)src.client97%
(70/72)97%
(70/72)84%
(5597/6695)64%
(1484/2308)src.compat100%
(2/2)100%
(2/2)100%
(81/81)100%
(0/0)src.server97%
(111/115)97%
(111/115)86%
(6707/7815)65%
(1875/2879)src.tools0%
(0/2)0%
(0/2)0%
(0/693)0%
(0/272)src.tools.testserver0%
(0/3)0%
(0/3)0%
(0/69)0%
(0/10)tests0%
(0/14)0%
(0/14)0%
(0/732)0%
(0/131)

KDE CI: Plasma kwayland stable-kf5-qt5 FreeBSDQt5.10 - Build # 32 - Still unstable!

2018-07-16 Thread CI System
BUILD UNSTABLE
 Build URL
https://build.kde.org/job/Plasma%20kwayland%20stable-kf5-qt5%20FreeBSDQt5.10/32/
 Project:
Plasma kwayland stable-kf5-qt5 FreeBSDQt5.10
 Date of build:
Mon, 16 Jul 2018 12:21:56 +
 Build duration:
7 min 25 sec and counting
   JUnit Tests
  Name: (root) Failed: 17 test(s), Passed: 23 test(s), Skipped: 0 test(s), Total: 40 test(s)Failed: TestSuite.kwayland-testCompositorFailed: TestSuite.kwayland-testDataDeviceFailed: TestSuite.kwayland-testDataSourceFailed: TestSuite.kwayland-testRegionFailed: TestSuite.kwayland-testRemoteAccessFailed: TestSuite.kwayland-testSelectionFailed: TestSuite.kwayland-testShmPoolFailed: TestSuite.kwayland-testSubCompositorFailed: TestSuite.kwayland-testSubSurfaceFailed: TestSuite.kwayland-testWaylandConnectionThreadFailed: TestSuite.kwayland-testWaylandRegistryFailed: TestSuite.kwayland-testWaylandServerDisplayFailed: TestSuite.kwayland-testWaylandShellFailed: TestSuite.kwayland-testWaylandSurfaceFailed: TestSuite.kwayland-testXdgShellStableFailed: TestSuite.kwayland-testXdgShellV5Failed: TestSuite.kwayland-testXdgShellV6

KDE CI: Plasma kwayland kf5-qt5 FreeBSDQt5.10 - Build # 29 - Still unstable!

2018-07-16 Thread CI System
BUILD UNSTABLE
 Build URL
https://build.kde.org/job/Plasma%20kwayland%20kf5-qt5%20FreeBSDQt5.10/29/
 Project:
Plasma kwayland kf5-qt5 FreeBSDQt5.10
 Date of build:
Mon, 16 Jul 2018 12:21:56 +
 Build duration:
7 min 7 sec and counting
   JUnit Tests
  Name: (root) Failed: 14 test(s), Passed: 26 test(s), Skipped: 0 test(s), Total: 40 test(s)Failed: TestSuite.kwayland-testCompositorFailed: TestSuite.kwayland-testDataDeviceFailed: TestSuite.kwayland-testDataSourceFailed: TestSuite.kwayland-testRegionFailed: TestSuite.kwayland-testRemoteAccessFailed: TestSuite.kwayland-testSelectionFailed: TestSuite.kwayland-testShmPoolFailed: TestSuite.kwayland-testSubCompositorFailed: TestSuite.kwayland-testSubSurfaceFailed: TestSuite.kwayland-testWaylandConnectionThreadFailed: TestSuite.kwayland-testWaylandRegistryFailed: TestSuite.kwayland-testWaylandServerDisplayFailed: TestSuite.kwayland-testWaylandShellFailed: TestSuite.kwayland-testWaylandSurface

KDE CI: Plasma kwayland stable-kf5-qt5 SUSEQt5.10 - Build # 31 - Still unstable!

2018-07-16 Thread CI System
BUILD UNSTABLE
 Build URL
https://build.kde.org/job/Plasma%20kwayland%20stable-kf5-qt5%20SUSEQt5.10/31/
 Project:
Plasma kwayland stable-kf5-qt5 SUSEQt5.10
 Date of build:
Mon, 16 Jul 2018 12:21:56 +
 Build duration:
9 min 26 sec and counting
   JUnit Tests
  Name: (root) Failed: 3 test(s), Passed: 42 test(s), Skipped: 0 test(s), Total: 45 test(s)Failed: TestSuite.kwayland-testRemoteAccessFailed: TestSuite.kwayland-testSelectionFailed: TestSuite.kwayland-testWaylandSeat
   Cobertura Report
  
   Project Coverage Summary
  
   Name
  PackagesFilesClassesLinesConditionalsCobertura Coverage Report63%
(5/8)90%
(228/254)90%
(228/254)85%
(23860/27958)52%
(9431/18049)Coverage Breakdown by Package
Name
   FilesClassesLinesConditionalsautotests.client98%
(40/41)98%
(40/41)97%
(11122/11517)49%
(5903/12105)autotests.server100%
(5/5)100%
(5/5)99%
(353/356)49%
(169/344)src.client97%
(70/72)97%
(70/72)84%
(5597/6695)64%
(1484/2308)src.compat100%
(2/2)100%
(2/2)100%
(81/81)100%
(0/0)src.server97%
(111/115)97%
(111/115)86%
(6707/7815)65%
(1875/2879)src.tools0%
(0/2)0%
(0/2)0%
(0/693)0%
(0/272)src.tools.testserver0%
(0/3)0%
(0/3)0%
(0/69)0%
(0/10)tests0%
(0/14)0%
(0/14)0%
(0/732)0%
(0/131)

D14157: Add QT_NO_KEYWORDS definition

2018-07-16 Thread Nicolas Fella
This revision was automatically updated to reflect the committed changes.
Closed by commit R115:dd15322e50ee: Add QT_NO_KEYWORDS definition (authored by 
nicolasfella).

REPOSITORY
  R115 Plasma Audio Volume Applet

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14157?vs=37864&id=37874

REVISION DETAIL
  https://phabricator.kde.org/D14157

AFFECTED FILES
  CMakeLists.txt
  src/card.cpp
  src/card.h
  src/client.cpp
  src/client.h
  src/device.h
  src/kcm/module.h
  src/maps.h
  src/module.cpp
  src/module.h
  src/profile.h
  src/pulseaudio.cpp
  src/pulseaudio.h
  src/pulseobject.h
  src/qml/globalactioncollection.cpp
  src/qml/globalactioncollection.h
  src/qml/volumefeedback.h
  src/qml/volumeosd.h
  src/server.cpp
  src/server.h
  src/sink.h
  src/sinkinput.cpp
  src/sourceoutput.cpp
  src/stream.h
  src/streamrestore.cpp
  src/streamrestore.h
  src/volumeobject.h

To: nicolasfella, drosca, broulik, davidedmundson, apol
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14147: Port from GConf to GSettings

2018-07-16 Thread Nicolas Fella
nicolasfella added a comment.


  Keyword changes were made in D14107 

REPOSITORY
  R115 Plasma Audio Volume Applet

REVISION DETAIL
  https://phabricator.kde.org/D14147

To: nicolasfella, drosca, davidedmundson
Cc: rikmills, broulik, asturmlechner, plasma-devel, ragreen, Pitel, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D14112: Fix CMakeLists.txt to work with older versions of CMake

2018-07-16 Thread Nathaniel Graham
This revision was automatically updated to reflect the committed changes.
Closed by commit R134:d8ac72b45e97: Fix CMakeLists.txt to work with older 
versions of CMake (authored by ngraham).

REPOSITORY
  R134 Discover Software Store

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14112?vs=37751&id=37878

REVISION DETAIL
  https://phabricator.kde.org/D14112

AFFECTED FILES
  libdiscover/backends/PackageKitBackend/CMakeLists.txt

To: ngraham, apol, #discover_software_store
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14000: qqc2-desktop-style: basic support for QGuiApplication-based apps (WIP/PoC)

2018-07-16 Thread David Edmundson
davidedmundson added a comment.


  Please swap qApp->style for QApplication::style as it's static.
  
  Solution is quite clever. 
  It's risky as any qstyle will always be written assuming it's a QApplication; 
but by definition the QQC2 code shields from a lot of the QWidget casting that 
would cause an issue.
  
  Worst case we crash, which is the current state.
  
  I don't think we should remove the plasma-integration guard, but this is 
surprisingly un-invasive. Meh, +1

REPOSITORY
  R858 Qt Quick Controls 2: Desktop Style

REVISION DETAIL
  https://phabricator.kde.org/D14000

To: rjvbb, #frameworks
Cc: davidedmundson, mart, broulik, plasma-devel, ragreen, Pitel, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol


D14147: Port from GConf to GSettings

2018-07-16 Thread Nicolas Fella
nicolasfella updated this revision to Diff 37887.
nicolasfella added a comment.


  - Support both GConf and GSettings

REPOSITORY
  R115 Plasma Audio Volume Applet

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14147?vs=37836&id=37887

BRANCH
  gsettings

REVISION DETAIL
  https://phabricator.kde.org/D14147

AFFECTED FILES
  CMakeLists.txt
  cmake/FindGIO.cmake
  config.h.cmake
  src/CMakeLists.txt
  src/gsettingsitem.cpp
  src/gsettingsitem.h
  src/kcm/package/contents/ui/Advanced.qml
  src/modulemanager.cpp
  src/modulemanager.h

To: nicolasfella, drosca, davidedmundson
Cc: rikmills, broulik, asturmlechner, plasma-devel, ragreen, Pitel, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D14147: Port from GConf to GSettings

2018-07-16 Thread Nicolas Fella
nicolasfella updated this revision to Diff 37888.
nicolasfella added a comment.


  - Don't require GIO
  - Fix copyright

REPOSITORY
  R115 Plasma Audio Volume Applet

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14147?vs=37887&id=37888

BRANCH
  gsettings

REVISION DETAIL
  https://phabricator.kde.org/D14147

AFFECTED FILES
  CMakeLists.txt
  cmake/FindGIO.cmake
  config.h.cmake
  src/CMakeLists.txt
  src/gsettingsitem.cpp
  src/gsettingsitem.h
  src/kcm/package/contents/ui/Advanced.qml
  src/modulemanager.cpp
  src/modulemanager.h

To: nicolasfella, drosca, davidedmundson
Cc: rikmills, broulik, asturmlechner, plasma-devel, ragreen, Pitel, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D14147: Port from GConf to GSettings

2018-07-16 Thread Nicolas Fella
nicolasfella added a comment.


  It now defaults to GSettings of found and one can pass -DUSE_GCONF to build 
it using GConf

REPOSITORY
  R115 Plasma Audio Volume Applet

REVISION DETAIL
  https://phabricator.kde.org/D14147

To: nicolasfella, drosca, davidedmundson
Cc: rikmills, broulik, asturmlechner, plasma-devel, ragreen, Pitel, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D14000: qqc2-desktop-style: basic support for QGuiApplication-based apps (WIP/PoC)

2018-07-16 Thread Alexey Min
alexeymin added a comment.


  Don't know how much offtopic will be what I'm going to say, but I recently 
ran into an issue while packaging QQC2 application in flatpak with 
org.kde.Platform//5.9 runtime. My app was functioning perfectly fine in system, 
but under flatpak it failed to start with the following message: `QWidget: 
Cannot create a QWidget without QApplication`. Of course, I had only 
QGuiApplication. But I wasn't using widgets! The only class from QtWidgets was 
QSystemTrayIcon for a nice integration with desktop. My guess was that was 
caused by platform style used in flatpak's KDE runtime may use widgets. But 
this was unexpected, without flatpak all was working. In the end I was forced 
to use QApplication, and visually saw the style used was ogr.kde.desktop.
  
  I wrote a small test QML QQC2 program with QGuiApplication and packaged it 
with flatpak with the same runtime, surprisingly, it started OK, without any 
error message. Basically, QQC2 ApplicationWindow with a button inside, not 
linked to widgets. ( https://github.com/minlexx/test_qqc2hello - repo with test 
scripts )
  
  So, if the program is linked to Qt5Widgets in any way, it has to use 
QApplication in flatpak's org.kde.Platform even if it does not use widgets? Is 
it related to this patch? Will it solve my problem? (if included in flatpak's 
kde runtime) 😄

REPOSITORY
  R858 Qt Quick Controls 2: Desktop Style

REVISION DETAIL
  https://phabricator.kde.org/D14000

To: rjvbb, #frameworks
Cc: alexeymin, davidedmundson, mart, broulik, plasma-devel, ragreen, Pitel, 
ZrenBot, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol


D14145: Show a vertical menu for the panel widget options pop-up

2018-07-16 Thread Andres Betts
abetts added a comment.


  +1

REPOSITORY
  R119 Plasma Desktop

REVISION DETAIL
  https://phabricator.kde.org/D14145

To: ngraham, #plasma
Cc: abetts, broulik, plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, 
ali-mohamed, jensreuterberg, sebas, apol, mart


D14129: Port away from string-based connects

2018-07-16 Thread Volker Krause
This revision was automatically updated to reflect the committed changes.
Closed by commit R858:e1ccdc1d7698: Port away from string-based connects 
(authored by vkrause).

REPOSITORY
  R858 Qt Quick Controls 2: Desktop Style

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14129?vs=37793&id=37891

REVISION DETAIL
  https://phabricator.kde.org/D14129

AFFECTED FILES
  plugin/kquickstyleitem.cpp

To: vkrause, apol
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D12055: Remove border around menubars

2018-07-16 Thread Vlad Zagorodniy
zzag added a comment.


  @jackg Ping.

REPOSITORY
  R98 Breeze for Gtk

BRANCH
  menubar-border

REVISION DETAIL
  https://phabricator.kde.org/D12055

To: zzag, #breeze, ngraham, jackg, #vdg
Cc: jackg, ngraham, plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, 
ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D14000: qqc2-desktop-style: basic support for QGuiApplication-based apps (WIP/PoC)

2018-07-16 Thread René J . V . Bertin
rjvbb updated this revision to Diff 37897.
rjvbb added a comment.


  Using QApplication::style()

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14000?vs=37568&id=37897

REVISION DETAIL
  https://phabricator.kde.org/D14000

AFFECTED FILES
  plugin/kquickstyleitem.cpp
  plugin/kquickstyleitem_p.h

To: rjvbb, #frameworks
Cc: alexeymin, davidedmundson, mart, broulik, plasma-devel, ragreen, Pitel, 
ZrenBot, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol


Re: Discussion for Virtual Desktops and Activities future

2018-07-16 Thread Roman Gilg
On Mon, Jul 16, 2018 at 12:44 PM David Edmundson
 wrote:
> I'm not set in stone on that, depends a bit on getting feedback about the 
> explicit problems with merging.

I think the problem is that not many people fully understand what your
proposed solution would look like in the end. I at least don't from
what I have read until now. You need to write a clear full draft on
what your proposal would look like from user POV and how the
implementation could probably be done.

Best would be imo to do this in a separate email chain, so we can
discuss the proposal alone, since this chain became already quite
long. I will also do this for two solutions I thought of (which would
keep the status quo though or extend upon it).


Virtual Desktop and Activities future: Partitioning proposal

2018-07-16 Thread Roman Gilg
The solution aims at replicating functionality that is available today
from user point of view, but tries to improve the internal structure
and implementation.

---
Motivation:
---
The idea is to keep the two different concepts of VDs and Activities,
but implement them in a more integrated way by defining Activities as
sets of VDs.

--
Terminology / Definitions:
--
Virtual Desktop (VD):
Defines a full screen area to be displayed at a certain point in time.
For simplicity we assume full screen means stretched over all
phyisical screens.

Active/activated VD:
The VD currently being displayed to the user.

Partition of a set:
A grouping of the set's elements into non-empty subsets, in such a way
that every element is included in one and only one of the subsets.

Activity set:
A partition of the set of all VDs.

Activity:
One element of the Activity set. In particular it is a subset of VDs.


Remarks:

* There can be arbitrary many VDs, but there has to be at least one.
* An Activity has at least one VD associated with.
* Activity count is in {1, VD count}.
* In our simple case: there can only be ever one VD displayed in full
screen at the same time.
* For every physical screen there must be at every point in time in
each Activity exactly one active VD covering it (in our special case
of full screen meaning stretched over all physical screens this is
obviously fulfilled).

-
KWin/KWayland implementation:
-
General:
* Only knows about VDs. Has a list of all of them.
* Broadcasts the current VD list on change (and on bind through
client) to clients.

Switching:
* KWin switches the active VD, i.e. the VD currently displayed full screen.
* KWin gets told by workspace which VD it should switch to or via
Keyboard shortcut and/or effects internally.
* Broadcasts the currently active VD on switch/bind.

Partitioning:
* VD objects have an int or string identifier , that is set
by workspace to indicate which Activities the VDs are associated with.
* VDs, whose identifier has not yet been set, are associated with a
default Activity.
* An identifier change of a VD is broadcasted to all clients, which
bound the VD interface.

-
kactivitymanagerd implementation:
-
* Listens for VD and active VD changes.
* Sets the VD identifiers in KWin.
* A switch of the active VD between VDs with different identifiers is
interpreted as an Activity switch.
* Initiates Activity switches by sending a request to change active VD
to one from the other Activity (this could be proxied by
libtaksmanager).

--
libtaskmanager implementation:
--
* Listens for VD, active VD and VD identifier changes.
* Associates internally VDs with Activities.
* Can tell KWin which VD to activate.

-
User interaction:
-
Like before, ui improvemenents still make sense though (separate proposal).


Virtual Desktop and Activities future: Tree proposal

2018-07-16 Thread Roman Gilg
The solution aims at providing all functionality today with Activities
and VDs, but extents and generalizes the concept by looking at them as
nodes of a tree structure, which can be freely traversed and
manipulated by the user.

Would not lead to lost functionality and would provide in theory a
massively more generic system of work organisation, but would be a
large change. Also while it could be a huge success, it could also
happen that a deeper tree structure in the end is needed by only very
few people (compare with example use case below).

---
Motivation:
---
The idea is to keep the two different concepts of VDs and Activities,
and expand upon this by defining them as nodes of a tree structure.

--
Terminology / Definitions:
--
Work container:
A set of graphical surfaces and additional data.

Activity Tree:
Tree structure with work containers as nodes.

Virtual Desktop (VD):
A leaf of the Activity tree. Defines a full screen area to be
displayed at a certain point in time. For simplicity we assume full
screen means stretched over all phyisical screens.

Activity:
A node of the Activity tree with height 1 (all its children are VDs).

Active/activated work container:
The work container currently being presented to the user.


Remarks:

* The term work container could be replaced with Activity and Activity
not name only nodes with height 1. I have just used given it a
different name here to make it easily comparable with the current
concept, because:
* In case the tree consists of only VDs and Activities, it represents
the current Activity and VD model.
* A VD can become an Activity by adding children. An Activity can
become a VD by removing all its children. An Activity becomes an
abstract work container with height 2 if one of its VD children
becomes an Activity.
* There can be arbitrary many work containers, but there has to be at least one.
* An Activity has at least one child.
* VD count is in {1, inf)
* Activity count is in {0, VD count}.
* In our simple case: there can only be ever one VD displayed in full
screen at the same time.
* For every physical screen there must be at every point in time in
each Activity exactly one active VD covering it (in our special case
of full screen meaning stretched over all physical screens this is
obviously fulfilled).


Example:

User A is a project manager by trade and begins a job at a new
company. She receives a company laptop for her new job, whch she can
also use at home. Therefore on the first day she creates expclitiy two
Activities "Job" and "Home" to separate job stuff from her free time
activities. For her work she needed in the past often to interact with
multiple applications, so she creates a second VD in the Job activity.
At home she normally only uses the laptop for casual surfing, so she
doesn't change the default VD count of 1 for the Home Activity.

The next day she gets informed that she has to manage projects alpha,
beta, gamma. For each of these projects she creates an Activity alpha,
beta, gamma in the Job work container (by doing that "Job" is no
longer an Activity in the above sense but is only an abstract work
container any more).

In the next week she realizes that project alpha is a rather huge
project and she can identify two subprojects xi, tau of alpha. She
puts all xi related stuff on the first VD and all tau related stuff on
the second VD in the alpha Activity. Through an ui she can now promote
these VDs to become Activities through giving a name to the VD.
Automatically for each of these new Activities two VDs are created as
their leafs.

-
KWin/KWayland implementation:
-
General:
* Knows about work containers together with the complete tree
structure of all of them.
* Broadcasts the current tree structure on change (and on bind through
client) to clients.

Switching:
* KWin switches the active work container, i.e. the work container
currently presented.
* KWin gets told by workspace which work container it should switch to
or via Keyboard shortcut and/or effects internally.
* Broadcasts the currently active work container on switch/bind.

Tree structure:
* Work container objects have a link to their parent container, that
is set by workspace.
* There is one special work container, the root work container being
at the tree root node. It always exists and can't be changed by
workspace.
* A work container without a link set is not valid, unless it's the
root work container.

-
kactivitymanagerd implementation:
-
* Listens for tree and active work container changes.
* Initiates work container switches by sending a request to change
active work container (this could be proxied by libtaksmanager).

--
libtaskmanager implementation:
--
* Listens for tree and active work

Re: Virtual Desktop and Activities future: Partitioning proposal

2018-07-16 Thread Vlad Zagorodniy
On Monday, July 16, 2018 9:07:40 PM EEST Roman Gilg wrote:
> -
> KWin/KWayland implementation:
> -
> General:
> * Only knows about VDs. Has a list of all of them.
> * Broadcasts the current VD list on change (and on bind through
> client) to clients.
> 
> Switching:
> * KWin switches the active VD, i.e. the VD currently displayed full screen.
> * KWin gets told by workspace which VD it should switch to or via
> Keyboard shortcut and/or effects internally.
> * Broadcasts the currently active VD on switch/bind.
> 
> Partitioning:
> * VD objects have an int or string identifier , that is set
> by workspace to indicate which Activities the VDs are associated with.
> * VDs, whose identifier has not yet been set, are associated with a
> default Activity.
> * An identifier change of a VD is broadcasted to all clients, which
> bound the VD interface.

Slide effect assumes that virtual desktops form a grid. Will virtual desktops 
form a grid with this approach?




D10297: Add new "Tools" button above System Monitor's process list

2018-07-16 Thread gregormi
gregormi added a comment.


  You're welcome. And: thanks for the patience to help improving this patch 
comes also from my side :).

REPOSITORY
  R111 KSysguard Library

REVISION DETAIL
  https://phabricator.kde.org/D10297

To: gregormi, #plasma, colomar, broulik, mart, hein, rkflx
Cc: apol, anthonyfieroni, andreaska, rkflx, ngraham, plasma-devel, ragreen, 
Pitel, ZrenBot, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, mart


Re: Virtual Desktop and Activities future: Partitioning proposal

2018-07-16 Thread Roman Gilg
On Mon, Jul 16, 2018 at 8:29 PM Vlad Zagorodniy  wrote:
> Slide effect assumes that virtual desktops form a grid. Will virtual desktops
> form a grid with this approach?

How VDs of the current Activity are presented to the user should be
independent of this proposal. So KWin can decide to put them in a grid
if it's necessary for some effects. Same holds for presentation of
Activities.


D14165: Handle keyboard in action selector OSD

2018-07-16 Thread Frederik Gladhorn
gladhorn created this revision.
Restricted Application added a project: Plasma.
Restricted Application added a subscriber: plasma-devel.
gladhorn requested review of this revision.

REVISION SUMMARY
  The OSD is not all that bad, but it was only usable with the mouse.
  Change it so that left-right and tab navigates and space/return confirms
  the selection.
  
  BUG: 395804

REPOSITORY
  R104 KScreen

REVISION DETAIL
  https://phabricator.kde.org/D14165

AFFECTED FILES
  kded/qml/OsdSelector.qml

To: gladhorn
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14166: Turn OsdManager into a regular class

2018-07-16 Thread Frederik Gladhorn
gladhorn created this revision.
gladhorn added a reviewer: Plasma.
Restricted Application added a project: Plasma.
Restricted Application added a subscriber: plasma-devel.
gladhorn requested review of this revision.

REVISION SUMMARY
  The OsdManager was trying to be a singleton while used from only one
  place. Simplify it.

REPOSITORY
  R104 KScreen

BRANCH
  master

REVISION DETAIL
  https://phabricator.kde.org/D14166

AFFECTED FILES
  kded/daemon.cpp
  kded/daemon.h
  kded/osdmanager.cpp
  kded/osdmanager.h
  tests/osd/osdtest.cpp
  tests/osd/osdtest.h

To: gladhorn, #plasma
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14165: Handle keyboard in action selector OSD

2018-07-16 Thread Frederik Gladhorn
gladhorn added inline comments.

INLINE COMMENTS

> OsdSelector.qml:139
> +}
> +Keys.onPressed: {
> +if (event.key === Qt.Key_Right || event.key === Qt.Key_Left) {

I'd like to hear suggestions how to do this in a nicer fashion, iterating over 
the children and checking if they are buttons and otherwise skipping them feels 
pretty ugly.

REPOSITORY
  R104 KScreen

REVISION DETAIL
  https://phabricator.kde.org/D14165

To: gladhorn, #plasma
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14167: Fix spaces in error messages

2018-07-16 Thread Frederik Gladhorn
gladhorn created this revision.
Restricted Application added a project: Plasma.
Restricted Application added a subscriber: plasma-devel.
gladhorn requested review of this revision.

REVISION SUMMARY
  Unlike qDebug there is no automatic space added in QTextStream/stderr.

REPOSITORY
  R110 KScreen Library

BRANCH
  master

REVISION DETAIL
  https://phabricator.kde.org/D14167

AFFECTED FILES
  src/doctor/doctor.cpp

To: gladhorn
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14167: Fix spaces in error messages

2018-07-16 Thread Frederik Gladhorn
gladhorn updated this revision to Diff 37901.
gladhorn added a comment.


  Added colon

REPOSITORY
  R110 KScreen Library

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14167?vs=37900&id=37901

BRANCH
  master

REVISION DETAIL
  https://phabricator.kde.org/D14167

AFFECTED FILES
  src/doctor/doctor.cpp

To: gladhorn, #plasma
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14147: Port from GConf to GSettings

2018-07-16 Thread David Rosca
drosca requested changes to this revision.
drosca added inline comments.
This revision now requires changes to proceed.

INLINE COMMENTS

> CMakeLists.txt:54
> +set(USE_GCONF FALSE)
> +endif()
>  

Those two options (gconf, gsettings) should be mutually exclusive.

> Advanced.qml:76
>  onCheckedChanged: moduleManager.combineSinks = checked;
> -enabled: moduleManager.loadedModules.indexOf("module-gconf") != 
> -1
>  visible: moduleManager.settingsSupported

This should still check for "module-gconf" or "module-gsettings" being loaded 
in pulseaudio.

The way you changed it is that it will just completely hide those options if 
appropriate module is not loaded in pulseaudio without any indication to user 
what is wrong.

REPOSITORY
  R115 Plasma Audio Volume Applet

REVISION DETAIL
  https://phabricator.kde.org/D14147

To: nicolasfella, drosca, davidedmundson
Cc: rikmills, broulik, asturmlechner, plasma-devel, ragreen, Pitel, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


Re: Virtual Desktop and Activities future: Tree proposal

2018-07-16 Thread Roman Gilg
On Mon, Jul 16, 2018 at 8:21 PM Roman Gilg  wrote:
> 
> Example:
> 
> User A is a project manager by trade and begins a job at a new
> company. She receives a company laptop for her new job, whch she can
> also use at home. Therefore on the first day she creates expclitiy two
> Activities "Job" and "Home" to separate job stuff from her free time
> activities. For her work she needed in the past often to interact with
> multiple applications, so she creates a second VD in the Job activity.
> At home she normally only uses the laptop for casual surfing, so she
> doesn't change the default VD count of 1 for the Home Activity.
>
> The next day she gets informed that she has to manage projects alpha,
> beta, gamma. For each of these projects she creates an Activity alpha,
> beta, gamma in the Job work container (by doing that "Job" is no
> longer an Activity in the above sense but is only an abstract work
> container any more).
>
> In the next week she realizes that project alpha is a rather huge
> project and she can identify two subprojects xi, tau of alpha. She
> puts all xi related stuff on the first VD and all tau related stuff on
> the second VD in the alpha Activity. Through an ui she can now promote
> these VDs to become Activities through giving a name to the VD.
> Automatically for each of these new Activities two VDs are created as
> their leafs.
I was asked to provide a diagram to visualize the example. So attached
is a picture with one showing the tree structure at the end of work
days 1, 2 and 7. Day 0 is the default setup before our project manager
does the first change. The Root Activity node is always there. Its
name has only meaning on day 0, because after the first change it is
not an Activity anymore but only a work container.

> * Can a work container with children still hold surfaces and data on
> its own, which are not associated with one of its children?
After thinking about it again I would say surfaces and data must be
associated with at least one leaf in every subtree all the time. So if
there are children on a node X and one wants to associate the data
most close to the node X as possible one of its children must be a VD,
and the data then can be associated with this VD.


D14145: Show a vertical menu for the panel widget options pop-up

2018-07-16 Thread gregormi
gregormi added a comment.


  +1; great to have also text on the Configure button (as a new Plasma user I 
thought this was just a non-clickable icon)

REPOSITORY
  R119 Plasma Desktop

REVISION DETAIL
  https://phabricator.kde.org/D14145

To: ngraham, #plasma
Cc: gregormi, abetts, broulik, plasma-devel, ragreen, Pitel, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, sebas, apol, mart


D14147: Port from GConf to GSettings

2018-07-16 Thread Nicolas Fella
nicolasfella updated this revision to Diff 37911.
nicolasfella added a comment.


  - Fail if user sets both USE_GCONF and USE_GSETTINGS
  - Restore warning when module is unloaded

REPOSITORY
  R115 Plasma Audio Volume Applet

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14147?vs=37888&id=37911

BRANCH
  gsettings

REVISION DETAIL
  https://phabricator.kde.org/D14147

AFFECTED FILES
  CMakeLists.txt
  cmake/FindGIO.cmake
  config.h.cmake
  src/CMakeLists.txt
  src/gsettingsitem.cpp
  src/gsettingsitem.h
  src/kcm/package/contents/ui/Advanced.qml
  src/modulemanager.cpp
  src/modulemanager.h

To: nicolasfella, drosca, davidedmundson
Cc: rikmills, broulik, asturmlechner, plasma-devel, ragreen, Pitel, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D14147: Port from GConf to GSettings

2018-07-16 Thread Nicolas Fella
nicolasfella updated this revision to Diff 37913.
nicolasfella added a comment.


  - Remove unneeded class declaration

REPOSITORY
  R115 Plasma Audio Volume Applet

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14147?vs=37911&id=37913

BRANCH
  gsettings

REVISION DETAIL
  https://phabricator.kde.org/D14147

AFFECTED FILES
  CMakeLists.txt
  cmake/FindGIO.cmake
  config.h.cmake
  src/CMakeLists.txt
  src/gsettingsitem.cpp
  src/gsettingsitem.h
  src/kcm/package/contents/ui/Advanced.qml
  src/modulemanager.cpp
  src/modulemanager.h

To: nicolasfella, drosca, davidedmundson
Cc: rikmills, broulik, asturmlechner, plasma-devel, ragreen, Pitel, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


Virtual Desktop and Activities future: Merging proposal

2018-07-16 Thread David Edmundson
Was asked to copy and paste my comments from the main thread into a new
thread.

Motiviation

Most people use one or the other, both offer half arsed things you expect
from some kind of logical window grouping system.

 - Users of activities don't get hot edges / effects / whatever
 - Users of VDs don't get relevant activity saving, different wallpapers,
restore, cardinality
 - It's confusing

We've been telling the people who wanted different wallpapers on VDs to use
activities *instead* of VDs for years as though it's some replacement.

The default needs to be that the majority of users get the best-of-both out
the box.

Plan:
 - KAMD provides a list of virtual desktops
 - Adding activities adds virtual desktops
 - Management of virtual desktops is always done through KAMD and relevant
KAMD UI
 - VD KCM dies
 - Managing starting/stopping activites is done in the activity switcher
 - Kwin has no knowledge of activities at a window management level
 - KAMD listens to VD changing and will update the activity as appropriate
 - Grid View/Whatever shows all virtual desktops as it does now, and hence
shows all activities
 - Pager shows all virtual desktops as it does now

Much simpler UI, much simpler code. Bam.

-

What if someone wants to have multiple VDs but have the same
favourites/tags/session restoration and stuff (Dave's middle-ground mods)

 - Implementation of providing virtual desktops is entirely up to KAMD.

Every running activity has at least one VD.  But it could be that
adding/removing an activity add/removes N virtual desktops based on some
hidden advanced config value in KAMD. That would mostly match everything
you can do in the current state. Also allows future proofing, hence
deliberately not explicitly defining it.

 - Default effects / default pager will list all VDs with no discretion or
knowledge of activity, might not be the best, but will still at least be
usable even if no ideal with no changes whatsoever. Requiring no changes
there is absolutely crucial.

 - If someone else wants to add new effects/pagers that group/filter VDs
they should be able to.
(like Michails quite cool mockups and stuff) I don't think that requires
any changes in the VD protocol to do so, and we definitely shouldn't block
on it nor make it a default.

David


D14174: Fix blur behind folderview context menus

2018-07-16 Thread David Edmundson
davidedmundson created this revision.
davidedmundson added a reviewer: Plasma.
Restricted Application added a project: Plasma.
Restricted Application added a subscriber: plasma-devel.
davidedmundson requested review of this revision.

REVISION SUMMARY
  Breeze has
  
  if (!(widget->testAttribute(Qt::WA_WState_Created) ||
  widget->internalWinId()))
  
KWindowSystem::blur(widget->winId(), ...)
  
  which makes sense as the style should not be creating surfaces in polish
  and I don't want to remove it.
  
  This is problematic with QMenu::polish which has a subtle behavioural
  change compared to QMenu::exec in that it calls ensurePolish before
  creating the surface.
  
  Plasma::ContainmentInterface accidentally has this workaround already
  for parent window setting.
  
  BUG: 395262

TEST PLAN
  Right clicked on desktop icon
  Looked amazing

REPOSITORY
  R119 Plasma Desktop

BRANCH
  davidedmundson/kcm_clock_qml

REVISION DETAIL
  https://phabricator.kde.org/D14174

AFFECTED FILES
  containments/desktop/plugins/folder/foldermodel.cpp

To: davidedmundson, #plasma
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14165: Handle keyboard in action selector OSD

2018-07-16 Thread David Edmundson
davidedmundson added inline comments.

INLINE COMMENTS

> gladhorn wrote in OsdSelector.qml:139
> I'd like to hear suggestions how to do this in a nicer fashion, iterating 
> over the children and checking if they are buttons and otherwise skipping 
> them feels pretty ugly.

Personally I would add a property currentIndex in the repeater,  have 
Keys.right/left manipulate that and then have the delegates compare that to 
their index.  
It would match a ListView pattern

> OsdSelector.qml:165
> +}
> +buttonRow.children[i].checked = true
> +return

This breaks the  checked: activeFocus binding in the delegate, which means use 
of tab after nav keys gets out of sync.

REPOSITORY
  R104 KScreen

REVISION DETAIL
  https://phabricator.kde.org/D14165

To: gladhorn, #plasma
Cc: davidedmundson, plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, 
ali-mohamed, jensreuterberg, abetts, sebas, apol, mart


D14145: Show a vertical menu for the panel widget options pop-up

2018-07-16 Thread Nathaniel Graham
ngraham updated this revision to Diff 37919.
ngraham marked 3 inline comments as done.
ngraham added a comment.


  - Address review comments
  - Make it a level 3 label to match other Headings used for panel adjustment
  - Make the buttons span the full width of the menu

REPOSITORY
  R119 Plasma Desktop

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14145?vs=37831&id=37919

BRANCH
  more-user-friendly-panel-widget-options-popup (branched from master)

REVISION DETAIL
  https://phabricator.kde.org/D14145

AFFECTED FILES
  containments/panel/contents/ui/ConfigOverlay.qml

To: ngraham, #plasma
Cc: gregormi, abetts, broulik, plasma-devel, ragreen, Pitel, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, sebas, apol, mart


D14174: Fix blur behind folderview context menus

2018-07-16 Thread Eike Hein
hein accepted this revision.
hein added a comment.
This revision is now accepted and ready to land.


  We have blurred context menus now? Wtf.
  
  But ok.

REPOSITORY
  R119 Plasma Desktop

BRANCH
  davidedmundson/kcm_clock_qml

REVISION DETAIL
  https://phabricator.kde.org/D14174

To: davidedmundson, #plasma, hein
Cc: hein, plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14167: Fix spaces in error messages

2018-07-16 Thread Frederik Gladhorn
This revision was automatically updated to reflect the committed changes.
Closed by commit R110:3e990216dca6: Fix spaces in error messages (authored by 
gladhorn).

REPOSITORY
  R110 KScreen Library

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14167?vs=37901&id=37921

REVISION DETAIL
  https://phabricator.kde.org/D14167

AFFECTED FILES
  src/doctor/doctor.cpp

To: gladhorn, #plasma, davidedmundson
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14152: Remove ref from returned QString

2018-07-16 Thread Frederik Gladhorn
gladhorn updated this revision to Diff 37922.
gladhorn added a comment.


  Re-added the const

REPOSITORY
  R104 KScreen

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14152?vs=37851&id=37922

BRANCH
  arcpatch-D14152

REVISION DETAIL
  https://phabricator.kde.org/D14152

AFFECTED FILES
  kded/osd.cpp

To: gladhorn, #plasma
Cc: zzag, plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14143: Make the action selector OSD independent of the other OSDs

2018-07-16 Thread Frederik Gladhorn
gladhorn updated this revision to Diff 37923.
gladhorn added a comment.


  re-added const

REPOSITORY
  R104 KScreen

CHANGES SINCE LAST UPDATE
  https://phabricator.kde.org/D14143?vs=37850&id=37923

BRANCH
  arcpatch-D14143_1

REVISION DETAIL
  https://phabricator.kde.org/D14143

AFFECTED FILES
  kded/osd.cpp
  kded/osd.h
  kded/qml/OsdSelector.qml

To: gladhorn, #plasma
Cc: zzag, plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, 
jensreuterberg, abetts, sebas, apol, mart


D14147: Port from GConf to GSettings

2018-07-16 Thread David Rosca
drosca added inline comments.

INLINE COMMENTS

> CMakeLists.txt:46
> +
> +if(USE_GCONF AND USE_GSETTINGS)
> +message(FATAL_ERROR "USE_GCONF and USE_GSETTINGS cannot be used at the 
> same time")

This should probably use cache variables:

  set(USE_GCONF FALSE CACHE STRING "Build with GConf")
  set(USE_GSETTINGS TRUE CACHE STRING "Build with GSettings")

> gsettingsitem.cpp:22
> +#include 
> +#include 
> +

not needed

> gsettingsitem.cpp:26
> +
> +#include "gsettingsitem.h"
> +#include "debug.h"

local includes should be the first in file

> gsettingsitem.cpp:40
> +case G_VARIANT_CLASS_STRING:
> +toReturn = QVariant(QString::fromUtf8(g_variant_get_string(gvalue, 
> NULL)));
> +break;

nullptr

> gsettingsitem.cpp:53
> +{
> +
> +// It might be hard to detect the right GVariant type from

newline

> gsettingsitem.cpp:63
> +switch (g_variant_type_peek_string(g_variant_get_type(oldValue))[0]) {
> +case G_VARIANT_CLASS_BOOLEAN:
> +newValue = g_variant_new_boolean(val.toBool());

indentation

> gsettingsitem.cpp:73
> +
> +if (newValue)
> +g_settings_set_value(m_settings, key.toLatin1().data(), newValue);

braces

> gsettingsitem.cpp:82
> +{
> +
> +m_settings = 
> g_settings_new_with_path("org.freedesktop.pulseaudio.module-group", 
> key.toLatin1().data());

newline

> gsettingsitem.cpp:91
> +g_settings_sync();
> +if (m_settings)
> +g_object_unref(m_settings);

braces

> gsettingsitem.h:34
> + public:
> +
> +explicit GSettingsItem(const QString &key, QObject *parent = nullptr);

newline

> gsettingsitem.h:41
> +
> +
> +Q_SIGNALS:

newline

> gsettingsitem.h:48
> +
> +static void settingChanged(GSettings *settings, const gchar *key, gpointer 
> data)
> +{

move to .cpp

> modulemanager.cpp:93
> +#if USE_GCONF || USE_GSETTINGS
>  
> +m_combineSinks = new ConfigModule(QStringLiteral("combine"), 
> QStringLiteral("module-combine"), this);

newline

REPOSITORY
  R115 Plasma Audio Volume Applet

REVISION DETAIL
  https://phabricator.kde.org/D14147

To: nicolasfella, drosca, davidedmundson
Cc: rikmills, broulik, asturmlechner, plasma-devel, ragreen, Pitel, ZrenBot, 
lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart