Clemens Zeidler
934c820ce8
Include resize area for S&T operations.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39005 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-18 16:08:46 +00:00
Clemens Zeidler
07a8c14656
Only allow stacking if the candidate window is dragged using the window tab.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39004 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-18 15:49:14 +00:00
Clemens Zeidler
007179caca
Use the mouse x position and the candidate tab top when searching for a stacking parent. I think this makes the stacking detection more intuitive.
...
The candidate window is the dragged window and the parent window is the window that accept the SAT operation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39003 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-18 15:40:44 +00:00
Clemens Zeidler
975a7dd89d
Make the stacked tab length a bit bigger and only cut the string at the end if the tab becomes small.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38907 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-09 20:57:15 +00:00
Clemens Zeidler
c26897652c
Use the static linprog lib.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-04 20:18:45 +00:00
Clemens Zeidler
a2336b86cc
Round the the window move target positions, this should fix jumping windows.
...
Coding style.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38789 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-22 22:27:31 +00:00
Clemens Zeidler
7306ba0448
Watch the window look and remove a window from a S&T group if the look changed to B_NO_BORDER_WINDOW_LOOK.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38731 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-19 21:46:42 +00:00
Clemens Zeidler
3ae8f84c3d
Better check if the area exist.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38730 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-19 21:41:53 +00:00
Clemens Zeidler
e0c538ed7d
A decorator can change during the lifetime of a window so get a fresh decorator every time.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38729 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-19 21:08:47 +00:00
Clemens Zeidler
a4dab27fab
Fix crash #6615 and #6566 .
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38728 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-19 20:54:06 +00:00
Clemens Zeidler
cc4f4ca5f8
Don't try to split a group if there is still a window stacked in a WindowArea.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38727 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-19 20:25:29 +00:00
Clemens Zeidler
6f4b6e915b
Also change it in S&T.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38726 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-19 20:24:19 +00:00
Rene Gollent
4f9892e0f8
Build fix.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38692 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-17 18:21:54 +00:00
Clemens Zeidler
d256161aec
Calculate a better size limit in a stacking group.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38683 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-17 05:46:13 +00:00
Clemens Zeidler
dcbc4af5d1
- Add size limit changes to the listener interface.
...
- Update size limit constraints in S&T only if necessary.
- Header style fixes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38682 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-17 04:04:02 +00:00
Clemens Zeidler
d2cf4da51f
Fix min/max size calculation.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38681 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-17 01:10:13 +00:00
Clemens Zeidler
5733bbb94b
If the constraints are infeasible don't move the windows because the target positions are not valid. Partially fix #6631 .
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38680 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-16 22:02:17 +00:00
Clemens Zeidler
caefa86759
Fix highlighting of the tiling parents.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38657 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-15 05:24:54 +00:00
Clemens Zeidler
727c8ba2c9
Improve min constraints and add max constraints, not perfect yet but much better then before.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38643 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-14 05:23:05 +00:00
Clemens Zeidler
40c0ae4804
Only search for new snapping parents if there is also a snapping candidate. Thanks Humdinger for finding this bug.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38625 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-12 22:40:08 +00:00
Clemens Zeidler
3ef84cd4bb
Check if the mouse click is in the decorator drag area.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38572 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-07 21:27:13 +00:00
Clemens Zeidler
8875d8af63
Tune parameter and fix a comment.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38518 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-03 04:49:56 +00:00
Clemens Zeidler
a6771397dc
Store the stacking order to restore it if a window changed its layer position.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38517 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-03 03:55:29 +00:00
Clemens Zeidler
7fe05355e3
Also manage a list of all areas in a group.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38516 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-03 00:34:54 +00:00
Clemens Zeidler
d4bbf5c221
Clean up.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38515 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-02 23:58:26 +00:00
Clemens Zeidler
743d974099
Floor the tabLength to avoid drawing bugs. Add the leftover of this cutting to the last tab.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38511 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-02 03:51:29 +00:00
Clemens Zeidler
af89e8106a
Remove unused function.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38510 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-02 03:30:14 +00:00
Clemens Zeidler
d344b03a93
Ensure that the window is in the front when using focus follow mouse.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38509 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-02 03:10:55 +00:00
Clemens Zeidler
04674450ad
- Do the window layout on every resize. This is e.g. needed to do the tab layout.
...
- Use old ActivateWindow implementation till the Desktop SendBehind question is solved.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38508 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-02 03:05:58 +00:00
Clemens Zeidler
e9ec3d5a49
In stack mode, draw the zoom button if the window is active otherwise use the space to draw the title. The idea to draw one zoom button at the rightmost tab does not work because in focus follow mouse mode the particular tab may loose the focus when move the mouse to the zoom button.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38487 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-01 04:09:08 +00:00
Clemens Zeidler
cb2fa7e665
Coding style.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38476 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-31 05:42:18 +00:00
Clemens Zeidler
26152d9e07
- Increase max size for stacked tabs.
...
- Use more title space in stacked tabs.
- Fix tab movement in stacked mode.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38475 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-31 05:36:09 +00:00
Clemens Zeidler
fef53dfffd
When activating one window in a group send all other windows behind this window and not activate them. This fix flickering of stacked windows.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-31 02:07:15 +00:00
Clemens Zeidler
ccaae539b4
Call the correct method to minimize/activate a window. Previously the BWindow got out of sync and activation of a window haven't worked probably.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38359 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-25 21:22:26 +00:00
Clemens Zeidler
1da17f129a
Clean up.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38314 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-23 06:39:47 +00:00
Clemens Zeidler
7d69f43e9f
- Update the size constraints when a window has been resized.
...
- Remove superflouse and wrong SetRange.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38313 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-23 06:27:08 +00:00
Clemens Zeidler
668e181957
Move constraint solving to the rest of the constraint stuff. Only adjust windows if specifications are feasible.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-20 02:21:34 +00:00
Clemens Zeidler
de8a0836ac
Fix coding style.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38219 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-17 23:48:47 +00:00
Clemens Zeidler
19f43b9f6a
SATDecorator implements event handling and handles the stacking api requests.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38170 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-17 06:41:35 +00:00
Clemens Zeidler
756e5df62f
Fix gcc2 build.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38076 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-13 04:06:58 +00:00
Clemens Zeidler
bc7f766f5d
Use new listener interface.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38073 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-12 23:06:11 +00:00
Clemens Zeidler
b960e45194
Add the SATDecorator. This is a new implementation of Stack and Tile with a different tiling logic. For example, this should make overlapping windows in the same tiling group impossible. There are still many issues I know about and this version is far from usable but the basic features are working now. So if you like to test it at this state please only report errors like crashes or memory leaks (think there is one).
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-12 22:37:16 +00:00
Axel Dörfler
3a5082aa46
* Got rid of the home brewn double click detection - we're now simply using the
...
"clicks" field of the mouse message as everywhere else.
* Renamed Decorator::Clicked() to MouseAction().
* Minor style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37996 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-10 09:14:46 +00:00
Clemens Zeidler
f8751b1fe6
Fix coding style.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-03 20:33:05 +00:00
Adrien Destugues
4d978eea2f
* Fix the WinDecorator and some parts of the MacDecorator
...
* Since they all work reasonalbly well, add them to the default image. (beOs had them after all)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37864 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-03 10:32:19 +00:00
Clemens Zeidler
b9857cc356
Adapt MacDecorator to the new addon interface.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37859 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-03 04:46:21 +00:00
Clemens Zeidler
1649544d81
Adapted the ClassicBe decorator to the new DecorAddOn interface.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-03 04:38:38 +00:00
Clemens Zeidler
4d1aa4a619
Some coding style fixes.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37854 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-02 23:16:19 +00:00
Adrien Destugues
75e29683b2
* BeDecorator : use _InvalidateFootprint as in the default decorator.
...
* MacDecorator : use _InvalidateFootprint and implement _MoveBy. This makes the MacDecorator work fine again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37615 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 10:47:11 +00:00
Adrien Destugues
a6036edea1
* Update the MacDecorator to be more in-line with the new API. It still doesn't draw anything, however.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37589 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-19 12:12:18 +00:00