gnome-shell/js/ui
Jonas Dreßler 245137ff35 appDisplay: Fix multi-page dragging behavior in folders
Folders reflow across pages because they don't set
allow_incomplete_pages to true. This means we want the nudging of items
to happen slightly differently when dragging an item across pages:

- When dragging from lower page index to a higher one, always reflow
towards the start of the grid (because there's now an empty slot on the
old page and items on the new page will force-reflow towards that)
- When dragging from a higher page index to a lower one, we can reflow to
the end as we usually do

To archive this, factor out the selection of "reflow direction" into a
separate variable that always defaults to "end" (because empty space is
always at the end of the grid). Set it to "start" when the item created an
empty slot on the current page or (and this is new:) on a previous page in
the folder case.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2348>
2023-02-01 12:56:28 +00:00
..
components js: Use async D-Bus wrappers 2022-08-01 18:51:14 +00:00
status Revert "status/volume: Clear device menus when unsetting stream" 2023-01-27 12:53:33 +00:00
accessDialog.js accessDialog: Don't add an empty body 2023-01-17 13:51:54 +00:00
altTab.js altTab: Always include label in thumbnail 2022-10-18 18:04:57 +00:00
animation.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
appDisplay.js appDisplay: Fix multi-page dragging behavior in folders 2023-02-01 12:56:28 +00:00
appFavorites.js Adopt EventEmitter class instead of injecting Signal methods 2022-07-04 18:30:49 -04:00
appMenu.js js: Queue 'later' via MetaLaters 2022-12-16 22:12:59 +01:00
audioDeviceSelection.js js: Queue 'later' via MetaLaters 2022-12-16 22:12:59 +01:00
background.js js: Get monitor manager from backend 2022-12-16 22:12:59 +01:00
backgroundMenu.js backgroundMenu: Drop grab-op-begin signal connection 2023-01-30 12:19:22 +00:00
barLevel.js cleanup: Define GObject accessors in camelCase 2021-02-03 20:19:29 +01:00
boxpointer.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
calendar.js calendar: Unbind settings when destroying 2022-11-25 22:09:37 +01:00
checkBox.js checkbox: Improve accessibility of check boxes for Orca users 2020-03-29 12:56:33 +00:00
closeDialog.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
ctrlAltTab.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
dash.js dash: Connect before destroying 2023-01-17 13:58:06 +00:00
dateMenu.js cleanup: Use deepUnpack() intead of deep_unpack() 2022-08-10 10:29:24 +00:00
dialog.js js: Queue 'later' via MetaLaters 2022-12-16 22:12:59 +01:00
dnd.js Adopt EventEmitter class instead of injecting Signal methods 2022-07-04 18:30:49 -04:00
edgeDragAction.js edgeDragAction: Drop grab-op-begin signal connection 2023-01-30 12:19:22 +00:00
endSessionDialog.js loginManager: Return objects instead of multiple booleans 2022-08-01 20:58:37 +02:00
environment.js environment: Set time zero when animations are disabled 2022-11-04 14:14:34 +01:00
extensionDownloader.js js: Use templates for non-translatable strings 2022-02-12 12:29:52 +00:00
extensionSystem.js extensions: Refactor extension system for asynchronous loading 2022-12-01 12:59:32 +00:00
focusCaretTracker.js Adopt EventEmitter class instead of injecting Signal methods 2022-07-04 18:30:49 -04:00
grabHelper.js Require both mouse and keyboard grabs for some grabs to be successful 2022-05-04 17:28:08 +00:00
ibusCandidatePopup.js ibusCandidatePopup: Prevent it from covering screenshot UI 2022-07-04 13:38:15 +00:00
iconGrid.js iconGrid: Also consider left/right empty space as drop targets 2023-02-01 12:56:28 +00:00
inhibitShortcutsDialog.js inhibitShorcutsDialog: Fix permission check 2022-11-19 00:48:25 +00:00
init.js init: Set console log domain 2021-09-01 14:55:47 +00:00
kbdA11yDialog.js kbdA11yDialog: Use MetaKeyboardA11yFlags 2022-06-16 09:38:20 +00:00
keyboard.js keyboard: Change osk menu entry to control-center keyboard pane 2022-11-24 13:49:55 +01:00
layout.js js: Get monitor manager from backend 2022-12-16 22:12:59 +01:00
lightbox.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
locatePointer.js locatePointer: Bind ripples creation to settings 2019-09-09 19:28:18 +00:00
lookingGlass.js js: Queue 'later' via MetaLaters 2022-12-16 22:12:59 +01:00
magnifier.js Adopt EventEmitter class instead of injecting Signal methods 2022-07-04 18:30:49 -04:00
main.js js: Queue 'later' via MetaLaters 2022-12-16 22:12:59 +01:00
messageList.js messageList: Only close messages via delete key if they can be closed 2022-06-04 15:23:45 +02:00
messageTray.js signalTracker: Explicitly register destroyable types 2022-03-06 00:10:03 +00:00
modalDialog.js Require both mouse and keyboard grabs for some grabs to be successful 2022-05-04 17:28:08 +00:00
mpris.js cleanup: Use deepUnpack() intead of deep_unpack() 2022-08-10 10:29:24 +00:00
notificationDaemon.js cleanup: Use deepUnpack() intead of deep_unpack() 2022-08-10 10:29:24 +00:00
osdMonitorLabeler.js js: Get monitor manager from backend 2022-12-16 22:12:59 +01:00
osdWindow.js osdWindow: Implement new OSD design 2022-02-12 15:28:52 +00:00
overview.js overview: Port to Meta.Display.is_grabbed() 2023-01-30 12:19:22 +00:00
overviewControls.js overview: Make preparation to enter/leave overview explicit 2022-11-25 15:19:37 +00:00
padOsd.js padOsd: Replace Gtk accelerator API usage with Mutter 2023-01-02 13:26:49 +01:00
pageIndicators.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
panel.js panel,windowMenu: Update to meta_window_begin_grab_op() API change 2023-01-30 12:19:22 +00:00
panelMenu.js js: Use templates for non-translatable strings 2022-02-12 12:29:52 +00:00
pointerA11yTimeout.js ui: Use ClutterSeat for keyboard/pointer a11y 2020-01-30 17:49:08 +00:00
pointerWatcher.js js: Get idle monitor from backend 2021-05-18 13:42:52 +00:00
popupMenu.js popupMenu: Close quick settings when activating settings action 2022-08-02 16:05:28 +00:00
quickSettings.js js: Queue 'later' via MetaLaters 2022-12-16 22:12:59 +01:00
remoteSearch.js search: Stop special-casing GNOME Settings on search 2022-12-15 19:02:02 +00:00
ripples.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
runDialog.js runDialog: Use single quotes for Wayland restart warning 2022-05-31 18:35:41 +00:00
screenShield.js screenShield: Add API to add/remove credential managers 2023-01-23 20:37:46 +00:00
screenshot.js screenshot: Cache ScreencastSupported property 2022-11-09 11:15:04 +00:00
scripting.js tests: Add test running basic perf test 2022-11-25 22:09:53 +01:00
search.js js: Queue 'later' via MetaLaters 2022-12-16 22:12:59 +01:00
searchController.js searchController: Use connectObject for the stage key focus signal 2022-11-25 22:09:37 +01:00
sessionMode.js fileUtils: Refactor collectFromDatadirs to be a generator 2022-12-01 12:59:32 +00:00
shellDBus.js js: Get monitor manager from backend 2022-12-16 22:12:59 +01:00
shellEntry.js shellEntry: Remove unused variable 2022-10-14 22:32:30 +00:00
shellMountOperation.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
slider.js slider: Use Clutter.grab() for implicit grab 2022-01-29 01:16:29 +01:00
swipeTracker.js swipeTracker: Drop grab-op-begin signal connection 2023-01-30 12:19:22 +00:00
switcherPopup.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
switchMonitor.js js: Get monitor manager from backend 2022-12-16 22:12:59 +01:00
unlockDialog.js lockscreen: Style cleanup for lock and login 2023-01-06 11:29:31 +00:00
userWidget.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
welcomeDialog.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
windowAttentionHandler.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
windowManager.js windowManager: Drop grab-op-begin signal connection 2023-01-30 12:19:22 +00:00
windowMenu.js panel,windowMenu: Update to meta_window_begin_grab_op() API change 2023-01-30 12:19:22 +00:00
windowPreview.js js: Queue 'later' via MetaLaters 2022-12-16 22:12:59 +01:00
workspace.js workspace: Port WorkspaceBackground allocate to C 2022-08-03 12:30:31 +00:00
workspaceAnimation.js workspaceAnimation: Get time outside of the animation-complete callback 2022-03-13 00:06:03 +00:00
workspacesView.js js: Queue 'later' via MetaLaters 2022-12-16 22:12:59 +01:00
workspaceSwitcherPopup.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
workspaceThumbnail.js js: Queue 'later' via MetaLaters 2022-12-16 22:12:59 +01:00
xdndHandler.js Adopt EventEmitter class instead of injecting Signal methods 2022-07-04 18:30:49 -04:00