Merge branch 'master' into felix/tiling-mode

This commit is contained in:
Jeremy Wootten 2021-06-23 17:59:04 +01:00 committed by GitHub
commit e5b9b0008c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
25 changed files with 582 additions and 480 deletions

View File

@ -23,3 +23,15 @@ jobs:
meson build
ninja -C build
ninja -C build install
lint:
runs-on: ubuntu-latest
container:
image: valalang/lint
steps:
- uses: actions/checkout@v1
- name: Lint
run: io.elementary.vala-lint -d .

View File

@ -18,9 +18,9 @@ You'll need the following dependencies:
* libglib2.0-dev (>= 2.44)
* libgnome-desktop-3-dev
* libgranite-dev (>= 5.4.0)
* libgtk-3-dev (>= 3.4.0)
* libmutter-0-dev (>= 3.23.90) | libmutter-dev (>= 3.14.4)
* libplank-dev (>= 0.10.9)
* libgtk-3-dev (>= 3.10.0)
* libmutter-6-dev (>= 3.35.1) | libmutter-dev (>= 3.18.3)
* libplank-dev (>= 0.11.0)
* libxml2-utils
* valac (>= 0.28.0)

View File

@ -293,7 +293,7 @@ namespace Gala {
try {
AppInfo.launch_default_for_uri ("settings://desktop/appearance/wallpaper", null);
} catch (Error e) {
var message_dialog = new Granite.MessageDialog.with_image_from_icon_name (
var message_dialog = new Granite.MessageDialog.with_image_from_icon_name (
"Failed to Open Wallpaper Settings",
"Unable to open System Settings. A handler for the `settings://` URI scheme must be installed.",
"dialog-error",
@ -310,7 +310,7 @@ namespace Gala {
try {
AppInfo.launch_default_for_uri ("settings://display", null);
} catch (Error e) {
var message_dialog = new Granite.MessageDialog.with_image_from_icon_name (
var message_dialog = new Granite.MessageDialog.with_image_from_icon_name (
"Failed to Open Display Settings",
"Unable to open System Settings. A handler for the `settings://` URI scheme must be installed.",
"dialog-warning",
@ -327,7 +327,7 @@ namespace Gala {
try {
AppInfo.launch_default_for_uri ("settings://", null);
} catch (Error e) {
var message_dialog = new Granite.MessageDialog.with_image_from_icon_name (
var message_dialog = new Granite.MessageDialog.with_image_from_icon_name (
"Failed to Open System Settings",
"Unable to open System Settings. A handler for the `settings://` URI scheme must be installed.",
"dialog-warning",
@ -353,7 +353,7 @@ namespace Gala {
// Move the menu 1 pixel outside of the pointer or else it closes instantly
// on the mouse up event
py = (y / scale) + 1;
push_in = true;
push_in = false;
}, 3, Gdk.CURRENT_TIME);
}
}

View File

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: gala\n"
"Report-Msgid-Bugs-To: https://github.com/elementary/gala/issues\n"
"POT-Creation-Date: 2021-03-29 11:40+0000\n"
"PO-Revision-Date: 2021-03-30 03:27+0000\n"
"PO-Revision-Date: 2021-05-21 19:39+0000\n"
"Last-Translator: Uwe S <saabisto@gmx.de>\n"
"Language-Team: German <https://l10n.elementary.io/projects/desktop/gala/de/>"
"\n"
@ -104,19 +104,19 @@ msgstr "Systemeinstellungen …"
#: data/gala.appdata.xml.in:7
msgid "Multitasking &amp; Window Management"
msgstr "Multitasking &amp; Fenstermanagement"
msgstr "Arbeitsflächen- &amp; Fensterverwaltung"
#: data/gala.appdata.xml.in:8
msgid "A window &amp; compositing manager for Pantheon"
msgstr "Ein Fenster &amp; Compositing Manager für Pantheon"
msgstr "Eine Fenster- &amp; Compositing-Verwaltung für Pantheon"
#: data/gala.appdata.xml.in:10
msgid ""
"A window &amp; compositing manager based on libmutter and designed by "
"elementary for use with Pantheon."
msgstr ""
"Ein Fenster &amp; Compositing Manager basierend auf libmutter, entwickelt "
"von elementary für die Verwendung mit Pantheon."
"Eine Fenster- &amp; Compositing-Verwaltung basierend auf libmutter, "
"entwickelt von elementary für die Verwendung mit Pantheon."
#: data/gala.appdata.xml.in:15 data/gala.appdata.xml.in:26
#: data/gala.appdata.xml.in:36 data/gala.appdata.xml.in:45
@ -205,7 +205,7 @@ msgstr "Alle offenen Fenster und Arbeitsflächen anzeigen"
#: data/gala-multitaskingview.desktop.in:7
msgid "multitasking-view"
msgstr "Übersicht der Arbeitsflächen"
msgstr "multitasking-view"
#: data/gala-other.desktop.in:4
msgid "Other"

View File

@ -8,10 +8,10 @@ msgstr ""
"Project-Id-Version: gala\n"
"Report-Msgid-Bugs-To: https://github.com/elementary/gala/issues\n"
"POT-Creation-Date: 2021-03-29 11:40+0000\n"
"PO-Revision-Date: 2021-03-08 18:26+0000\n"
"PO-Revision-Date: 2021-05-19 19:48+0000\n"
"Last-Translator: Adolfo Jayme Barrientos <fitojb@ubuntu.com>\n"
"Language-Team: Spanish <https://l10n.elementary.io/projects/desktop/gala/es/"
">\n"
"Language-Team: Spanish <https://l10n.elementary.io/projects/desktop/gala/es/>"
"\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -80,7 +80,7 @@ msgstr "Cerrar"
#: daemon/MenuDaemon.vala:223
msgid "Untile"
msgstr ""
msgstr "Deshacer mosaico"
#: daemon/MenuDaemon.vala:223
msgid "Unmaximize"

View File

@ -8,16 +8,16 @@ msgstr ""
"Project-Id-Version: gala 3.2.0\n"
"Report-Msgid-Bugs-To: https://github.com/elementary/gala/issues\n"
"POT-Creation-Date: 2021-03-29 11:40+0000\n"
"PO-Revision-Date: 2020-11-22 15:15+0000\n"
"Last-Translator: Prachi Joshi <josprachi@yahoo.com>\n"
"Language-Team: Marathi <https://l10n.elementary.io/projects/desktop/gala/mr/"
">\n"
"PO-Revision-Date: 2021-05-21 09:46+0000\n"
"Last-Translator: Corentin Noël <corentin@elementary.io>\n"
"Language-Team: Marathi <https://l10n.elementary.io/projects/desktop/gala/mr/>"
"\n"
"Language: mr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 3.9.1\n"
"X-Generator: Weblate 4.4.2\n"
#: src/ScreenshotManager.vala:243
msgid "Screenshots"
@ -205,7 +205,7 @@ msgstr "सर्व खुल्या विंडो आणि कार्
#: data/gala-multitaskingview.desktop.in:7
msgid "multitasking-view"
msgstr "मल्टीटास्किंग-व्ह्यू"
msgstr "multitasking-view"
#: data/gala-other.desktop.in:4
msgid "Other"

View File

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: noise\n"
"Report-Msgid-Bugs-To: https://github.com/elementary/gala/issues\n"
"POT-Creation-Date: 2021-03-29 11:40+0000\n"
"PO-Revision-Date: 2021-03-05 12:28+0000\n"
"PO-Revision-Date: 2021-06-03 15:18+0000\n"
"Last-Translator: Allan Nordhøy <epost@anotheragency.no>\n"
"Language-Team: Norwegian Bokmål <https://l10n.elementary.io/projects/desktop/"
"gala/nb/>\n"
@ -80,7 +80,7 @@ msgstr "Lukk"
#: daemon/MenuDaemon.vala:223
msgid "Untile"
msgstr ""
msgstr "Opphev flislegging"
#: daemon/MenuDaemon.vala:223
msgid "Unmaximize"

View File

@ -8,8 +8,8 @@ msgstr ""
"Project-Id-Version: noise\n"
"Report-Msgid-Bugs-To: https://github.com/elementary/gala/issues\n"
"POT-Creation-Date: 2021-03-29 11:40+0000\n"
"PO-Revision-Date: 2021-05-05 10:46+0000\n"
"Last-Translator: Harrison Xu <xuhaifeng1998@gmail.com>\n"
"PO-Revision-Date: 2021-06-20 11:45+0000\n"
"Last-Translator: imgradeone Yan <imgradeone@outlook.com>\n"
"Language-Team: Chinese (Simplified) <https://l10n.elementary.io/projects/"
"desktop/gala/zh_Hans/>\n"
"Language: zh_CN\n"
@ -71,10 +71,8 @@ msgid "Move to Workspace Right"
msgstr "移至右侧工作区"
#: daemon/MenuDaemon.vala:176
#, fuzzy
#| msgid "Screenshots"
msgid "Take Screenshot"
msgstr "屏幕截图"
msgstr "截屏"
#: daemon/MenuDaemon.vala:184
msgid "Close"
@ -82,7 +80,7 @@ msgstr "关闭"
#: daemon/MenuDaemon.vala:223
msgid "Untile"
msgstr ""
msgstr "取消平铺"
#: daemon/MenuDaemon.vala:223
msgid "Unmaximize"

View File

@ -116,11 +116,11 @@ namespace Gala {
SettingsHashCache settings_hash_cache;
// list of keys that are actually relevant for us
const string[] options = { "color-shading-type", "picture-opacity",
const string[] OPTIONS = { "color-shading-type", "picture-opacity",
"picture-options", "picture-uri", "primary-color", "secondary-color" };
void settings_changed (string key) {
if (!(key in options))
if (!(key in OPTIONS))
return;
var current = get_current_settings_hash_cache ();

View File

@ -151,7 +151,7 @@ namespace Gala {
throw new DBusError.INVALID_ARGS ("Invalid rectangle specified");
double variance = 0, mean = 0,
rTotal = 0, gTotal = 0, bTotal = 0;
r_total = 0, g_total = 0, b_total = 0;
ulong paint_signal_handler = 0;
paint_signal_handler = effect.done_painting.connect (() => {
@ -167,8 +167,8 @@ namespace Gala {
double mean_squares = 0;
double pixel = 0;
double max, min, score, delta, scoreTotal = 0,
rTotal2 = 0, gTotal2 = 0, bTotal2 = 0;
double max, min, score, delta, score_total = 0,
r_total2 = 0, g_total2 = 0, b_total2 = 0;
// code to calculate weighted average color is copied from
// plank's lib/Drawing/DrawingService.vala average_color()
@ -190,52 +190,52 @@ namespace Gala {
// prefer colored pixels over shades of grey
score = SATURATION_WEIGHT * (delta == 0 ? 0.0 : delta / max);
rTotal += score * r;
gTotal += score * g;
bTotal += score * b;
scoreTotal += score;
r_total += score * r;
g_total += score * g;
b_total += score * b;
score_total += score;
rTotal += r;
gTotal += g;
bTotal += b;
r_total += r;
g_total += g;
b_total += b;
mean += pixel;
mean_squares += pixel * pixel;
}
}
scoreTotal /= size;
bTotal /= size;
gTotal /= size;
rTotal /= size;
score_total /= size;
b_total /= size;
g_total /= size;
r_total /= size;
if (scoreTotal > 0.0) {
bTotal /= scoreTotal;
gTotal /= scoreTotal;
rTotal /= scoreTotal;
if (score_total > 0.0) {
b_total /= score_total;
g_total /= score_total;
r_total /= score_total;
}
bTotal2 /= size * uint8.MAX;
gTotal2 /= size * uint8.MAX;
rTotal2 /= size * uint8.MAX;
b_total2 /= size * uint8.MAX;
g_total2 /= size * uint8.MAX;
r_total2 /= size * uint8.MAX;
// combine weighted and not weighted sum depending on the average "saturation"
// if saturation isn't reasonable enough
// s = 0.0 -> f = 0.0 ; s = WEIGHT_THRESHOLD -> f = 1.0
if (scoreTotal <= WEIGHT_THRESHOLD) {
var f = 1.0 / WEIGHT_THRESHOLD * scoreTotal;
if (score_total <= WEIGHT_THRESHOLD) {
var f = 1.0 / WEIGHT_THRESHOLD * score_total;
var rf = 1.0 - f;
bTotal = bTotal * f + bTotal2 * rf;
gTotal = gTotal * f + gTotal2 * rf;
rTotal = rTotal * f + rTotal2 * rf;
b_total = b_total * f + b_total2 * rf;
g_total = g_total * f + g_total2 * rf;
r_total = r_total * f + r_total2 * rf;
}
// there shouldn't be values larger then 1.0
var max_val = double.max (rTotal, double.max (gTotal, bTotal));
var max_val = double.max (r_total, double.max (g_total, b_total));
if (max_val > 1.0) {
bTotal /= max_val;
gTotal /= max_val;
rTotal /= max_val;
b_total /= max_val;
g_total /= max_val;
r_total /= max_val;
}
mean /= size;
@ -250,7 +250,7 @@ namespace Gala {
yield;
return { rTotal, gTotal, bTotal, mean, variance };
return { r_total, g_total, b_total, mean, variance };
}
}
}

View File

@ -337,7 +337,7 @@ namespace Gala {
*/
public static int pixel_align (float value) {
var scale_factor = InternalUtils.get_ui_scaling_factor ();
return (int) Math.round (value * scale_factor) / scale_factor;
return (int) Math.round (value * scale_factor) / scale_factor;
}
private static Gtk.StyleContext selection_style_context = null;

View File

@ -254,6 +254,12 @@ namespace Gala {
}
static async bool save_image (Cairo.ImageSurface image, string filename, out string used_filename) {
return (filename != "")
? yield save_image_to_file (image, filename, out used_filename)
: save_image_to_clipboard (image, filename, out used_filename);
}
static async bool save_image_to_file (Cairo.ImageSurface image, string filename, out string used_filename) {
used_filename = filename;
// We only alter non absolute filename because absolute
@ -290,6 +296,22 @@ namespace Gala {
}
}
static bool save_image_to_clipboard (Cairo.ImageSurface image, string filename, out string used_filename) {
used_filename = filename;
unowned Gdk.Display display = Gdk.Display.get_default ();
unowned Gtk.Clipboard clipboard = Gtk.Clipboard.get_default (display);
var screenshot = Gdk.pixbuf_get_from_surface (image, 0, 0, image.get_width (), image.get_height ());
if (screenshot == null) {
warning ("could not save screenshot to clipboard: null pixbuf");
return false;
}
clipboard.set_image (screenshot);
return true;
}
Cairo.ImageSurface take_screenshot (int x, int y, int width, int height, bool include_cursor) {
Cairo.ImageSurface image;
#if HAS_MUTTER338

View File

@ -22,6 +22,13 @@ namespace Gala {
private const double START_ANGLE = 3 * Math.PI / 2;
/**
* Delay, in milliseconds, before showing the animation.
* libinput uses a timeout of 180ms when tapping is enabled. Use that value plus a safety
* margin so the animation is never displayed when tapping.
*/
private const double DELAY_TIMEOUT = 185;
private int scaling_factor = 1;
private int cursor_size = 24;
@ -94,6 +101,10 @@ namespace Gala {
}
public override void paint (Clutter.PaintContext context) {
if (angle == 0) {
return;
}
var rgba = InternalUtils.get_theme_accent_color ();
/* Don't use alpha from the stylesheet to ensure contrast */
@ -145,7 +156,14 @@ namespace Gala {
public bool interpolate_value (string property_name, Clutter.Interval interval, double progress, out Value @value) {
if (property_name == "angle") {
@value = progress * 2 * Math.PI;
@value = 0;
var elapsed_time = transition.get_elapsed_time ();
if (elapsed_time > DELAY_TIMEOUT) {
double delayed_progress = (elapsed_time - DELAY_TIMEOUT) / (transition.duration - DELAY_TIMEOUT);
@value = (delayed_progress * 2 * Math.PI);
}
return true;
}

View File

@ -30,6 +30,7 @@ namespace Gala {
const int PLUS_SIZE = 8;
const int PLUS_WIDTH = 24;
const int CLOSE_BUTTON_SIZE = 36;
const int SHOW_CLOSE_BUTTON_DELAY = 200;
/**
@ -96,17 +97,12 @@ namespace Gala {
}
construct {
var scale = InternalUtils.get_ui_scaling_factor ();
var size = SIZE * scale;
width = size;
height = size;
reactive = true;
var canvas = new Canvas ();
canvas.set_size (size, size);
canvas.draw.connect (draw);
content = canvas;
resize_canvas ();
dummy_material = new Cogl.Material ();
@ -125,8 +121,7 @@ namespace Gala {
add_child (icon_container);
close_button = Utils.create_close_button ();
close_button.x = -Math.floorf (close_button.width * 0.4f);
close_button.y = -Math.floorf (close_button.height * 0.4f);
place_close_button ();
close_button.opacity = 0;
close_button.reactive = true;
close_button.visible = false;
@ -184,6 +179,7 @@ namespace Gala {
if (show) {
show_close_button_timeout = Timeout.add (SHOW_CLOSE_BUTTON_DELAY, () => {
place_close_button ();
close_button.visible = true;
close_button.opacity = 255;
show_close_button_timeout = 0;
@ -202,6 +198,24 @@ namespace Gala {
close_button.visible = false;
}
bool resize_canvas () {
var scale = InternalUtils.get_ui_scaling_factor ();
var size = SIZE * scale;
width = size;
height = size;
return ((Canvas) content).set_size (size, size);
}
void place_close_button () {
var size = CLOSE_BUTTON_SIZE * InternalUtils.get_ui_scaling_factor ();
close_button.set_size (size, size);
close_button.x = -Math.floorf (close_button.width * 0.4f);
close_button.y = -Math.floorf (close_button.height * 0.4f);
}
/**
* Override the paint handler to draw our backdrop if necessary
*/
@ -303,7 +317,9 @@ namespace Gala {
* Trigger a redraw
*/
public void redraw () {
content.invalidate ();
if (!resize_canvas ()) {
content.invalidate ();
}
}
/**

View File

@ -128,6 +128,22 @@ namespace Gala {
return width;
}
public void force_reposition () {
var children = get_children ();
foreach (var child in children) {
if (child is IconGroup) {
remove_group ((IconGroup) child);
}
}
foreach (var child in children) {
if (child is IconGroup) {
add_group ((IconGroup) child);
}
}
}
void update_inserter_indices () {
var current_index = 0;

View File

@ -564,6 +564,7 @@ namespace Gala {
grab_key_focus ();
var scale = InternalUtils.get_ui_scaling_factor ();
icon_groups.force_reposition ();
icon_groups.y = height - WorkspaceClone.BOTTOM_OFFSET * scale + 20 * scale;
} else {
DragDropAction.cancel_all_by_id ("multitaskingview-window");
@ -649,7 +650,7 @@ namespace Gala {
unowned GLib.List<Meta.WindowActor> window_actors = display.get_window_actors ();
foreach (unowned Meta.WindowActor actor in window_actors) {
const int MAX_OFFSET = 100;
const int MAX_OFFSET = 85;
if (actor.is_destroyed ())
continue;

View File

@ -83,7 +83,7 @@ namespace Gala {
public bool is_locked { get; private set; default = false; }
public bool in_greeter { get; private set; default = false; }
public int64 activation_time { get; private set; default = 0; }
public int64 activation_time { get; private set; default = 0; }
public WindowManager wm { get; construct; }

View File

@ -27,6 +27,7 @@ namespace Gala {
}
public override ActorBox get_bounding_box () {
var scale_factor = InternalUtils.get_ui_scaling_factor ();
var size = shadow_size * scale_factor;
var input_rect = window.get_buffer_rect ();
@ -34,7 +35,7 @@ namespace Gala {
// Occupy only window frame area plus shadow size
var bounding_box = ActorBox ();
bounding_box.set_origin (-(input_rect.x - outer_rect.x) - size, -(input_rect.y - outer_rect.y) - size);
bounding_box.set_origin (-(input_rect.x - outer_rect.x) - size, -(input_rect.y - outer_rect.y) - size); //vala-lint=space-before-paren
bounding_box.set_size (outer_rect.width + size * 2, outer_rect.height + size * 2);
return bounding_box;
@ -47,6 +48,8 @@ namespace Gala {
class ActiveShape : Actor {
private Clutter.Canvas background_canvas;
private static int border_radius;
private static Gdk.RGBA color;
private static const double COLOR_OPACITY = 0.8;
static construct {
var label_widget_path = new Gtk.WidgetPath ();
@ -61,6 +64,8 @@ namespace Gala {
Gtk.STYLE_PROPERTY_BORDER_RADIUS,
Gtk.StateFlags.NORMAL
).get_int () * 4;
color = InternalUtils.get_theme_accent_color ();
}
construct {
@ -76,7 +81,7 @@ namespace Gala {
cr.restore ();
Granite.Drawing.Utilities.cairo_rounded_rectangle (cr, 0, 0, width, height, border_radius);
cr.set_source_rgba (1, 1, 1, 0.8);
cr.set_source_rgba (color.red, color.green, color.blue, COLOR_OPACITY);
cr.fill ();
return false;
@ -89,6 +94,7 @@ namespace Gala {
public override void allocate (ActorBox box, AllocationFlags flags) {
base.allocate (box, flags);
#endif
color = InternalUtils.get_theme_accent_color ();
background_canvas.set_size ((int) box.get_width (), (int) box.get_height ());
background_canvas.invalidate ();
}
@ -99,6 +105,7 @@ namespace Gala {
* a close button and a shadow. Used together with the WindowCloneContainer.
*/
public class WindowClone : Actor {
const int CLOSE_WINDOW_ICON_SIZE = 36;
const int WINDOW_ICON_SIZE = 64;
const int ACTIVE_SHAPE_SIZE = 12;
const int FADE_ANIMATION_DURATION = 200;
@ -170,7 +177,6 @@ namespace Gala {
int prev_index = -1;
ulong check_confirm_dialog_cb = 0;
uint shadow_update_timeout = 0;
int scale_factor = 0;
bool in_slot_animation = false;
Actor close_button;
@ -217,7 +223,7 @@ namespace Gala {
return true;
});
scale_factor = InternalUtils.get_ui_scaling_factor ();
var scale_factor = InternalUtils.get_ui_scaling_factor ();
var window_frame_rect = window.get_frame_rect ();
window_icon = new WindowIcon (window, WINDOW_ICON_SIZE, scale_factor);
@ -566,12 +572,16 @@ namespace Gala {
public void place_widgets (int dest_width, int dest_height) {
Granite.CloseButtonPosition pos;
Granite.Widgets.Utils.get_default_close_button_position (out pos);
var scale_factor = InternalUtils.get_ui_scaling_factor ();
close_button.save_easing_state ();
window_title.save_easing_state ();
close_button.set_easing_duration (0);
window_title.set_easing_duration (0);
var close_button_size = CLOSE_WINDOW_ICON_SIZE * scale_factor;
close_button.set_size (close_button_size, close_button_size);
close_button.y = -close_button.height * 0.33f;
switch (pos) {
@ -872,18 +882,22 @@ namespace Gala {
}
private void set_window_icon_position (float window_width, float window_height, bool aligned = true) {
var x = (window_width - WINDOW_ICON_SIZE) / 2;
var y = window_height - (WINDOW_ICON_SIZE * scale_factor) * 0.75f;
var scale_factor = InternalUtils.get_ui_scaling_factor ();
var size = WINDOW_ICON_SIZE * scale_factor;
var x = (window_width - size) / 2;
var y = window_height - (size * 0.75f);
if (aligned) {
x = InternalUtils.pixel_align (x);
y = InternalUtils.pixel_align (y);
}
window_icon.set_size (size, size);
window_icon.set_position (x, y);
}
private void set_window_title_position (float window_width, float window_height) {
var scale_factor = InternalUtils.get_ui_scaling_factor ();
var x = InternalUtils.pixel_align ((window_width - window_title.width) / 2);
var y = InternalUtils.pixel_align (window_height - (WINDOW_ICON_SIZE * scale_factor) * 0.75f - (window_title.height / 2) - (18 * scale_factor));
window_title.set_position (x, y);

View File

@ -27,6 +27,8 @@ namespace Gala {
public class WindowIconActor : Actor {
public Window window { get; construct; }
int icon_scale;
int _icon_size;
/**
* The icon size of the WindowIcon. Once set the new icon will be
@ -37,11 +39,14 @@ namespace Gala {
return _icon_size;
}
set {
if (value == _icon_size)
return;
var scale = InternalUtils.get_ui_scaling_factor ();
if (value == _icon_size && scale == icon_scale) {
return;
}
_icon_size = value;
icon_scale = scale;
set_size (_icon_size * scale, _icon_size * scale);
@ -111,6 +116,7 @@ namespace Gala {
set_easing_duration (800);
window.notify["on-all-workspaces"].connect (on_all_workspaces_changed);
icon_scale = InternalUtils.get_ui_scaling_factor ();
}
~WindowIconActor () {

View File

@ -331,13 +331,13 @@ namespace Gala {
var target_x = multitasking_view_x ();
var scale = (float)(monitor.height - TOP_OFFSET * scale_factor - BOTTOM_OFFSET * scale_factor) / monitor.height;
var pivotY = TOP_OFFSET * scale_factor / (monitor.height - monitor.height * scale);
var pivot_y = TOP_OFFSET * scale_factor / (monitor.height - monitor.height * scale);
update_size (monitor);
GestureTracker.OnBegin on_animation_begin = () => {
x = initial_x;
background.set_pivot_point (0.5f, pivotY);
background.set_pivot_point (0.5f, pivot_y);
};
GestureTracker.OnUpdate on_animation_update = (percentage) => {

View File

@ -681,9 +681,9 @@ namespace Gala {
}
void animate_bottom_window_scale (Meta.WindowActor actor) {
const string[] props = { "scale-x", "scale-y" };
const string[] PROPS = { "scale-x", "scale-y" };
foreach (string prop in props) {
foreach (string prop in PROPS) {
double[] scale_keyframes = { 0.2, 0.3, 0.8 };
GLib.Value[] scale = { 1.0f, 1.07f, 1.07f };
@ -1167,7 +1167,7 @@ namespace Gala {
}
public override void minimize (Meta.WindowActor actor) {
const int duration = AnimationDuration.HIDE;
var duration = AnimationDuration.HIDE;
if (!enable_animations
|| duration == 0
@ -1237,7 +1237,7 @@ namespace Gala {
}
void maximize (Meta.WindowActor actor, int ex, int ey, int ew, int eh) {
const int duration = AnimationDuration.SNAP;
var duration = AnimationDuration.SNAP;
if (!enable_animations
|| duration == 0) {
@ -1527,7 +1527,7 @@ namespace Gala {
switch (window.window_type) {
case Meta.WindowType.NORMAL:
const int duration = AnimationDuration.CLOSE;
var duration = AnimationDuration.CLOSE;
if (duration == 0) {
destroy_completed (actor);
return;
@ -1625,7 +1625,7 @@ namespace Gala {
}
void unmaximize (Meta.WindowActor actor, int ex, int ey, int ew, int eh) {
const int duration = AnimationDuration.SNAP;
var duration = AnimationDuration.SNAP;
if (!enable_animations
|| duration == 0) {
return;
@ -2183,7 +2183,6 @@ namespace Gala {
var date_time = new GLib.DateTime.now_local ().format ("%Y-%m-%d %H.%M.%S");
/// TRANSLATORS: %s represents a timestamp here
string file_name = _("Screenshot from %s").printf (date_time);
bool success = false;
string filename_used = "";
var screenshot_manager = ScreenshotManager.init (this);

View File

@ -1,42 +1,42 @@
namespace Clutter {
public struct Color {
[CCode (cname = "clutter_color_from_hls")]
public Color.from_hls (float hue, float luminance, float saturation);
[CCode (cname = "clutter_color_from_pixel")]
public Color.from_pixel (uint32 pixel);
[CCode (cname = "clutter_color_from_string")]
public Color.from_string (string str);
[CCode (cname = "clutter_color_from_string")]
public bool parse_string (string str);
}
public struct Color {
[CCode (cname = "clutter_color_from_hls")]
public Color.from_hls (float hue, float luminance, float saturation);
[CCode (cname = "clutter_color_from_pixel")]
public Color.from_pixel (uint32 pixel);
[CCode (cname = "clutter_color_from_string")]
public Color.from_string (string str);
[CCode (cname = "clutter_color_from_string")]
public bool parse_string (string str);
}
public interface Container : GLib.Object {
public void add (params Clutter.Actor[] actors);
[CCode (cname = "clutter_container_class_find_child_property")]
public class unowned GLib.ParamSpec find_child_property (string property_name);
[CCode (cname = "clutter_container_class_list_child_properties")]
public class unowned GLib.ParamSpec[] list_child_properties ();
}
public interface Container : GLib.Object {
public void add (params Clutter.Actor[] actors);
[CCode (cname = "clutter_container_class_find_child_property")]
public class unowned GLib.ParamSpec find_child_property (string property_name);
[CCode (cname = "clutter_container_class_list_child_properties")]
public class unowned GLib.ParamSpec[] list_child_properties ();
}
public struct Units {
[CCode (cname = "clutter_units_from_cm")]
public Units.from_cm (float cm);
[CCode (cname = "clutter_units_from_em")]
public Units.from_em (float em);
[CCode (cname = "clutter_units_from_em_for_font")]
public Units.from_em_for_font (string font_name, float em);
[CCode (cname = "clutter_units_from_mm")]
public Units.from_mm (float mm);
[CCode (cname = "clutter_units_from_pixels")]
public Units.from_pixels (int px);
[CCode (cname = "clutter_units_from_pt")]
public Units.from_pt (float pt);
[CCode (cname = "clutter_units_from_string")]
public Units.from_string (string str);
}
public struct Units {
[CCode (cname = "clutter_units_from_cm")]
public Units.from_cm (float cm);
[CCode (cname = "clutter_units_from_em")]
public Units.from_em (float em);
[CCode (cname = "clutter_units_from_em_for_font")]
public Units.from_em_for_font (string font_name, float em);
[CCode (cname = "clutter_units_from_mm")]
public Units.from_mm (float mm);
[CCode (cname = "clutter_units_from_pixels")]
public Units.from_pixels (int px);
[CCode (cname = "clutter_units_from_pt")]
public Units.from_pt (float pt);
[CCode (cname = "clutter_units_from_string")]
public Units.from_string (string str);
}
[CCode (cheader_filename = "clutter/clutter.h", has_copy_function = false, has_destroy_function = false, has_type_id = false)]
public struct Capture {
}
[CCode (cheader_filename = "clutter/clutter.h", has_copy_function = false, has_destroy_function = false, has_type_id = false)]
public struct Capture {
}
}

View File

@ -1,42 +1,42 @@
namespace Clutter {
public struct Color {
[CCode (cname = "clutter_color_from_hls")]
public Color.from_hls (float hue, float luminance, float saturation);
[CCode (cname = "clutter_color_from_pixel")]
public Color.from_pixel (uint32 pixel);
[CCode (cname = "clutter_color_from_string")]
public Color.from_string (string str);
[CCode (cname = "clutter_color_from_string")]
public bool parse_string (string str);
}
public struct Color {
[CCode (cname = "clutter_color_from_hls")]
public Color.from_hls (float hue, float luminance, float saturation);
[CCode (cname = "clutter_color_from_pixel")]
public Color.from_pixel (uint32 pixel);
[CCode (cname = "clutter_color_from_string")]
public Color.from_string (string str);
[CCode (cname = "clutter_color_from_string")]
public bool parse_string (string str);
}
public interface Container : GLib.Object {
public void add (params Clutter.Actor[] actors);
[CCode (cname = "clutter_container_class_find_child_property")]
public class unowned GLib.ParamSpec find_child_property (string property_name);
[CCode (cname = "clutter_container_class_list_child_properties")]
public class unowned GLib.ParamSpec[] list_child_properties ();
}
public interface Container : GLib.Object {
public void add (params Clutter.Actor[] actors);
[CCode (cname = "clutter_container_class_find_child_property")]
public class unowned GLib.ParamSpec find_child_property (string property_name);
[CCode (cname = "clutter_container_class_list_child_properties")]
public class unowned GLib.ParamSpec[] list_child_properties ();
}
public struct Units {
[CCode (cname = "clutter_units_from_cm")]
public Units.from_cm (float cm);
[CCode (cname = "clutter_units_from_em")]
public Units.from_em (float em);
[CCode (cname = "clutter_units_from_em_for_font")]
public Units.from_em_for_font (string font_name, float em);
[CCode (cname = "clutter_units_from_mm")]
public Units.from_mm (float mm);
[CCode (cname = "clutter_units_from_pixels")]
public Units.from_pixels (int px);
[CCode (cname = "clutter_units_from_pt")]
public Units.from_pt (float pt);
[CCode (cname = "clutter_units_from_string")]
public Units.from_string (string str);
}
public struct Units {
[CCode (cname = "clutter_units_from_cm")]
public Units.from_cm (float cm);
[CCode (cname = "clutter_units_from_em")]
public Units.from_em (float em);
[CCode (cname = "clutter_units_from_em_for_font")]
public Units.from_em_for_font (string font_name, float em);
[CCode (cname = "clutter_units_from_mm")]
public Units.from_mm (float mm);
[CCode (cname = "clutter_units_from_pixels")]
public Units.from_pixels (int px);
[CCode (cname = "clutter_units_from_pt")]
public Units.from_pt (float pt);
[CCode (cname = "clutter_units_from_string")]
public Units.from_string (string str);
}
[CCode (cheader_filename = "clutter/clutter.h", has_copy_function = false, has_destroy_function = false, has_type_id = false)]
public struct Capture {
}
[CCode (cheader_filename = "clutter/clutter.h", has_copy_function = false, has_destroy_function = false, has_type_id = false)]
public struct Capture {
}
}

View File

@ -1,167 +1,167 @@
namespace Cogl {
public struct Color {
[Version (since = "1.4")]
[CCode (cname="cogl_color_init_from_4f")]
public Color.from_4f (float red, float green, float blue, float alpha);
[Version (since = "1.4")]
[CCode (cname="cogl_color_init_from_4fv")]
public Color.from_4fv (float color_array);
[Version (since = "1.4")]
[CCode (cname="cogl_color_init_from_4ub")]
public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
[Version (since = "1.16")]
[CCode (cname="cogl_color_init_from_hsl")]
public Color.from_hsl (float hue, float saturation, float luminance);
}
public struct Color {
[Version (since = "1.4")]
[CCode (cname="cogl_color_init_from_4f")]
public Color.from_4f (float red, float green, float blue, float alpha);
[Version (since = "1.4")]
[CCode (cname="cogl_color_init_from_4fv")]
public Color.from_4fv (float color_array);
[Version (since = "1.4")]
[CCode (cname="cogl_color_init_from_4ub")]
public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
[Version (since = "1.16")]
[CCode (cname="cogl_color_init_from_hsl")]
public Color.from_hsl (float hue, float saturation, float luminance);
}
[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
public interface Framebuffer {
[CCode (cheader_filename = "cogl-path/cogl-path.h")]
public void stroke_path (Cogl.Pipeline pipeline, Cogl.Path path);
}
[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_framebuffer_get_gtype ()")]
public interface Framebuffer {
[CCode (cheader_filename = "cogl-path/cogl-path.h")]
public void stroke_path (Cogl.Pipeline pipeline, Cogl.Path path);
}
[Compact]
[CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
public class Shader : Cogl.Handle {
}
[Compact]
[CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
public class Shader : Cogl.Handle {
}
[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_primitive_get_gtype ()")]
public class Primitive : Cogl.Object {
[CCode (has_construct_function = false)]
protected Primitive ();
[Version (since = "1.10")]
public Cogl.Primitive copy ();
[Version (since = "1.16")]
public void draw (Cogl.Framebuffer framebuffer, Cogl.Pipeline pipeline);
public int get_first_vertex ();
public Cogl.VerticesMode get_mode ();
[Version (since = "1.8")]
public int get_n_vertices ();
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2C4[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2C4[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3C4[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2C4[] data);
public void set_first_vertex (int first_vertex);
public void set_mode (Cogl.VerticesMode mode);
[Version (since = "1.8")]
public void set_n_vertices (int n_vertices);
}
[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_primitive_get_gtype ()")]
public class Primitive : Cogl.Object {
[CCode (has_construct_function = false)]
protected Primitive ();
[Version (since = "1.10")]
public Cogl.Primitive copy ();
[Version (since = "1.16")]
public void draw (Cogl.Framebuffer framebuffer, Cogl.Pipeline pipeline);
public int get_first_vertex ();
public Cogl.VerticesMode get_mode ();
[Version (since = "1.8")]
public int get_n_vertices ();
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2C4[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2C4[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3C4[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2C4[] data);
public void set_first_vertex (int first_vertex);
public void set_mode (Cogl.VerticesMode mode);
[Version (since = "1.8")]
public void set_n_vertices (int n_vertices);
}
[Compact]
[CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
public class Program : Cogl.Handle {
}
[Compact]
[CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
public class Program : Cogl.Handle {
}
[Compact]
[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
public class Handle {
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_material")]
[Version (deprecated = true, deprecated_since = "1.16")]
public bool is_material ();
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_program")]
[Version (deprecated = true, deprecated_since = "1.16")]
public bool is_program (Cogl.Handle handle);
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_shader")]
[Version (deprecated = true, deprecated_since = "1.16")]
public bool is_shader ();
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_texture")]
public bool is_texture ();
}
[Compact]
[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
public class Handle {
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_material")]
[Version (deprecated = true, deprecated_since = "1.16")]
public bool is_material ();
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_program")]
[Version (deprecated = true, deprecated_since = "1.16")]
public bool is_program (Cogl.Handle handle);
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_shader")]
[Version (deprecated = true, deprecated_since = "1.16")]
public bool is_shader ();
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_texture")]
public bool is_texture ();
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2 {
public float x;
public float y;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2C4 {
public float x;
public float y;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2T2 {
public float x;
public float y;
public float s;
public float t;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2T2C4 {
public float x;
public float y;
public float s;
public float t;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3 {
public float x;
public float y;
public float z;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3C4 {
public float x;
public float y;
public float z;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3T2 {
public float x;
public float y;
public float z;
public float s;
public float t;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3T2C4 {
public float x;
public float y;
public float z;
public float s;
public float t;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2 {
public float x;
public float y;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2C4 {
public float x;
public float y;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2T2 {
public float x;
public float y;
public float s;
public float t;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2T2C4 {
public float x;
public float y;
public float s;
public float t;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3 {
public float x;
public float y;
public float z;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3C4 {
public float x;
public float y;
public float z;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3T2 {
public float x;
public float y;
public float z;
public float s;
public float t;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3T2C4 {
public float x;
public float y;
public float z;
public float s;
public float t;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
}

View File

@ -1,161 +1,161 @@
namespace Cogl {
public struct Color {
[Version (since = "1.4")]
[CCode (cname="cogl_color_init_from_4f")]
public Color.from_4f (float red, float green, float blue, float alpha);
[Version (since = "1.4")]
[CCode (cname="cogl_color_init_from_4fv")]
public Color.from_4fv (float color_array);
[Version (since = "1.4")]
[CCode (cname="cogl_color_init_from_4ub")]
public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
[Version (since = "1.16")]
[CCode (cname="cogl_color_init_from_hsl")]
public Color.from_hsl (float hue, float saturation, float luminance);
}
public struct Color {
[Version (since = "1.4")]
[CCode (cname="cogl_color_init_from_4f")]
public Color.from_4f (float red, float green, float blue, float alpha);
[Version (since = "1.4")]
[CCode (cname="cogl_color_init_from_4fv")]
public Color.from_4fv (float color_array);
[Version (since = "1.4")]
[CCode (cname="cogl_color_init_from_4ub")]
public Color.from_4ub (uint8 red, uint8 green, uint8 blue, uint8 alpha);
[Version (since = "1.16")]
[CCode (cname="cogl_color_init_from_hsl")]
public Color.from_hsl (float hue, float saturation, float luminance);
}
[Compact]
[CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
public class Shader : Cogl.Handle {
}
[Compact]
[CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
public class Shader : Cogl.Handle {
}
[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_primitive_get_gtype ()")]
public class Primitive : Cogl.Object {
[CCode (has_construct_function = false)]
protected Primitive ();
[Version (since = "1.10")]
public Cogl.Primitive copy ();
[Version (since = "1.16")]
public void draw (Cogl.Framebuffer framebuffer, Cogl.Pipeline pipeline);
public int get_first_vertex ();
public Cogl.VerticesMode get_mode ();
[Version (since = "1.8")]
public int get_n_vertices ();
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2C4[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2C4[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3C4[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2C4[] data);
public void set_first_vertex (int first_vertex);
public void set_mode (Cogl.VerticesMode mode);
[Version (since = "1.8")]
public void set_n_vertices (int n_vertices);
}
[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_primitive_get_gtype ()")]
public class Primitive : Cogl.Object {
[CCode (has_construct_function = false)]
protected Primitive ();
[Version (since = "1.10")]
public Cogl.Primitive copy ();
[Version (since = "1.16")]
public void draw (Cogl.Framebuffer framebuffer, Cogl.Pipeline pipeline);
public int get_first_vertex ();
public Cogl.VerticesMode get_mode ();
[Version (since = "1.8")]
public int get_n_vertices ();
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2C4[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p2t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP2T2C4[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3C4[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3t2 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2[] data);
[CCode (has_construct_function = false)]
[Version (since = "1.6")]
public Primitive.p3t2c4 (Cogl.Context context, Cogl.VerticesMode mode, [CCode (array_length_cname = "n_vertices", array_length_pos = 2.5)] Cogl.VertexP3T2C4[] data);
public void set_first_vertex (int first_vertex);
public void set_mode (Cogl.VerticesMode mode);
[Version (since = "1.8")]
public void set_n_vertices (int n_vertices);
}
[Compact]
[CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
public class Program : Cogl.Handle {
}
[Compact]
[CCode (cname = "CoglHandle", cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
public class Program : Cogl.Handle {
}
[Compact]
[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
public class Handle {
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_material")]
[Version (deprecated = true, deprecated_since = "1.16")]
public bool is_material ();
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_program")]
[Version (deprecated = true, deprecated_since = "1.16")]
public bool is_program (Cogl.Handle handle);
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_shader")]
[Version (deprecated = true, deprecated_since = "1.16")]
public bool is_shader ();
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_texture")]
public bool is_texture ();
}
[Compact]
[CCode (cheader_filename = "cogl/cogl.h", type_id = "cogl_handle_get_gtype ()", ref_function = "cogl_object_ref", unref_function = "cogl_object_unref")]
public class Handle {
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_material")]
[Version (deprecated = true, deprecated_since = "1.16")]
public bool is_material ();
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_program")]
[Version (deprecated = true, deprecated_since = "1.16")]
public bool is_program (Cogl.Handle handle);
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_shader")]
[Version (deprecated = true, deprecated_since = "1.16")]
public bool is_shader ();
[CCode (cheader_filename = "cogl/cogl.h", cname="cogl_is_texture")]
public bool is_texture ();
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2 {
public float x;
public float y;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2C4 {
public float x;
public float y;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2T2 {
public float x;
public float y;
public float s;
public float t;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2T2C4 {
public float x;
public float y;
public float s;
public float t;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3 {
public float x;
public float y;
public float z;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3C4 {
public float x;
public float y;
public float z;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3T2 {
public float x;
public float y;
public float z;
public float s;
public float t;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3T2C4 {
public float x;
public float y;
public float z;
public float s;
public float t;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2 {
public float x;
public float y;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2C4 {
public float x;
public float y;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2T2 {
public float x;
public float y;
public float s;
public float t;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP2T2C4 {
public float x;
public float y;
public float s;
public float t;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3 {
public float x;
public float y;
public float z;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3C4 {
public float x;
public float y;
public float z;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3T2 {
public float x;
public float y;
public float z;
public float s;
public float t;
}
[CCode (cheader_filename = "cogl/cogl.h", has_type_id = false)]
[Version (since = "1.6")]
public struct VertexP3T2C4 {
public float x;
public float y;
public float z;
public float s;
public float t;
public uint8 r;
public uint8 g;
public uint8 b;
public uint8 a;
}
}