appDisplay: Don't resort folders when name changes

With a customizable app grid, we don't want folders to move
after renaming. Their position is fixed.

Remove the sort-after-rename code from AppDisplay.

https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1284
This commit is contained in:
Georges Basile Stavracas Neto 2020-05-26 18:55:18 -03:00 committed by Florian Müllner
parent f4ce1cf462
commit 783dbe2aa9

View File

@ -16,7 +16,6 @@ const PopupMenu = imports.ui.popupMenu;
const Search = imports.ui.search; const Search = imports.ui.search;
const SwipeTracker = imports.ui.swipeTracker; const SwipeTracker = imports.ui.swipeTracker;
const Params = imports.misc.params; const Params = imports.misc.params;
const Util = imports.misc.util;
const SystemActions = imports.misc.systemActions; const SystemActions = imports.misc.systemActions;
var MENU_POPUP_TIMEOUT = 600; var MENU_POPUP_TIMEOUT = 600;
@ -755,23 +754,6 @@ class AppDisplay extends BaseAppView {
this._pageManager.pages = pages; this._pageManager.pages = pages;
} }
_itemNameChanged(item) {
// If an item's name changed, we can pluck it out of where it's
// supposed to be and reinsert it where it's sorted.
let oldIdx = this._orderedItems.indexOf(item);
this._orderedItems.splice(oldIdx, 1);
let newIdx = Util.insertSorted(this._orderedItems, item, this._compareItems.bind(this));
this._grid.removeItem(item);
const { itemsPerPage } = this._grid;
const page = Math.floor(newIdx / itemsPerPage);
const position = newIdx % itemsPerPage;
this._grid.addItem(item, page, position);
this.selectApp(item.id);
}
getAppInfos() { getAppInfos() {
return this._appInfoList; return this._appInfoList;
} }
@ -821,7 +803,6 @@ class AppDisplay extends BaseAppView {
let icon = this._items.get(id); let icon = this._items.get(id);
if (!icon) { if (!icon) {
icon = new FolderIcon(id, path, this); icon = new FolderIcon(id, path, this);
icon.connect('name-changed', this._itemNameChanged.bind(this));
icon.connect('apps-changed', this._redisplay.bind(this)); icon.connect('apps-changed', this._redisplay.bind(this));
} }
@ -1595,7 +1576,6 @@ class FolderView extends BaseAppView {
var FolderIcon = GObject.registerClass({ var FolderIcon = GObject.registerClass({
Signals: { Signals: {
'apps-changed': {}, 'apps-changed': {},
'name-changed': {},
}, },
}, class FolderIcon extends AppViewItem { }, class FolderIcon extends AppViewItem {
_init(id, path, parentView) { _init(id, path, parentView) {
@ -1729,7 +1709,6 @@ var FolderIcon = GObject.registerClass({
this._name = name; this._name = name;
this.icon.label.text = this.name; this.icon.label.text = this.name;
this.emit('name-changed');
} }
_sync() { _sync() {