Allen Winter
6f6679d6be
update copyright year to 2023
2023-01-06 12:24:12 -05:00
Sergio Martins
3260c65a6c
Add DropLocation_Horizontal and DropLocation_Vertical
...
So we can quickly use a bitwise and to see if an arbitrary
drop location is vertical or horizontal.
2022-06-02 16:16:24 +01:00
Sergio Martins
982904e2ba
Pass the DropArea to setDropIndicatorAllowedFunc() too
...
So the lambda can have more advanced usage and inspect the
target layout before allowing or disallowing the drop.
For our use case, we want to limit max 3 dock widgets side by side,
for example.
2022-06-02 15:19:01 +01:00
Sergio Martins
6166e5805c
Don't show middle dock indicator if frame isn't dockable
...
This was implemented but the logic was wrong.
Fixes central persistent showing the central indicator.
2022-04-19 15:53:42 +01:00
Sergio Martins
54bf24d5d4
Added Config::setDropIndicatorAllowedFunc()
2022-02-11 19:49:23 +00:00
Sergio Martins
76cbb760ed
Minor refactoring before introducing DropIndicatorAllowedFunc
...
Deals with all the false case first
2022-02-11 19:07:28 +00:00
Sergio Martins
4824a398ab
Move DropIndicatorOverlayInterface::DropLocation enum to namespace scope
...
It's public now
2022-02-11 18:14:26 +00:00
Sergio Martins
a502a8250b
Fix possible nullptr dereference
2022-02-11 17:42:09 +00:00
Sergio Martins
79cc347cd8
Refactor: Move indicator visibility logic into base class
2022-02-11 16:42:07 +00:00
Sergio Martins
128645693c
nested_mdi: Fix DnD over dock widgets docked in MDI
...
Dragging was always detecting the main window's drop indicator
overlay. Make it transparent for mouse events, so that
QWidget::childAt() doesn't pick it, and we can see the inner
drop areas.
2022-01-23 23:31:50 +00:00
Allen Winter
93e60a743e
update copyright year
2022-01-20 08:05:26 -05:00
Sergio Martins
cd0f2f4e33
Introduced Config::setDropIndicatorsInhibited(bool)
...
Allows you to disable support for drop indicators while dragging
2021-05-18 18:00:04 +01:00
Sergio Martins
fc028ec0be
Minor refactoring
2021-05-18 17:49:14 +01:00
Allen Winter
a2f4c972a6
update copyright year
2021-01-02 09:27:50 -05:00
Sergio Martins
66f447ad3f
qtquick: Fix crash when hovering over titlebar
...
It would think we were over a drag indicator, because during an instant
the overlay window has 0x0 size but the indicators are still visible.
Fix by only showing the overlay window (visible property) when it has
the correct size
2020-11-28 17:11:46 +00:00
Sergio Martins
c2cc914b5c
indicators: Depend less on FloatingWindow
...
Deal in terms of WindowBeingDragged instead, as wayland won't have
a floating window being dragged
2020-10-14 19:39:51 +01:00
Sergio Martins
35076bbdb6
indicators: Update the indicator's visibility in the base class
...
So derived classes don't have to.
Doesn't affect ClassicIndicators, since it uses a separate
window for them. But useful for new indicator types.
2020-08-22 19:58:45 +01:00
Sergio Martins
2dc98804f4
qml|indicators: Use frame geometry instead of frame rect
...
The rect is always at 0,0, not very useful.
2020-08-22 19:53:20 +01:00
Sergio Martins
0aee56114b
qml: Dropping a dragged window now works
2020-08-11 23:40:07 +01:00
Sergio Martins
b3ec7423e8
qml: The inner indicators are now centered
2020-08-11 22:19:51 +01:00
Sergio Martins
dc3aa354ec
Minor code styling: Remove unneeded indentation
2020-08-09 18:13:23 +01:00
Sergio Martins
e66cbae09f
qml: Remove QWidget'isms from TitleBar and from the overlay interface
2020-07-26 16:16:06 +01:00
Allen Winter
b4f49895c2
clarify: licensing is GPL2 or GPL3 or commercial licensed
...
follow the REUSE specs
2020-07-24 18:16:13 -04:00
Sergio Martins
16aac70510
Make MultiSplitter inherit from Layouting::Widget too
...
Since it's the host widget.
Fixes the Widget wrapper leaking. And no need for so much boiler-plate
2020-05-24 18:25:19 +01:00
Allen Winter
df692686e7
various - update copyright year
2020-01-07 11:36:56 -05:00
Sergio Martins
787f7802be
Move the private code into a private/ folder
...
It's nice to have a similar include hierarchy at build time and install
time.
It also makes things more explicit
2019-10-20 19:24:54 +01:00