Add base gnome extensions
This commit is contained in:
@ -0,0 +1,29 @@
|
||||
// Bing Wallpaper GNOME extension
|
||||
// Copyright (C) 2017-2023 Michael Carroll
|
||||
// This extension is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU Lesser General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
// See the GNU General Public License, version 3 or later for details.
|
||||
|
||||
import Gio from 'gi://Gio';
|
||||
import GdkPixbuf from 'gi://GdkPixbuf';
|
||||
|
||||
const THUMBNAIL_WIDTH = 480;
|
||||
const THUMBNAIL_HEIGHT = 270;
|
||||
|
||||
export default class Thumbnail {
|
||||
constructor(filePath, scale = 1.0) {
|
||||
if (!filePath) {
|
||||
throw new Error(`need argument ${filePath}`);
|
||||
}
|
||||
try {
|
||||
let w = Math.round(THUMBNAIL_WIDTH * scale);
|
||||
let h = Math.round(THUMBNAIL_HEIGHT * scale);
|
||||
this.pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_size(filePath, w, h);
|
||||
this.srcFile = Gio.File.new_for_path(filePath);
|
||||
} catch (err) {
|
||||
log('Unable to create thumbnail for corrupt or incomplete file: ' + filePath + ' err: ' + err);
|
||||
}
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user