From kwin Thu Jan 03 20:35:17 2013 From: =?utf-8?q?Thomas_L=C3=BCbking?= Date: Thu, 03 Jan 2013 20:35:17 +0000 To: kwin Subject: Re: Review Request: Abort color correction initialization and disable it in case of errors Message-Id: <20130103203517.3222.98752 () vidsolbach ! de> X-MARC-Message: https://marc.info/?l=kwin&m=135724532831072 MIME-Version: 1 Content-Type: multipart/mixed; boundary="--===============0234084665477866862==" --===============0234084665477866862== Content-Type: multipart/alternative; boundary="===============5520133240992314627==" --===============5520133240992314627== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable > On Dec. 23, 2012, 8:55 a.m., Martin Gr=C3=A4=C3=9Flin wrote: > > kwin/scene_opengl.cpp, lines 583-587 > > > > > > why do you not define this slot in Options? Oh and please add a: > > // TODO: Qt5: replace by lambda > = > Casian Andrei wrote: > It looks to me like it does not fit in Options - there are no slots f= or errors there, I wouldn't know even where to place it there. SceneOpenGL2= owns the color correction object, so it makes sense for it to handle the e= rror. > = > With that lambda feature, this slot will dissappear with Qt5 anyway :) Q_SLOTS: void disableColorCorrection(); under all those Q_SIGNALS: and above private. The reason that there's no slot atm. is that we don't alter the *options* a= t runtime at all. I'd say the scene should know (and tell on request dbug dbus interface requ= est pending ...) whether it's color corrected and initiallize that from the= options and not touch options. @Martin The pointer should (in this context) maybe ro to stress that? - Thomas ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://git.reviewboard.kde.org/r/107754/#review23884 ----------------------------------------------------------- On Jan. 3, 2013, 7:04 p.m., Casian Andrei wrote: > = > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://git.reviewboard.kde.org/r/107754/ > ----------------------------------------------------------- > = > (Updated Jan. 3, 2013, 7:04 p.m.) > = > = > Review request for kwin, Thomas L=C3=BCbking and Martin Gr=C3=A4=C3=9Flin. > = > = > Description > ------- > = > Abort color correction initialization and disable it in case of errors > = > Checks are now performed for GL errors and in case of errors everythi= ng > is aborted. The error handling mechanism introduced for this purpose > somewhat improves the color correction code. > = > Tracked down and fixed a GL invalid operation when first attempting to se= t the lookup texture uniform for color correction. > = > = > Diffs > ----- > = > kwin/libkwineffects/kwinglcolorcorrection.h ec080c0 = > kwin/libkwineffects/kwinglcolorcorrection.cpp b5127e6 = > kwin/libkwineffects/kwinglcolorcorrection_p.h f54aa49 = > kwin/scene_opengl.h e6142c0 = > kwin/scene_opengl.cpp 147a248 = > = > Diff: http://git.reviewboard.kde.org/r/107754/diff/ > = > = > Testing > ------- > = > Tested when a GL invalid operation error occurs - color correction is dis= abled and will not be enabled again because of the error. However, the chec= k box in KCM remains checked - but this is ok I think. > = > Tested when no GL invalid operation is detected when doing color correcti= on stuff. Everything works fine from my point of view. > = > = > Thanks, > = > Casian Andrei > = > --===============5520133240992314627== Content-Type: text/html; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable
This is an automatically generated e-mail. To reply, visit: http://git.revie= wboard.kde.org/r/107754/

On December 23rd, 2012, 8:55 a.m., Martin G= r=C3=A4=C3=9Flin wrote:

= = =
kwin/scene_opengl.cpp (Diff revision 3)
void SceneOpenGL2::slotColorCorrectionError()
582
void SceneOpenGL2::slotColo=
rCorrectionError()
583
{
584
    // This should also tri=
gger slotColorCorrectedChanged()
585
    options->setColorCorrected(false);
586
}
why do yo=
u not define this slot in Options? Oh and please add a:
// TODO: Qt5: replace by lambda

On January 3rd, 2013, 7:04 p.m., Casian Andrei wrote:

It looks =
to me like it does not fit in Options - there are no slots for errors there=
, I wouldn't know even where to place it there. SceneOpenGL2 owns the c=
olor correction object, so it makes sense for it to handle the error.

With that lambda feature, this slot will dissappear with Qt5 anyway :)
Q_SLOTS:
void disableColorCorrection();

under all those Q_SIGNALS: and above private.

The reason that there's no slot atm. is that we don't alter the *op=
tions* at runtime at all.

I'd say the scene should know (and tell on request dbug dbus interface =
request pending ...) whether it's color corrected and initiallize that =
from the options and not touch options.

@Martin
The pointer should (in this context) maybe ro to stress that?

- Thomas


On January 3rd, 2013, 7:04 p.m., Casian Andrei wrote:

Review request for kwin, Thomas L=C3=BCbking and Martin Gr=C3=A4=C3=9F= lin.
By Casian Andrei.

Updated Jan. 3, 2013, 7:04 p.m.

Descripti= on

Abort color correction initialization and disable it in case=
 of errors
    =

    Checks are now performed for GL errors and in case of errors everything
    is aborted. The error handling mechanism introduced for this purpose
    somewhat improves the color correction code.

Tracked down and fixed a GL invalid operation when first attempting to set =
the lookup texture uniform for color correction.

Testing <= /h1>
Tested when a GL invalid operation error occurs - color corr=
ection is disabled and will not be enabled again because of the error. Howe=
ver, the check box in KCM remains checked - but this is ok I think.

Tested when no GL invalid operation is detected when doing color correction=
 stuff. Everything works fine from my point of view.

Diffs=

  • kwin/libkwineffects/kwinglcolorcorrection.h (b5127e6)
  • kwin/libkwineffects/kwinglcolorcorrection_p.h (f54aa49)
  • kwin/scene_opengl.h (e6142c0)
  • kwin/scene_opengl.cpp (147a248)

View Diff

--===============5520133240992314627==-- --===============0234084665477866862== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ kwin mailing list kwin@kde.org https://mail.kde.org/mailman/listinfo/kwin --===============0234084665477866862==--