Remove fullscreen notification option

Unfortunatly gnome-3.35.9x has dropped ClutterTexture, so this needs to
be completely rewritten, lets just remove it for now.

Note patches re-introducing this are welcome.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
Hans de Goede 2020-02-17 18:04:02 +01:00
parent 89a04a36fb
commit 0580b73fa4
27 changed files with 2 additions and 140 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

View File

@ -28,109 +28,6 @@ const N_ = function (e) {
};
class TeaTimeFullscreenNotification {
constructor() {
// this spans the whole monitor and contains
// the actual layout, which it displays in
// the center of itself
this._bin = new St.Bin({
x_align: St.Align.MIDDLE,
y_align: St.Align.MIDDLE
});
if (typeof Layout.MonitorConstraint != 'undefined') {
// MonitorConstraint was introduced in gnome-3.6
this._monitorConstraint = new Layout.MonitorConstraint();
this._bin.add_constraint(this._monitorConstraint);
}
Main.uiGroup.add_actor(this._bin);
// a table imitating a vertical box layout to hold the texture and
// a label underneath it
this._layout = new St.BoxLayout({
vertical: true,
y_align: Clutter.ActorAlign.CENTER
});
this._bin.set_child(this._layout);
// find all the textures
let datadir = Me.dir.get_child("data");
this._textureFiles = [];
if (datadir.query_exists(null)) {
let enumerator = datadir.enumerate_children(Gio.FILE_ATTRIBUTE_STANDARD_NAME,
Gio.FileQueryInfoFlags.NONE,
null);
let info;
info = enumerator.next_file(null);
while (info != null) {
let filename = info.get_name();
if (filename.match(/^cup.*/)) {
this._textureFiles.push(datadir.get_child(filename).get_path());
}
info = enumerator.next_file(null);
}
}
this._textureFiles.sort();
this._texture = new Clutter.Texture({
reactive: true,
keep_aspect_ratio: true
});
this._texture.connect("button-release-event", this.hide.bind(this));
this._layout.add_child(this._texture);
this._timeline = new Clutter.Timeline({
duration: 2000,
repeat_count: -1,
progress_mode: Clutter.AnimationMode.LINEAR
});
this._timeline.connect("new-frame", this._newFrame.bind(this));
this._label = new St.Label({
text: _("Your tea is ready!"),
style_class: "dash-label"
});
this._layout.add_child(this._label);
this._lightbox = new imports.ui.lightbox.Lightbox(Main.uiGroup); // Seems not to work on Gnome 3.10 { fadeInTime: 0.5, fadeOutTime: 0.5 }
this._lightbox.highlight(this._bin);
}
destroy() {
this.hide();
Main.popModal(this._bin);
this._bin.destroy();
this._lightbox.hide();
}
_newFrame(timeline, msecs, user) {
let progress = timeline.get_progress();
let idx = Math.round(progress * this._textureFiles.length) % this._textureFiles.length;
this._texture.set_from_file(this._textureFiles[idx]);
}
show() {
if (typeof Layout.MonitorConstraint != 'undefined') {
// global.display was introduced in gnome-shell 3.30
if (typeof global.screen != 'undefined') {
this._monitorConstraint.index = global.screen.get_current_monitor();
} else {
this._monitorConstraint.index = global.display.get_current_monitor();
}
}
Main.pushModal(this._bin);
this._timeline.start();
this._lightbox.show();
this._bin.show_all();
}
hide() {
Main.popModal(this._bin);
this._bin.hide();
this._lightbox.hide();
this._timeline.stop();
}
};
let PopupTeaMenuItem = GObject.registerClass(
class PopupTeaMenuItem extends PopupMenu.PopupBaseMenuItem {
_init(sTeaname, nBrewtime, params) {
@ -383,14 +280,8 @@ class TeaTime extends PanelMenu.Button {
// count down finished, switch display again
this._stopCountdown();
this._playSound();
if (!Utils.isGnome34() && this._settings.get_boolean(this.config_keys.fullscreen_notification)) {
this.dialog = new TeaTimeFullscreenNotification();
this.dialog.show();
} else {
this._showNotification(_("Your tea is ready!"),
_("Drink it, while it is hot!"));
}
return false;
} else {
this._updateTimerDisplay(remainingTime);

View File

@ -57,11 +57,6 @@ class TeaTimePrefsWidget extends Gtk.Grid {
_initWindow() {
let curRow = 0;
let labelFN = new Gtk.Label({
label: _("Fullscreen Notifications"),
hexpand: true,
halign: Gtk.Align.START
});
let labelGC = new Gtk.Label({
label: _("Graphical Countdown"),
hexpand: true,
@ -74,9 +69,6 @@ class TeaTimePrefsWidget extends Gtk.Grid {
halign: Gtk.Align.START
});
this.fullscreenNotificationSwitch = new Gtk.Switch();
this.fullscreenNotificationSwitch.connect("notify::active", this._saveFullscreenNotifications.bind(this));
this.graphicalCountdownSwitch = new Gtk.Switch();
this.graphicalCountdownSwitch.connect("notify::active", this._saveGraphicalCountdown.bind(this));
@ -94,14 +86,6 @@ class TeaTimePrefsWidget extends Gtk.Grid {
this.alarmSoundFileFilter.add_mime_type("audio/*");
this.alarmSoundFile.connect("selection_changed", this._saveSoundFile.bind(this));
if (!Utils.isGnome34()) {
// Full screen notifications currently not working on GNOME 3.4, thus don't show the switch
this.attach(labelFN, 0 /*col*/ , curRow /*row*/ , 2 /*col span*/ , 1 /*row span*/ );
this.attach(this.fullscreenNotificationSwitch, 2, curRow, 1, 1);
curRow += 1;
}
this.attach(labelGC, 0 /*col*/ , curRow /*row*/ , 2 /*col span*/ , 1 /*row span*/ );
this.attach(this.graphicalCountdownSwitch, 2, curRow, 1, 1);
curRow += 1;
@ -183,8 +167,6 @@ class TeaTimePrefsWidget extends Gtk.Grid {
if (this._inhibitUpdate)
return;
this.fullscreenNotificationSwitch.active = this._settings.get_boolean(this.config_keys.fullscreen_notification)
this.graphicalCountdownSwitch.active = this._settings.get_boolean(this.config_keys.graphical_countdown)
this.alarmSoundSwitch.active = this._settings.get_boolean(this.config_keys.use_alarm_sound)
let list = this._settings.get_value(this.config_keys.steep_times).unpack();
@ -242,16 +224,6 @@ class TeaTimePrefsWidget extends Gtk.Grid {
this.treeview.get_selection().unselect_all();
}
_saveFullscreenNotifications(sw, data) {
// don't update the backend if someone else is messing with the model
if (this._inhibitUpdate)
return;
this._inhibitUpdate = true;
this._settings.set_boolean(this.config_keys.fullscreen_notification,
sw.active);
this._inhibitUpdate = false;
}
_saveGraphicalCountdown(sw, data) {
// don't update the backend if someone else is messing with the model
if (this._inhibitUpdate)

View File

@ -15,7 +15,6 @@ function debug(text) {
function GetConfigKeys() {
return {
steep_times: 'steep-times',
fullscreen_notification: 'fullscreen-notification',
graphical_countdown: 'graphical-countdown',
use_alarm_sound: 'use-alarm-sound',
alarm_sound: 'alarm-sound-file'