Flutter Linux Embedder
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
fl_settings.cc
Go to the documentation of this file.
1 // Copyright 2013 The Flutter Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
8 
9 G_DEFINE_INTERFACE(FlSettings, fl_settings, G_TYPE_OBJECT)
10 
11 enum {
14 };
15 
16 static guint signals[LAST_SIGNAL];
17 
18 static void fl_settings_default_init(FlSettingsInterface* iface) {
19  /**
20  * FlSettings::changed:
21  * @settings: an #FlSettings
22  *
23  * This signal is emitted after the settings have been changed.
24  */
26  g_signal_new("changed", G_TYPE_FROM_INTERFACE(iface), G_SIGNAL_RUN_LAST,
27  0, NULL, NULL, NULL, G_TYPE_NONE, 0);
28 }
29 
31  return FL_SETTINGS_GET_IFACE(self)->get_clock_format(self);
32 }
33 
35  return FL_SETTINGS_GET_IFACE(self)->get_color_scheme(self);
36 }
37 
38 gboolean fl_settings_get_enable_animations(FlSettings* self) {
39  return FL_SETTINGS_GET_IFACE(self)->get_enable_animations(self);
40 }
41 
42 gboolean fl_settings_get_high_contrast(FlSettings* self) {
43  return FL_SETTINGS_GET_IFACE(self)->get_high_contrast(self);
44 }
45 
46 gdouble fl_settings_get_text_scaling_factor(FlSettings* self) {
47  return FL_SETTINGS_GET_IFACE(self)->get_text_scaling_factor(self);
48 }
49 
50 void fl_settings_emit_changed(FlSettings* self) {
51  g_return_if_fail(FL_IS_SETTINGS(self));
52  g_signal_emit(self, signals[SIGNAL_CHANGED], 0);
53 }
54 
55 FlSettings* fl_settings_new() {
56  g_autoptr(FlSettingsPortal) portal = fl_settings_portal_new();
57 
58  g_autoptr(GError) error = nullptr;
59  if (!fl_settings_portal_start(portal, &error)) {
60  g_debug("XDG desktop portal settings unavailable: %s", error->message);
61  return fl_gnome_settings_new();
62  }
63 
64  return FL_SETTINGS(g_object_ref(portal));
65 }
FlSettings * fl_gnome_settings_new()
G_DEFINE_INTERFACE(FlKeyboardViewDelegate, fl_keyboard_view_delegate, G_TYPE_OBJECT) static void fl_keyboard_view_delegate_default_init(FlKeyboardViewDelegateInterface *iface)
const uint8_t uint32_t uint32_t GError ** error
gboolean fl_settings_get_high_contrast(FlSettings *self)
Definition: fl_settings.cc:42
static void fl_settings_default_init(FlSettingsInterface *iface)
Definition: fl_settings.cc:18
static guint signals[LAST_SIGNAL]
Definition: fl_settings.cc:16
gdouble fl_settings_get_text_scaling_factor(FlSettings *self)
Definition: fl_settings.cc:46
@ LAST_SIGNAL
Definition: fl_settings.cc:13
@ SIGNAL_CHANGED
Definition: fl_settings.cc:12
void fl_settings_emit_changed(FlSettings *self)
Definition: fl_settings.cc:50
gboolean fl_settings_get_enable_animations(FlSettings *self)
Definition: fl_settings.cc:38
FlColorScheme fl_settings_get_color_scheme(FlSettings *self)
Definition: fl_settings.cc:34
FlClockFormat fl_settings_get_clock_format(FlSettings *self)
Definition: fl_settings.cc:30
FlSettings * fl_settings_new()
Definition: fl_settings.cc:55
FlColorScheme
Definition: fl_settings.h:33
FlClockFormat
Definition: fl_settings.h:21
FlSettingsPortal * fl_settings_portal_new()
gboolean fl_settings_portal_start(FlSettingsPortal *self, GError **error)