1. 29 May, 2018 2 commits
    • Georges Basile Stavracas Neto's avatar
      window: Delegate model creation to CcApplication · 489a7ae5
      Georges Basile Stavracas Neto authored
      In order be able to modify panel information statically,
      we need to have access to the CcShellModel from static
      functions. CcApplication, thus, is a better place for the
      model to live, since we can access it outside any scope
      using g_application_get_default().
      
      It also makes sense from the modeling point of view, since
      the model is not tied to the shell anymore.
      489a7ae5
    • Georges Basile Stavracas Neto's avatar
      window: Remove remaining overview mentions · 52469cec
      Georges Basile Stavracas Neto authored
      There is no overview anymore -- Settings is always
      visualizing a panel at any given time.
      
      I just noticed that the Alt+Left shortcut was always
      broken too. This will be fixed in a following commit.
      52469cec
  2. 07 Apr, 2018 2 commits
    • Georges Basile Stavracas Neto's avatar
      log: Reimplement logging and debugging · 1187f147
      Georges Basile Stavracas Neto authored
      This commit replaces the old rudimentary log handler
      by a shinier version of it. It also introduces the
      debugging macros that I usually add to the apps,
      including the CC_TRACE_MSG() macro for tracing.
      1187f147
    • Georges Basile Stavracas Neto's avatar
      object-storage: Introduce CcObjectStorage · 083e7bda
      Georges Basile Stavracas Neto authored
      CcObjectStorage is a cache for GObjects. It is meant to
      store objects that are too expensive to be often created,
      such as NMClient, GoaClient or D-Bus proxies.
      
      CcObjectStorage has a very strict usage pattern. It is a
      programming error to add an object that is already stored,
      and so it is to retrieve an object that was not stored.
      Stored objects are meant to be kept alive during the whole
      lifetime of GNOME Settings, and CcObjectStorage takes a
      reference on every stored object to achieve that.
      
      If objects are destroyed while they are cached, it means
      we have a reference mismanagement somewhere. In this sense,
      CcObjectStorage will act Sam Sheepdog taking care of sneaky
      wolves trying to steal their sheep-references.
      
      Next patches will make various panels and objects around
      GNOME Settings adopt this new API, and make sure they always
      disconnect when destroyed.
      083e7bda
  3. 07 Mar, 2018 3 commits
  4. 21 Jan, 2018 4 commits
  5. 17 Jan, 2018 1 commit
  6. 11 Dec, 2015 1 commit
  7. 16 Jul, 2015 10 commits
  8. 08 Jan, 2015 1 commit
  9. 06 Jan, 2015 1 commit
  10. 13 Jan, 2014 1 commit
  11. 18 May, 2013 1 commit
  12. 17 May, 2013 1 commit
  13. 12 Apr, 2013 1 commit
  14. 03 Apr, 2013 3 commits
    • Emanuele Aina's avatar
      shell: Expose panel launching with DBus-activation · ab0576f1
      Emanuele Aina authored
      Turn Control Center in a DBus-activable service and export a
      'launch-panel' GAction which accepts a tuple containing the id of the
      desired panel and its parameters as a GVariant array.
      
      The snippet below show how the custom shortcuts section of the keyboard
      panel can be invoked by a external programs through DBus:
      
      GVariantBuilder *flags = g_variant_builder_new (G_VARIANT_TYPE_VARDICT);
      GVariantBuilder *params = g_variant_builder_new (G_VARIANT_TYPE ("av"));
      g_variant_builder_add (params, "v", g_variant_builder_end (flags));
      g_variant_builder_add (params, "v", g_variant_new_string ("shortcuts"));
      g_variant_builder_add (params, "v", g_variant_new_string ("custom"));
      GVariant *v = g_variant_new ("(s@av)", "keyboard", g_variant_builder_end (params));
      
      GApplication *gnomecc = g_application_new (id, G_APPLICATION_IS_LAUNCHER);
      if (!g_application_register (gnomecc, NULL, &error))
        g_error ("Failed to register launcher for %s: %s", id, error->message);
      g_action_group_activate_action (G_ACTION_GROUP (gnomecc), "launch-panel", v);
      
      https://bugzilla.gnome.org/show_bug.cgi?id=696054
      ab0576f1
    • Emanuele Aina's avatar
      shell: Let panels have their own commandline flags · 31a8a994
      Emanuele Aina authored
      Add a class method to CcPanel to get a GOptionGroup which will be added
      to the main commandline parser. This gives panels the chance to have
      commandline "--flags" in addition to the already available parameters.
      
      This changes changes the way parameters are passed to panels: the first
      entry in the GVariant array is always the a{sv} dictionary of
      commandline flags, followed by the remaining free-form arguments.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=696054
      31a8a994
    • Emanuele Aina's avatar
      shell: Use GVariant to convey panel arguments instead of a string array · 9977bb20
      Emanuele Aina authored
      By using a GVariant of type "av" we can potentially pass more structured
      data to panels, which will become relevant with the ability to invoke
      them by GAction-based DBus-activation introduced in the following patch.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=696054
      9977bb20
  15. 18 Feb, 2013 4 commits
  16. 10 Jan, 2013 1 commit
  17. 08 Jan, 2013 1 commit
  18. 02 Jan, 2013 1 commit
  19. 03 Dec, 2012 1 commit