1. 01 Apr, 2019 2 commits
  2. 31 Mar, 2019 1 commit
  3. 30 Mar, 2019 1 commit
  4. 29 Mar, 2019 17 commits
  5. 28 Mar, 2019 1 commit
  6. 26 Mar, 2019 2 commits
  7. 22 Mar, 2019 1 commit
  8. 20 Mar, 2019 12 commits
    • Robert Ancell's avatar
      applications: Make async file operations cancellable · 3565216b
      Robert Ancell authored
      The previous operations could crash if the panel was changed during an operation.
    • Robert Ancell's avatar
    • Robert Ancell's avatar
      applications: Fix wrong IDs being passed to portal permission store · a856740d
      Robert Ancell authored
      There were two cases of the app ID being used instead of the Flatpak ID.
    • Benjamin Berg's avatar
      display: Ensure configuration has the expected type · b26a8bde
      Benjamin Berg authored
      In almost all cases, the configuration will be "valid" in the sense that
      g-c-c can represent it in the UI. However, there are cases like
      mirroring setups with three monitors that we do not allow.
      In case that the user has such a configuration, ensure that the
      configuration we represent is actually valid according to our
      expectations. This should not affect normal use cases, but allows users
      to recover again if the configuration is broken for some reason.
      Fixes #383
    • Benjamin Berg's avatar
      display: Ensure at least one display is enabled · f45dcff8
      Benjamin Berg authored
      When the user has more than two monitors, then they can disable each
      monitor separately. If the user creates an invalid configuration because
      they disabled the last monitor, then enable a different one immediately.
    • Benjamin Berg's avatar
      display: Simplify configuration type and UI selection logic · defbcebf
      Benjamin Berg authored
      The new logic selects a single configuration type rather than detecting
      which types can be considered valid. This simplifies the UI rebuilding
      somewhat, but also changes some internal behaviour. We will now always
      be in the correct mode internally, even if the UI may not represent this
      change (i.e. with more than two monitors it always looks the same).
    • Benjamin Berg's avatar
      display: Add unusable monitors to dropdown and disable switch for them · b2f1d489
      Benjamin Berg authored
      We should show unusable monitors in the monitor selection drop-down
      list. So always add them to the combobox and add the code to make the
      switch to enable them insensitive.
    • Benjamin Berg's avatar
      display: Only enforce single mode when desired by UI · e387b3bb
      Benjamin Berg authored
      We should only enforce single mode, when we have exactly two monitors
      and the two button UI is used to switch between them in single mode.
      Move the code to ensure the single configuration into the relevant
      callback handler, rather than trying to solve this globally.
    • Benjamin Berg's avatar
      display: Make rebuilding variable a counter · 98d20659
      Benjamin Berg authored
      We need to also set rebuilding while updating some other UI elements.
      Make it into a counter to allow for recursive setting.
      Note that additional checks for rebuilding will be added in later
    • Benjamin Berg's avatar
      display: Reset resolution when switching configuration types · 21bb6416
      Benjamin Berg authored
      It generally makes more sense to reset the resolution of a monitor after
      we switch configuration types. The main case where this is relevant is
      switching from a mirror configuration (CLONE) to either join or single.
      In this case, higher resolutions for monitors may become available.
      Note that this might be annoying to some users, because there may be
      monitors reporting a lower "preferred" resolution than the highest
      supported resolution. There is little we can do though, as always
      selecting the highest resolution doesn't seem like a much better
    • Benjamin Berg's avatar
      display: Prevent error when serializing invalid configuration · ae22f72c
      Benjamin Berg authored
      If no monitors are enabled, then the variant would end up with an
      invalid variant type, causing a crash later on. This case only happened
      due to other bugs (i.e. in principle we should never send a
      configuration without any monitors to the server).
      Prevent the serialization error by specifying the correct type for the
      builder, therefore potentially preventing a crash in such a corner case.
    • Benjamin Berg's avatar
      display: Ensure we have a primary monitor after all were disabled · 0c4e84e4
      Benjamin Berg authored
      When enabling the first monitor, we need to select it as primary as we
      otherwise end up without a primary monitor (rendering the configuration
      invalid). "Unsetting" the NULL primary monitor effectively causes the
      first and only available monitor to become the primary, while not doing
      anything if we have a primary monitor.
  9. 18 Mar, 2019 3 commits