Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support gnome 40 and 41 #408

Merged
merged 116 commits into from
Aug 15, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
116 commits
Select commit Hold shift + click to select a range
77e78d7
wip: do DnD outside mutter grab
olejorgenb Jan 18, 2020
d1e392d
Use clones global coordinates to insert
hedning Jan 18, 2020
0368271
Ensure all windows in the space belong to the workspace before comple…
olejorgenb Jan 19, 2020
60d1ad7
Do DnD outside mutter grab
olejorgenb Jan 19, 2020
86a91c2
utils: less verbose trace functions
olejorgenb Jan 19, 2020
851157d
DnD mouse cursor
olejorgenb Jan 21, 2020
3752114
wip: always use fake grab
hedning Jan 24, 2020
c6ad376
wip: grab everywhere
hedning Jan 24, 2020
095cc72
better pointeroffset
hedning Jan 24, 2020
371453c
fix grab y position
hedning Jan 25, 2020
85c0c9d
fix some coordinate transforms
hedning Jan 25, 2020
685c1ea
guard
hedning Jan 25, 2020
01d9ce4
navigator: start dnd if in grab
hedning Jan 25, 2020
049c133
isWindowAtPoint: use correct clone coordinate
hedning Jan 25, 2020
369d3c9
get_coords doesn't take scaling into account
hedning Jan 25, 2020
df0cdbc
position clone correctly when popped out of scaled space
hedning Jan 25, 2020
b75a49c
navigator: always start dnd if grab is active
hedning Jan 25, 2020
06d1a76
space button-press: navigate to space if clicking on background
hedning Jan 25, 2020
2ebc2a0
grab: remove positionChanged
hedning Jan 25, 2020
41778b1
grab: remove scroll-event
hedning Jan 25, 2020
8afae53
space: only scroll if navigating or in a grab
hedning Jan 25, 2020
76f0811
reposition clone using pointer after insertion
hedning Jan 25, 2020
f257e26
navigator: rewrite finish/destroy code
hedning Jan 25, 2020
19b668d
navigate to correct space on grab.end()
hedning Jan 26, 2020
cf09b93
cleanup
hedning Jan 26, 2020
d6dc25e
non dnd motion: coords were already monitor relative
hedning Jan 26, 2020
ff527b9
navigator: never move a visible space
hedning Jan 26, 2020
73442b9
begin dnd when pointer moves to another monitor
hedning Jan 26, 2020
de4a31b
Ensure grab window remains focused when ending navigation before dnd
olejorgenb Jan 27, 2020
b1f6130
space: fix scroll direction
hedning Jan 27, 2020
abe9ac1
moveDone: guard against all grabbing
hedning Jan 28, 2020
ab33b9a
grab: make re-grabbing a window smoother
hedning Jan 28, 2020
bf2de90
Always run a complete switch workspace handler on navigation end (inP…
olejorgenb Jan 29, 2020
5aeab6f
Only react to background clicks when in preview mode
olejorgenb Jan 29, 2020
ab7e7cc
utils:trace: don't require a metawindow
olejorgenb Jan 29, 2020
4670338
wip: implemnt keyboard grab
hedning Feb 13, 2020
a2312dd
refactor to globalToScroll and globalToViewport
hedning Feb 15, 2020
04a0e5e
utils: crude actor tree printer
olejorgenb Feb 8, 2020
78dd56d
dnd: create zones and actors on the fly
olejorgenb Feb 16, 2020
ecf487c
dnd: handle empty spaces (on demand zones)
olejorgenb Feb 16, 2020
6e22da7
dnd: rip out the window immediatedly when ctrl is held down
olejorgenb Feb 16, 2020
775db1b
navigator: Start DnD if grab is active on finish
hedning Feb 20, 2020
87b6518
scratch: Add animateWindows and showWindows
hedning Feb 20, 2020
25fcdea
Substitute scratch windows with clones
hedning Feb 20, 2020
a4fd3e4
navigator: pseudo focus when hitting escape in grab
hedning Feb 20, 2020
94529ad
dnd: hide minimap
hedning Feb 20, 2020
512ea78
begin: fix scratchish detection
hedning Feb 21, 2020
45608e0
grab: fix for scratch windows
hedning Feb 21, 2020
61ff9ce
fix clone jumping when dragging in a scaled space
hedning Feb 21, 2020
0be41a0
dnd: rip out the window immediatedly when ctrl is held down (scratch …
olejorgenb Feb 22, 2020
ac58cb5
ctrl grab: support gnome 3.36
hedning Feb 22, 2020
09020cc
dnd: restore wider zone on empty workspaces (regression)
olejorgenb Feb 23, 2020
7406287
dnd: bugfix zone selection
olejorgenb Feb 23, 2020
9c94606
navigator: do action before forcing dnd
hedning Feb 23, 2020
d1e594e
navigator finish: ensure moveDone is run
hedning Mar 1, 2020
7bc192a
grab: pass the correct focus window to navigator
hedning Mar 8, 2020
9c232f2
getModiferState: always return 0 on X11
olejorgenb Mar 14, 2020
87de4aa
Bugfix: (X11 only?) fix occationally initial jump when moving window
olejorgenb May 29, 2020
5f8dc39
Hack to make clone marks survive grabs
olejorgenb May 29, 2020
eb051c4
get_pointer seems to be a reliable way to get modifiers on both X11 a…
olejorgenb May 29, 2020
529fb80
playground
olejorgenb Nov 24, 2019
0a99590
viewport positioning
olejorgenb Nov 24, 2019
87b70bf
...
olejorgenb Nov 24, 2019
c1de5eb
WIP
olejorgenb Mar 16, 2020
465a6ea
fixup! WIP
olejorgenb Mar 28, 2020
9a991db
fixup! WIP
olejorgenb Mar 28, 2020
9e29438
utils: fixes to printActorTree
olejorgenb Mar 28, 2020
6aba572
Name some actors we use to aid debugging
olejorgenb Mar 28, 2020
80a9fb1
examples/keybindings: small fix swap-neighbours
olejorgenb Mar 28, 2020
9addaf8
examples/keybindings: expand-available-width
olejorgenb Mar 28, 2020
fea0302
examples/keybindings: cycle-layouts
olejorgenb Mar 28, 2020
618726b
refactor: move minimumMargin function to a getter prop on `prefs`
olejorgenb May 30, 2020
d9bd8f9
WIP:
olejorgenb May 30, 2020
01201b3
semicolons
olejorgenb May 30, 2020
f6e9ab4
add left binding for fit available
olejorgenb May 30, 2020
aeda0cf
Polyfill version info for gnome 40
hedning Apr 5, 2021
61546c4
Claim to support gnome 40
hedning Apr 5, 2021
4e15a1c
kludges: viewSelector no longer exists
hedning Apr 5, 2021
e9f7148
window creation: queue redraw no longer exists
hedning Apr 5, 2021
330de23
Converting Settings.ui to GTK4
Gelbana Oct 16, 2021
467a9d7
Fix the crashing extensions UI
Gelbana Oct 16, 2021
c935a0c
Fix window movement with mouse
Gelbana Oct 16, 2021
2cb7cc1
Fix - Invalid keybinding display in ext settings
Gelbana Nov 21, 2021
b600ec4
Fix - Overview not showing any windows
Gelbana Dec 1, 2021
676ad9f
Set compatibility to Gnome 40+
Gelbana Dec 23, 2021
38d53d0
Fix - Crashing on lock (viewSelector changes)
Gelbana Dec 23, 2021
9a25ae0
Merge pull request #2 from Gelbana/next-release
michaelhthomas Dec 23, 2021
9215064
Update metadata.json
michaelhthomas Dec 23, 2021
219adcc
Add soft fork explanation to README.md
smichel17 Dec 23, 2021
329a65c
Merge pull request #3 from smichel17/patch-1
michaelhthomas Dec 23, 2021
3e4dcd1
Add soft-fork explanation to next-release
michaelhthomas Dec 23, 2021
ad9fb43
Revert "Add soft-fork explanation to next-release"
michaelhthomas Dec 23, 2021
4511f4e
PR Friendliness Revision
michaelhthomas Dec 23, 2021
9c36296
Add workspace animation fix to kludges
michaelhthomas Dec 23, 2021
b3103b2
prefs.js: Initial port to GTK 4
tadfisher Sep 20, 2021
fdc4767
Improve prefs layout
tadfisher Sep 21, 2021
e704f0f
prefs: Clean up file chooser handling
tadfisher Sep 22, 2021
3dc1e34
Merge pull request #7 from PaperWM-community/fix-workspace-animation
michaelhthomas Dec 24, 2021
e1933e7
Add note about branches to the readme
smichel17 Dec 24, 2021
5975680
Rewrite keybindings editor
tadfisher Sep 30, 2021
c964f3d
fix: don't barf with a null metaWindow
mskorzhinskiy Dec 26, 2021
1726994
fix: panel.actor is deprecated, use panel directly
mskorzhinskiy Dec 27, 2021
11b0349
fix: messagetray.actor is deprecated, use directly
mskorzhinskiy Dec 27, 2021
b66aaf1
Merge pull request #8 from tadfisher/gtk4
michaelhthomas Jan 11, 2022
099df55
fix use of deprecated source.notify()
cg505 Feb 18, 2022
b65e212
Revert change to return values (accelerator_parse)
Gelbana Mar 8, 2022
b4b0231
Merge remote-tracking branch 'origin/develop' into merge-upstream
smichel17 Jul 3, 2022
2852073
Merge pull request #29 from PaperWM-community/merge-upstream
smichel17 Jul 9, 2022
083cab3
Merge pull request #31 from PaperWM-community/develop
smichel17 Jul 9, 2022
102ca56
Merge pull request #14 from mskorzhinskiy/fix/dont-barf-on-null
smichel17 Jul 9, 2022
f73bfc2
Merge pull request #15 from mskorzhinskiy/fix/actor-deprecated
smichel17 Jul 9, 2022
a0e8661
Merge pull request #21 from cg505/fix-notify
smichel17 Jul 9, 2022
e404b59
Merge pull request #22 from Gelbana:next-release
smichel17 Aug 15, 2022
79dd46d
tiling: Remove topBarAdjustment from workArea
tadfisher Dec 23, 2021
ccb273a
Merge pull request #9 from tadfisher/remove-topBarAdjustment
smichel17 Aug 15, 2022
aeecb5a
Remove fork notice
smichel17 Aug 15, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .dir-locals.el
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,6 @@
(org-indent-mode . t))
(js-mode
(mode . gnome-shell))
(js2-mode
(js2-basic-offset . 4))
)
112 changes: 112 additions & 0 deletions KeybindingsComboRow.ui
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk" version="4.0" />
<template class="ComboRow" parent="GtkListBoxRow">
<property name="selectable">False</property>
<property name="activatable">True</property>
<property name="focusable">True</property>
<property name="focus-on-click">True</property>

<property name="child">
<object class="GtkStack" id="stack">
<child>
<object class="GtkStackPage">
<property name="child">
<object class="GtkBox" id="shortcutPage">
<property name="hexpand">True</property>
<property name="spacing">12</property>
<child>
<object class="GtkShortcutLabel" id="shortcutLabel">
<property name="disabled_text" translatable="yes">Disabled</property>
</object>
</child>

<child>
<object class="GtkMenuButton" id="conflictButton">
<property name="tooltip_text" translatable="yes">Conflicts</property>
<property name="icon_name">dialog-error-symbolic</property>
<property name="popover">conflictPopover</property>
<property name="visible">False</property>
<style>
<class name="flat" />
<class name="circular" />
</style>
</object>
</child>

<child>
<object class="GtkButton" id="deleteButton">
<property name="hexpand">True</property>
<property name="halign">end</property>
<property name="tooltip_text" translatable="yes">Remove shortcut</property>
<property name="icon_name">edit-clear-symbolic</property>
<style>
<class name="flat" />
<class name="circular" />
</style>
<signal name="clicked" handler="_onDeleteButtonClicked" />
</object>
</child>

</object>
</property>
</object>
</child>
<child>
<object class="GtkStackPage">
<property name="child">
<object class="GtkLabel" id="placeholderPage">
<property name="hexpand">True</property>
<property name="xalign">0.0</property>
<property name="use_markup">True</property>
<property name="label" translatable="yes">&lt;i&gt;Add shortcut…&lt;/i&gt;</property>
</object>
</property>
</object>
</child>
<child>
<object class="GtkStackPage">
<property name="child">
<object class="GtkLabel" id="editPage">
<property name="use_markup">True</property>
<property name="label" translatable="yes">Enter keyboard shortcut, &lt;b&gt;Backspace&lt;/b&gt; to delete or &lt;b&gt;Esc&lt;/b&gt; to cancel</property>
</object>
</property>
</object>
</child>
</object>
</property>
</template>

<object class="GtkPopover" id="conflictPopover">
<child>
<object class="GtkBox" id="about">
<property name="focusable">False</property>
<property name="orientation">vertical</property>
<property name="margin-start">12</property>
<property name="margin-end">12</property>
<property name="margin-top">12</property>
<property name="margin-bottom">12</property>
<property name="spacing">8</property>

<child>
<object class="GtkLabel">
<property name="label" translatable="yes">Conflicts:</property>
<style>
<class name="heading" />
</style>
</object>
</child>

<child>
<object class="GtkListBox" id="conflictList">
<property name="selection-mode">none</property>
<signal name="row-activated"
handler="_onConflictRowActivated" />

</object>
</child>
</object>
</child>
</object>
</interface>
44 changes: 44 additions & 0 deletions KeybindingsPane.ui
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
<?xml version="1.0" encoding="utf-8" ?>
<interface>
<requires lib="gtk" version="4.0"/>
<template class="KeybindingsPane" parent="GtkBox">
<property name="focusable">False</property>
<property name="orientation">vertical</property>
<child>
<object class="GtkSearchEntry" id="search">
<property name="activates-default">False</property>
<property name="halign">center</property>
<property name="margin-top">12</property>
<signal name="search-changed"
handler="_onSearchChanged" />
</object>
</child>
<child>
<object class="GtkScrolledWindow">
<property name="hscrollbar_policy">never</property>
<child>
<object class="GtkViewport">
<property name="focusable">False</property>
<property name="vexpand">True</property>
<child>
<object class="GtkListBox" id="listbox">
<property name="hexpand">True</property>
<property name="margin_start">36</property>
<property name="margin_end">36</property>
<property name="margin_top">12</property>
<property name="margin_bottom">36</property>
<property name="width_request">480</property>
<style>
<class name="keybindings" />
<class name="frame" />
</style>
<signal name="row-activated"
handler="_onRowActivated" />
</object>
</child>
</object>
</child>
</object>
</child>
</template>
</interface>
124 changes: 124 additions & 0 deletions KeybindingsRow.ui
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk" version="4.0" />
<template class="KeybindingsRow" parent="GtkListBoxRow">
<style>
<class name="keybinding" />
</style>
<property name="selectable">False</property>
<property name="activatable">True</property>
<property name="focusable">True</property>

<child>
<object class="GtkBox">
<property name="orientation">vertical</property>

<child>
<object class="GtkBox" id="header">
<property name="spacing">12</property>
<style>
<class name="header" />
</style>

<child>
<object class="GtkLabel" id="descLabel">
<style>
<class name="description" />
</style>
<property name="ellipsize">end</property>
<property name="halign">start</property>
<property name="lines">1</property>
<property name="wrap">True</property>
<property name="wrap-mode">word-char</property>
<property name="xalign">0</property>
</object>
</child>

<child>
<object class="GtkImage" id="conflictIcon">
<property name="visible">False</property>
<property name="icon-name">dialog-error-symbolic</property>
<property name="halign">start</property>
</object>
</child>

<child>
<object class="GtkLabel" id="accelLabel">
<property name="hexpand">True</property>
<property name="halign">end</property>
<property name="xalign">1.0</property>
<property name="use-markup">True</property>
<style>
<class name="dim-label" />
</style>
</object>
</child>
</object>
</child>

<child>
<object class="GtkRevealer" id="revealer">
<child>
<object class="GtkGrid">
<property name="hexpand">True</property>

<child>
<object class="GtkListBox" id="comboList">
<property name="activate-on-single-click">True</property>
<property name="hexpand">True</property>
<property name="selection-mode">none</property>
<style>
<class name="combos" />
</style>
<signal name="row-activated"
handler="_onRowActivated" />
<layout>
<property name="row">0</property>
<property name="column">0</property>
<property name="column-span">2</property>
</layout>
</object>
</child>

<child>
<object class="GtkButton" id="resetButton">
<property name="label" translatable="yes">Reset</property>
<property name="action-name">keybinding.reset</property>
<property name="halign">start</property>
<property name="margin-start">12px</property>
<property name="margin-top">8px</property>
<property name="margin-bottom">8px</property>
<layout>
<property name="row">1</property>
<property name="column">0</property>
</layout>
</object>
</child>

<child>
<object class="GtkButton" id="addButton">
<property name="label" translatable="yes">Add shortcut…</property>
<property name="action-name">keybinding.add</property>
<property name="hexpand">True</property>
<property name="halign">end</property>
<property name="margin-top">8px</property>
<property name="margin-end">12px</property>
<property name="margin-bottom">8px</property>

<layout>
<property name="row">1</property>
<property name="column">1</property>
</layout>
<style>
<class name="suggested-action" />
</style>
</object>
</child>
</object>
</child>
</object>
</child>
</object>
</child>
</template>
</interface>
Loading