Commit Graph

40292 Commits

Author SHA1 Message Date
Clemens Zeidler
bd545a2af2 Set the top layer tab when detaching a window from the stack.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42527 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-01 01:03:06 +00:00
Clemens Zeidler
2dae355ecb Fix window stack api and Desktop::WindowForClientLooperPort lock assert.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42526 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-01 00:56:23 +00:00
Scott McCreary
b0af58132b Fixed url for sdl-gfx.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42525 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-01 00:34:22 +00:00
Adrien Destugues
ab7cbe31c2 Always set the palette registers even if the head is not connected. This will not do anything bad (if the display is disabled, it has no
effect), and since the test was a bit too constraining (I have an LVDS panel on head A), it would prevent setting colors for the CMAP modes.

This finally gets the \n demo working from the original binary from BeOS, without any change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42523 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-31 18:11:26 +00:00
Alexander von Gluck IV
ef3a7658fa bug fix, POWER_SHUTDOWN vs POWER_ON
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42522 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-31 16:48:59 +00:00
Adrien Destugues
e1ac525ddf * Don't eat alt+space if there is only one input method available (the shortcut is meant to switch input methods)
Makes it useable in applications and less confusing. Fixes #6468.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42521 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-31 14:45:55 +00:00
Adrien Destugues
a4506dd3e7 Fix reverse condition. This would lead to the view getting Pulse messages both from it's own MessageRunner and from BWindow.
No functional change intended :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42517 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-30 19:51:28 +00:00
Alexander von Gluck IV
0e3075fb4d * Provide device chipset in accelerant_device_info
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42516 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-30 18:25:08 +00:00
Alexander von Gluck IV
6ab8261b98 * Pass device name into shared info
* Refactor MCFBsetup to be a little simpler for now
* Implement radeon accelerant_device_info for screen preflet
* Re-add CRT Power calls to display code.
* Disable blanking setting for now... just can't figure out
  what AMD wants for this.
* Remove some un-needed locking in the scaling code
* Be sure to disable VGA when set_display_mode is called
* Refactor mode setting code to loop over all possible displays
  and set the provided mode on the attached ones.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42515 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-30 17:45:14 +00:00
Joachim Seemer
f148b5ee04 Applied taos patch to fix the MIT license link. We'll see if it finally nailed the bugger when the translated catkeys arrive. Preliminarily fixes #7697. Thanks a lot.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42514 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-30 16:05:28 +00:00
Jérôme Duval
42a6ef881d Add Jian Jiang to the contributors list.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42512 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-29 10:15:49 +00:00
Jérôme Duval
d6e4f54f2d Patch by Jian Chiang as part of his GSoc Project (coding style fixes by myself):
* xhci controller start operation
* command ring and event ring initialization
* No-Op Command test and real xhci irq handle
* xhci root hub support
* add Super Speed enumeration and xhci_rh.cpp into jamfile


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42511 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-29 10:06:34 +00:00
Alexander von Gluck IV
3b1fd3270e * Remove return from testing
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42510 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-29 06:12:01 +00:00
Alexander von Gluck IV
eb02753779 * Little cleanup
* Add missing Idle call for connectors
* Reformulate blanking.. this should match what the
  register is after the GTF vesa call
* Set FrameBuffer to card internal address


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42509 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-29 06:10:52 +00:00
Alexander von Gluck IV
e1b9d6e674 * Add LVDS handling for TMDSB
* Fix crash situation if no monitors detected
* Assume TMDSB if no monitors sensed (temporary)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42508 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-29 03:32:01 +00:00
Joachim Seemer
87cec635c0 Updated Finnish catkeys. Thanks.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42507 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-27 06:53:04 +00:00
Clemens Zeidler
e4228c3760 Also make the right option key working as a S&T key.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42506 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-27 03:24:53 +00:00
Alexander von Gluck IV
a956672a33 * Fix a few spots where we were checking for NULL unneededly
* Fix a few spots where we *should* of been checking for NULL
  to prevent referencing a null pointer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42505 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-27 02:26:49 +00:00
Alexander von Gluck IV
13e2521356 * Fix free NULL check style violations
* Remove linux style EINVAL


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42504 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-27 01:42:43 +00:00
Clemens Zeidler
6ce29ffc97 Remove some debug left over.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42503 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 23:38:42 +00:00
Clemens Zeidler
8313747b53 As done in move, resize only the top layer window. The top layer window resizes the lower windows separately.
Use auto locker.
 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42502 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 23:18:28 +00:00
Clemens Zeidler
6a0ed7da53 Move S&T back into the app server.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42501 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 22:18:55 +00:00
Alexander von Gluck IV
659fefbd43 * Insert missing case break, CID 10659
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42500 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 18:36:49 +00:00
Alexander von Gluck IV
271ed0f390 * Fix improper sizeof, CID 10628
* Improve malloc check to look for NULL, CID 10698
* Remove unused size_t


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42499 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 18:27:39 +00:00
Alexander von Gluck IV
40a5a5a0ac * Rename of_region type template as per Axel
* Rename of_support.h/cpp back to support.cpp as per Axel


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42498 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 16:42:14 +00:00
Alexander von Gluck IV
bf0e980dc4 * Fix a few style issues as per Axel
* Rename a few variables to make more sense
* OF_FAILED is a signed int.. fix return of of_address_cells
* OF_FAILED is a signed int.. fix return of of_size_cells


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42497 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 15:09:18 +00:00
Clemens Zeidler
b9bedde479 Assert the right lock, thanks Axel. Some clean up.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42496 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 06:49:16 +00:00
Clemens Zeidler
4154a161ed Set the top tab every time when adding a new tab. This draws newly stacked tabs correctly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42495 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 06:34:34 +00:00
Clemens Zeidler
b7b6df07b8 When closing a window the window can't redraw the dirty region anymore. Mark the region of the remaining window dirty.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42494 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 06:15:41 +00:00
Clemens Zeidler
86b010824c * Draw the complete decorator off screen and copy it to the front when finished. Stippi please take a look. This fixes some flickering when drawing shifted tabs in stack mode. In stack mode the different tabs sometime repaint each other, thus the decorator has to been drawn double buffered to avoid artefacts.
* Add an option to draw the button directly, i.e. when they are clicked.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42493 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 05:53:35 +00:00
Clemens Zeidler
7c5525e834 Only allow windows with a normal thick border to S&T. Fixes #6647.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42492 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 04:37:27 +00:00
Clemens Zeidler
16aa61c46a Fix changing of the window feel and borderless windows.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42491 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 02:41:56 +00:00
Alexander von Gluck IV
ed8b50f79a small tab fix; no functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42490 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 22:52:00 +00:00
Alexander von Gluck IV
8320d948d5 small style fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42489 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 22:46:24 +00:00
Clemens Zeidler
3a850e1a1a Remove empty line, thanks Axel!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42488 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 22:40:59 +00:00
Clemens Zeidler
837ad4a36f Activate only the top window in a group and not all windows. Fixes #6652 and #6616.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42487 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 22:26:44 +00:00
Alexander von Gluck IV
d24ddec4e4 * Move platform support.cpp into less generic of_support.cpp
* Add header file to support of_support.cpp
* Add support functions to obtain address and size cell lengths
* Small style cleanups
* Add support for G5 PowerPC cpus...
* Refactor memory region code to be aware of 64-bit OF addresses.
  As-is the boot loader wouldn't start on G5 systems because
  OpenFirmware memory base addresses are stored as two 32-bit
  unsigned int 'cells' vs one 32-bit unsigned int 'cell' on G3/G4.
  I removed the static struct and replaced it with a template
  and pass uint32 or uint64 depending on the address cell size.
  Thanks for the idea DeadYak!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 22:26:35 +00:00
Alexander von Gluck IV
0bb924af97 * Add 4250, 4290 PCIIDs as per #7871
* Fix a few tabs to make things consistent


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42485 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 17:39:20 +00:00
Clemens Zeidler
898878314d Fix todo and only unload listener from the last add-on.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 05:07:26 +00:00
Clemens Zeidler
f4f30311aa Cleanup app server directory a bit by creating a font and a decorator sub folder.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42483 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 04:31:54 +00:00
Clemens Zeidler
418f391fb1 Fixes #7796. The decorator add-on is unloaded when not needed anymore. Avoid assigning offscreen windows a window behaviour (which lives in an add-on). When loading another add-on the offscreen window was still pointing to an invalid window behaviour.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42482 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 03:32:14 +00:00
Matt Madia
ac9cbf2906 Fixed a minor typo in the help text.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42481 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 02:13:18 +00:00
Clemens Zeidler
93a0b8fa8b Remove not working decorators.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42480 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 01:10:51 +00:00
Clemens Zeidler
bdfe478e9d Fix the SATDecorator. Much of the stacking part is handled by the DefaultDecorator now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42479 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 01:10:02 +00:00
Clemens Zeidler
bb2e9b06ac Add multi tab support to the default decorator as discussed on the mailing list. Windows can be stacked on top of one another. All windows using the same decorator instance. This makes it easier to draw the stacked tabs and makes it possible to design more fancy looks for stacked windows. This also helps to fix some issues in S&T, e.g. when activating one window in a stacked group all windows have to be activated to ensure that all tabs are on top. This causes some flickering in tracker.
* Each Window has a reference counted WindowStack class which can be shared between stacked Windows. To keep the Decorator separated from Window there is another tab list in the Decorator now. The index of the stacked Window in the window stack is the same as the index of the tab in the Decorator. Properties like title or window focus are managed on a per tab basis now. This mean when you set the title in the Decorator you also have to specify the tab id which is equal to the window position in the stack.

* When drawing the decorator its important that only the top window is doing the drawing. Also the top window drawing engine should be used.
Actually that is only a problem directly after a window is stacked and the other window has still a none empty dirty region. In this case we clear the dirty region of this window and stop the drawing (the top window will draw everything).

* Track if shifting of a tab is still ongoing, i.e. mouse still down.

* The key event filter called the DesktopListener without holding the window write lock. This probably caused #7801 and #7796.

* Commented out assert's in Window::SetScreen and Window::Screen. Add TODO because I'm not sure about the screen access.

This breaks all existing decorators again, sorry guys! Haven't looked into any other then the default decorator (and the SAT decorator). Will not fix the others in the near future so go for it! Since applications should be able to rely on S&T features the other decorator must be able to handle multiple tabs as well. A simple solution would be to draw all title bars in multiple rows. That probably looks quit poorly. Think the better solution would be to draw a tab interface in the title bar, e.g. like in KDE.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42478 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 01:09:26 +00:00
Clemens Zeidler
5b1742af27 Remove another assert that fails. In this case the access from ServerApp is fine.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42477 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 00:11:33 +00:00
Clemens Zeidler
c0dad949ee BRect's OffsetBy takes a BPoint. Add a similar BRegion method to be more consistent. This one takes a const reference instead a complete BPoint object.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42476 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-24 23:53:12 +00:00
Clemens Zeidler
f7953fa769 Add MoveItem method to easily move a item within a list. Fix line limit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42475 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-24 23:49:30 +00:00
François Revol
811ac4d502 No point in checking the new device for NULL if it's not nothrow.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-24 18:27:05 +00:00
Jérôme Duval
0990a31aa2 fix comments
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42473 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-24 16:34:41 +00:00