1. 04 Mar, 2021 1 commit
  2. 02 Mar, 2021 3 commits
  3. 01 Mar, 2021 1 commit
  4. 23 Feb, 2021 3 commits
    • Vlad Zahorodnii's avatar
      Drop QtScript dependency · bd4d17b3
      Vlad Zahorodnii authored
      QtScript is not used anywhere anymore plus it's dropped in Qt 6.
      bd4d17b3
    • David Edmundson's avatar
      [scripting] Port ScriptedEffects to QJSEngine · ae6e6dc6
      David Edmundson authored and Vlad Zahorodnii's avatar Vlad Zahorodnii committed
      Summary:
      QScriptEngine is deprecated for years and suffers bitrot.
      Plasma hit one super major bug with it in 5.11.0 and has now ported
      away.
      
      Main porting notes:
      - creating low level functions no longer exists
      The old global functions are exposed on the ScriptedEffect instance
      and then the QJSValue wrappers of the globalObject are modified to
      trampoline the methods at a wrapper level.
      
      - We can then use QJSEngine to automatically do argument error checking
      rather than unmarshalling a QJSValue manually which significantly
      reduces a lot of code.
      
      - We can't make FPX2 a native type, so these are QJSValue args and
      unboxed there.
      
      Long term I want overloads for animate that take int/QSize/QPoint which
      are native JS types, but that might be an API break.
      
      Test Plan:
      Hopefully comprehensive unit test which passes
      Tested fade/fadeDesktop manually.
      
      It's a very invasive change, so I expect some things will be broke
      please help test any JS effects.
      
      Reviewers: #kwin, mart, fvogt
      
      Subscribers: fvogt, zzag, kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D14536
      ae6e6dc6
    • Vlad Zahorodnii's avatar
      scripting: Port Script to QJSEngine · 566d4aa2
      Vlad Zahorodnii authored
      QtScript is not well maintained and deprecated in favor of QJSEngine.
      566d4aa2
  5. 11 Feb, 2021 1 commit
    • Vlad Zahorodnii's avatar
      xwayland: Manually create sockets · 9f0f4527
      Vlad Zahorodnii authored
      This provides kwin greater control over how X11 sockets are created for
      Xwayland. For example, it can be used to ensure that the DISPLAY remains
      the same across Xwayland server restarts or launching Xwayland on
      demand.
      
      Even though -listen <fd> option is deprecated, we still pass it because
      older versions of Xwayland may not have the -listenfd option.
      9f0f4527
  6. 10 Feb, 2021 1 commit
    • Vlad Zahorodnii's avatar
      Move source code to src/ directory · 93e0265e
      Vlad Zahorodnii authored
      Once in a while, we receive complaints from other fellow KDE developers
      about the file organization of kwin. This change addresses some of those
      complaints by moving all of source code in a separate directory, src/,
      thus making the project structure more traditional. Things such as tests
      are kept in their own toplevel directories.
      
      This change may wreak havoc on merge requests that add new files to kwin,
      but if a patch modifies an already existing file, git should be smart
      enough to figure out that the file has been relocated.
      
      We may potentially split the src/ directory further to make navigating
      the source code easier, but hopefully this is good enough already.
      93e0265e