Commit Graph
100 Commits
Author SHA1 Message Date
Axel Dörfler 3648c6cea4 Added error reporting and a "application does not support file type" warning when
trying to set the preferred app via the "Same As..." or "Select..." buttons.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16390 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-14 02:40:40 +00:00
Axel Dörfler 43fd6fc453 * You can now also select the preferred application using the "Select..." and
"Same As..." buttons and a file panel.
* The preferred application of a file type is now also displayed correctly if
  it's not part of the list of supporting applications.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16389 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-14 02:07:47 +00:00
Axel Dörfler 8d577b370f You can now remove file extensions and attributes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16388 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-14 01:10:31 +00:00
Axel Dörfler 79dd9fd23e You can now remove MIME types.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16387 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-14 00:45:34 +00:00
Axel Dörfler 966fbea627 A work-around for the Tracker desktop redraw problem of the previous change.
Should probably be cleaned up a little. This fixes bug #146.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16377 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-13 13:43:30 +00:00
Axel Dörfler 3dcbe9fc88 Implemented redrawing the desktop after color changes. Right now, it only works
correctly when Tracker is not running; obviously, the background is cleared in
Tracker before it had the chance of changing the view color.
Maybe the app_server needs to detect the background view of the desktop and
change the view color manually :-/


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16376 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-13 13:12:10 +00:00
Axel Dörfler aae7000d63 The previous fix also didn't work correctly; we can't use the text color used
in the BTextView as a base.
Instead we're now using the correct UI default colors.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16374 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-13 00:55:00 +00:00
Axel Dörfler 12aefeb42a This fixes the text color when disabled; B_DISABLED_LABEL_TINT is darkening the
color, not lightening it, it's supposed to be used with the background color,
not the text color.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16373 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-13 00:34:10 +00:00
Axel Dörfler e060f46982 Font rendering under Haiku directly still looks different from the font rendering
in the test environment; the visual glitches should now be fixed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16368 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-12 19:38:16 +00:00
Axel Dörfler 9a7fabb66c The IconView now also shows an icon for a MIME type if it got it from the
super type's preferred application.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16366 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-12 17:50:22 +00:00
Axel Dörfler 1d268b8f9f The IconView now correctly invalidates its view on updates again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16365 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-12 17:44:42 +00:00
Axel Dörfler 06c21b14fe * Only those controls are updated now, that were actually changed, including
references from other types.
* Since the MimeTypeListView now listens to changes automatically, it's no longer
  necessary to update the MimeTypeListView manually anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16364 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-12 17:28:49 +00:00
Axel Dörfler 6ebc02eae4 The MimeTypeListView now listens to changes to the MIME type database as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16363 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-12 17:11:58 +00:00
Axel Dörfler 9432e2e65a * The controls now listen to BMimeType changes - the MIME list doesn't do this
yet, though.
* Noticed that the "Description" text control in the original FileTypes app is
  actually for the long description, not the short one - added another text
  control for those descriptions.
* The IconView will now also show an icon when it comes from a super type or
  an application - additionally, it will tell you from where the icon actually
  comes from.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-12 16:21:41 +00:00
Axel Dörfler 61ed8caf39 The "Extra Attributes" list is now properly updated on resize.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16360 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-12 14:33:24 +00:00
Axel Dörfler 3069c9573a * You can now change a MIME type's name as well as its preferred application.
* The menu field will now show the app's signature initially as well, if it's
  part of the item's label (wasn't picked up before, because BMenuItem::SetMarked()
  was called before the signature was added to the label).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16359 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-12 14:27:22 +00:00
Axel Dörfler 2602f6e9c2 Some more work in progress, still far from finished:
* The extra attributes of a MIME type are now shown as well.
* The preferred applications are now not only grouped by level of support,
  but are also sorted alphabetically, and get the app signature as part
  of the label in case two (or more) apps have the same name.
* And more :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16357 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-12 12:59:21 +00:00
Axel Dörfler 79c35b3912 SetEnabled() didn't set the text view's colors correctly anymore; _UpdateTextViewColors()
asked for IsEnabled() before it was set.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16355 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-12 01:23:30 +00:00
Axel Dörfler 9941e6c9ea Some more work on the FileTypes preferences application; it still doesn't do anything,
but it will now show you the installed MIME types, and their properties (though the
"Extra Attributes" group is still not maintained at all).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16351 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-11 18:46:49 +00:00
Axel Dörfler 7c74b12b2a * Implemented BOutlineListView::FullListSortItems() and SortItemsUnder() - dunno
what Be's implementation did wrong but instead of taking almost 30 seconds to
  sort the MIME type database (roughly 1100 entries, and yes, that's why the
  original FileTypes is that slow when it has to show the internal types), this
  one needs only 4 ms for the same task (that's an amply 7500x speedup).
* Implemented some more missing functions - it's by no means complete yet, though.
* Rewrote OutlineListView.h, ListItem.h, and StringItem.h.
* Fixed some minor bugs, but there are probably a lot more.
* Major cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-11 15:23:23 +00:00
Axel Dörfler 405bf9da6e InnerFrame() used fLabelBox, but it has to take the font's descent into account.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16336 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-10 17:10:42 +00:00
Axel Dörfler ef4aa90f49 Added public InnerFrame() and TopBorderOffset() methods. If you don't like the
naming, please shout :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-10 17:07:38 +00:00
Axel Dörfler d2dcb851e6 Now it even looks like the original, at least a bit :-)
Still doesn't do anything, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16334 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-10 15:32:54 +00:00
Axel Dörfler 3a3f6c1ee9 BTextControl::AttachedToWindow() set wrong colors in case the control was
disabled (unlike SetEnabled()). They are now both using the correctly working
_UpdateTextViewColors() method.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16333 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-10 15:28:49 +00:00
Axel Dörfler f3eeafa8b9 The label height now only takes the ascent into account, likewise, the label
is now drawn at the correct baseline offset (the ascent), without this strange
computation (ascent - descent + 1).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16332 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-10 14:29:49 +00:00
Axel Dörfler ffe72abd85 * Fixed BTextControl resizing (did not invalidate the border area before).
* Rewrote TextControl.h
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16331 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-10 14:22:33 +00:00
Axel Dörfler cf45491bc8 Unlike what shatty wrote in his commit messages, convert_from_utf8() does return
B_OK here when called with an empty string.
Since this is the natural thing to expect anyway, I changed our version to return
a sane value here as well - if this causes an error within our StyledEdit, as
shatty writes, we should just fix our StyledEdit.
Cleanup to match our style guides a bit better, added license.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16328 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-10 12:00:38 +00:00
Axel Dörfler a544829365 _PrepareUnicodeBuffer() no longer processes empty strings which should hide the
often seen error message.
I'll investigate if convert_from_utf8() is supposed to return an error for empty
strings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-10 11:37:06 +00:00
Axel Dörfler f877af82fe * Implemented private functions do_minimize_team(), and do_bring_to_front_team()
used by the Deskbar (for "Hide All" and "Show All"). The latter doesn't work
  correctly yet, though, it just maximizes all windows of that application.
* Added a TODO to ServerWindow AS_MINIMIZE_WINDOW on how to make it work correctly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16315 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-09 18:53:36 +00:00
Axel Dörfler 995ab7b3c6 The server now differentiates between hidden and minimized - that concept somehow
got lost, before.
It might not work 100% correctly yet, but it works good enough to hide the Tracker
status window from the Deskbar, and thus, fixing bug #133.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16314 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-09 18:28:29 +00:00
Axel Dörfler 0748857300 * Added a "listres" command (also to the image).
* Fixed building "stdbins that need libbe.so" for R5/Dano target.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16313 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-09 17:01:23 +00:00
Axel Dörfler a92dff57f2 Stupid me - thanks to Michael Lotz for pointing that out :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-09 11:27:06 +00:00
Axel Dörfler 2a47269907 SetWindowFocus() could reset the focus of a window that already had focus.
This fixes bug #128.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16305 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-09 10:44:02 +00:00
Axel Dörfler f1486a980f Started new FileTypes preferences application, so that you can at least see
it's supposed to do nothing at the moment :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16302 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-08 20:10:47 +00:00
Axel Dörfler 00e0ed9f74 Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16301 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-08 20:07:16 +00:00
Axel Dörfler 9ff44370c8 Fixed centering of the window in case of multiple screens.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-08 16:59:07 +00:00
Axel Dörfler b8a7e035ff Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-08 16:42:05 +00:00
Axel Dörfler 3cd6e76965 /dev/dprintf and _kern_debug_output() weren't dumped to the syslog before, even
if "syslog_debug_output" was set to "true". Reported by Jerome!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16290 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-07 23:45:44 +00:00
Axel Dörfler d31d9974ba Slightly improved debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16288 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-07 16:55:06 +00:00
Axel Dörfler 9837f25ec6 Forgot to commit a simple test application for node monitoring.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16287 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-07 16:54:21 +00:00
Axel Dörfler 3a6b985bf8 * Added Tracker add-ons FileType and Zip-O-Matic.
* Removed Canna input method; this should go in the UserBuildConfig if you need
  it (especially because Deskbar replicans currently look broken)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16286 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-07 16:50:27 +00:00
Axel Dörfler 76fca6ee2c * Added Deskbar to the Bootscript.
* Redirects stdout to /dev/dprintf, so that serial debugging logs are a bit
  more complete for now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-07 16:48:41 +00:00
Axel Dörfler a932a97b52 * Mabye I should do better testing of what I "fix"; absolute paths didn't work
anymore from the command line all of a sudden...
* Made the caption background slightly less translucent to allow the text to
  be read even with very checkered images.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16280 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-07 13:14:19 +00:00
Axel Dörfler c70cd57756 Made the caption in full screen mode a bit easier to look at (boring yes, but some
people out there just aren't colour blind :-)).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16279 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-07 12:23:26 +00:00
Axel Dörfler 71a34702d3 Fixed the resizing bug I accidently introduced with r16260.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-07 12:11:00 +00:00
Axel Dörfler 009cd1060a * No longer hides the mouse cursor when the pop up menu is shown.
* Removed the superfluous "Cancel" item from the pop up menu.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-07 12:05:23 +00:00
Axel Dörfler 5921f4e2f1 Followed Jeromes suggestion and moved the desktop directory lookup to the
BackgroundImage::SetDesktopImage() method - if you need more control, you
can still easily make _SetImage() public.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-07 11:26:39 +00:00
Axel Dörfler a60adbf9b4 * Added a "Set as desktop background" option with an easy to use engine based
on the OpenTracker's BackgroundImage implementation.
* It's currently placed in the "View" menu, even though it doesn't fit that
  good, I think it should definitely be part of the right click menu.
* Some more cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-07 10:28:27 +00:00
Axel Dörfler efa8b4f392 Fixed various issues:
* ArgvReceived() did not work with relative paths.
* Simplified quitting (no more CanQuit() and overriding BWindow::Quit()).
* Updated signature.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16260 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-06 19:54:01 +00:00
Axel Dörfler fa3685cf13 * Now prints "Revision X" instead of "rX"
* I think we may have 2006 already
* Now makes sure the revision resource is null terminated (at least it returned an
  unterminated string under BeOS, it worked already fine under Haiku).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16250 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-06 14:47:06 +00:00
Axel Dörfler 8527f8ffbe The display resolution is now saved and restored. Probably doesn't handle non-default
modes right yet.
The settings are stored in B_USER_SETTINGS_DIRECTORY/system/app_server/workspaces.
They are currently saved as a flattened BMessage - we might want to switch to the
driver_settings format, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16249 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-06 13:36:46 +00:00
Axel Dörfler d5ffccabb7 * Removed unused MakeBlendColor().
* At least 15 bit mode is broken, and should probably be removed.
* Cleanup - do we really need this class?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16247 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-06 11:47:13 +00:00
Axel Dörfler 2bdbc03a1d Oh surprise, I broke the build with fake_app_server again...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16240 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-05 22:10:01 +00:00
Axel Dörfler ab093a2ce4 Removed TODO item, it's already resolved.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16239 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-05 19:44:26 +00:00
Axel Dörfler 195e980ef1 * Cursors are now reference counted, so it shouldn't be possible anymore
to delete them accidently :)
* You should no longer call HWInterface::SetCursor(), but the new Desktop::SetCursor()
  if you need to change the cursor.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-05 19:43:44 +00:00
Axel Dörfler aa1f543799 Some work on cursors:
* Fixed a myriad of bugs all over the place, ranging from locking errors to
  deleting objects that don't belong to the one deleting them (hello HWInterface!)
* Almost all ServerWindow cursor stuff was broken; I've replaced all commands
  to set a cursor with a single one AS_SET_CURSOR.
* Renamed some cursor commands.
* Changed the (broken) way ServerApp::fAppCursor was maintained - the application
  cursor is now NULL as long as possible.
* Removed superfluous ServerCursor app signature stuff.
* The BApplication will no longer duplicate the default/I-beam cursors, it will
  just reuse the default ones which now have fixed tokens.
* As a result, changing the cursor is now working as expected, closing bug #102.
* Rewrote Cursor.h, renamed private members to match our style guide.
* Minor cleanup.

What's still left to be done is reference counting the cursor objects to make them
work right and reliable.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16237 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-05 18:14:14 +00:00
Axel Dörfler 73b3ea3cd7 Fixed a few more uninitialized variables.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16236 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-05 18:03:09 +00:00
Axel Dörfler 47f1b81ce2 * fCurrentWorkspace wasn't properly initialized.
* Removed AS_SET_SYSCURSOR_DEFAULTS handling for now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16235 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-05 15:58:29 +00:00
Axel Dörfler a5eeb74ac0 Let's play SetToken() and NewToken() play nice together.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16234 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-05 15:47:57 +00:00
Axel Dörfler 57a6c095d5 Work-around to make broken apps like 3dmix work - patch submitted by genki-at-bredband.net:
* we no longer drop into the debugger if BScreen is used without an app_server link.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16229 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-04 20:19:13 +00:00
Axel Dörfler a4f6a81235 Forgot to commit the updated "rc" to make AddRevisionToResources work:
* "rc" now accepts stdin as input file when "-" is used as a file name.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16225 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-03 22:29:54 +00:00
Axel Dörfler 69149327b4 This may fix Rudolf's MTRR problem - could you please try?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16220 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-03 20:19:32 +00:00
Axel Dörfler 45de8176a5 * Added the Subversion revision at build time to AboutHaiku - the revision is
automatically updated everytime AboutHaiku is built (ie. also if nothing
  changed).
* Added Oliver Tappe as contributor.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16219 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-03 18:48:26 +00:00
Axel Dörfler 811ada6cae Fixed wait_for_resources() locking, reported by Ingo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16218 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-03 17:12:34 +00:00
Axel Dörfler 9f8734ebea FreeBSD doesn't have strnlen(), and therefore couldn't compile our strlcat.c.
Sorry, that was the problem actually reported by Alexander Deynichenko...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16216 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-03 12:24:15 +00:00
Axel Dörfler 40b8343312 Should fix the build under FreeBSD, problem reported by Alexander Deynichenko.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-03 12:14:56 +00:00
Axel Dörfler ff3abf4d6f * Started a naive implementation of BView::SetViewCursor() server-side - doesn't
work though, as HWInterface can only draw B_RGB32 cursors...
* More build fixes for libbe_test target - it defines __HAIKU__ as well, now


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16211 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-02 20:19:29 +00:00
Axel Dörfler f7969f54fb Fixed build in the test environment.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16210 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-02 20:08:16 +00:00
Axel Dörfler ce3f3b5af2 Slightly improved font sensitivity of the top bar.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-02 18:32:22 +00:00
Axel Dörfler 662dc0bdc8 This fixes the appearance when the slider is directly added to the window, ie.
like it's done in Chart - didn't set the background correctly before.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16208 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-02 18:16:57 +00:00
Axel Dörfler 7d34abc3e8 No longer tries to create a "" label. An empty label is now NULL.
Probably among other, this fixes the BSlider appearance without a label.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-02 18:15:52 +00:00
Axel Dörfler f2c54a03a6 * Made it look better when running under Haiku. Restricts the maximal font size to
12 points to make sure it'll look acceptable.
* Fixed direct window rendering by disabling moving the animation area around
  (would have to be changed in DirectConnected() as well).
* Refresh and density sliders now ResizeToPreferred().
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16206 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-02 18:14:38 +00:00
Axel Dörfler da9fb33109 Now only resizes the width if it's too small or B_ALIGN_LEFT is used - it now
resizes a bit more logically.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-02 17:07:36 +00:00
Axel Dörfler d14aab0dca Changed the way how CPU activity is monitored: instead of taking the active
time of the idle thread as a measure, we now compute the CPU activity on
each thread switch - the time the CPU worked is the total of user and kernel
time a thread spent during its quantum.
Unlike before, this mechanism works correctly on SMP machines. I hope this
works as expected :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16193 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-01 20:03:55 +00:00
Axel Dörfler df213cedbc * CPUs can now be disabled - that is, they will keep idling.
* Added syscalls _kern_set_cpu_enabled() and _kern_cpu_enabled().
* scheduler.c::sRunQueue::tail was not maintained at all; changed sRunQueue to
  be a simple thread pointer instead of a struct thread_queue.
* Turns out we're monitoring CPU activity incorrectly when we've got more
  than one CPU.
* Renamed the global CPU array from "cpu" to gCPU.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16186 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-01 16:09:05 +00:00
Axel Dörfler 4ccfb08661 * Fixed memory leak in CPUButton: the message runner was only deleted in the
destructor, but created everytime AttachedToWindow() was called.
* Minor cleanups.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16184 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-01 15:57:45 +00:00
Axel Dörfler a71c960755 * BControl::SetValue() now calls Invalidate() again - not doing so would
break compatibility a bit too much (as this is a public class).
* Instead, we're now using the same mechanism as in Dano/Zeta, that is,
  we use BControl::SetValueNoUpdate() in the inherited classes.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16183 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-01 15:55:46 +00:00
Axel Dörfler 2457c453c5 * Now calls get_current_cpuid() instead of get_cpuid() - that doesn't work on
SMP machines since we're already in a call_all_cpus() function (that also
  needs to run synchronously). MTRR does now work on SMP machines again; ie.
  SMP machines should boot fine again now.
* Fixed warning when compiled with tracing turned on.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16181 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-01 12:39:20 +00:00
Axel Dörfler 99085d6771 Added an extra debug function that dumps all iframes in case the stack crawl
doesn't work correctly for some reason.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16180 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-01 12:35:10 +00:00
Axel Dörfler 562c5a27d9 Make sure the compiler knows what we want.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16179 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-01 12:34:03 +00:00
Axel Dörfler f1d806fe5d Fixed call_all_cpus(): it shouldn't call the function synchronously; inter-CPU
synchronization as done in init_mtrrs() failed because of that (let the system
hang).
Unfortunately, MTRR still doesn't work on my dual PIII with SMP enabled; that
was just one reason it didn't work.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-31 18:30:34 +00:00
Axel Dörfler fd1528f275 Accidently broke selecting sub menus with the last commit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16167 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-31 03:31:23 +00:00
Axel Dörfler 204131dc97 Added a real yield function to the kernel (using the next_priority approach).
The test application lets run a thread at the highest priority that calls
yield all the time - the system stays responsible when it runs, so it seems
to work fine :)
Changed the malloc implementation to use _kern_thread_yield() instead of
snoozing.
We should think about making this call public, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16166 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-31 02:29:02 +00:00
Axel Dörfler d14af9fde6 Introduced a next_priority field to struct thread that will be used when
enqueueing a thread to the run queue.
This mechanism is now used for the thread priority boost on semaphore
release. Also, those threads are no longer made real time threads, they
now get a temporary priority of B_FIRST_REAL_TIME_PRIORITY - 1.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16165 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-31 01:58:49 +00:00
Axel Dörfler 7e46f8319e snooze(5) works more or less fine for standard threads, but is a very bad
idea for real-time threads. They could completely hog the CPU in this
case. Thanks to Marcus for investigating!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16161 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-31 00:11:51 +00:00
Axel Dörfler ec549309c9 The menus work a bit less good now I think, but they no longer have 100% CPU usage
when the menu item under the mouse cursor has a sub-menu.
Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16160 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-30 23:40:05 +00:00
Axel Dörfler db63fe6713 Strangely enough, one of my R5 system's doesn't have a "cc".
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16156 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-30 18:38:23 +00:00
Axel Dörfler 5d16441307 Now usually ignores the length of the data segment as well.
It now works fine on my P4 system as well :-)
But since the BIOS area is not identity mapped, it might work on fewer systems
than it does in BeOS R5.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16154 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-30 16:32:47 +00:00
Axel Dörfler afef4f3fff The syslog_daemon now ignores zero length messages, and the kernel's syslog
mechanism doesn't send them out any longer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16153 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-30 16:09:24 +00:00
Axel Dörfler bd610d2fcd * Added kernel settings for APM - defaults to disabled (since it doesn't work
on at least one of my systems, it only works on 3 of them...).
* Added APM safemode setting.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16152 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-30 14:43:38 +00:00
Axel Dörfler c7023acdc6 * Fixed B_AVOID_FRONT support in the app_server.
* Menu windows now use the kMenuWindowFeel feel (but still need the B_AVOID_FOCUS
  flag set, as that's currently independent from the feel).
* Minor cleanup in MenuWindow.cpp


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16150 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-30 13:40:22 +00:00
Axel Dörfler 304636cc5e Implemented kMenuWindowFeel, not that much tested, though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16149 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-30 11:50:02 +00:00
Axel Dörfler 8a1f6775b9 * You can now specify a thread when using the "unreal" debugger command.
* Added a thread priority column to the thread list.
* Added "realtime" command that lists all real-time threads.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16141 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-29 19:50:00 +00:00
Axel Dörfler 1ee28f024a Too more FreeBSD build fixes by Alexander Deynichenko.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-29 17:45:52 +00:00
Axel Dörfler c08ce938f3 Added way to enter the kernel debugger in case keyboard is disabled - couldn't
test it, though, as I couldn't reproduce the problem since then.
Fixed indentation in ps2_keyboard.c.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-29 15:53:37 +00:00
Axel Dörfler 5da68569d0 The APM now successfully shuts down my IBM ThinkPad T40. It's still disabled
for more testing on other machines.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16136 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-29 15:51:33 +00:00
Axel Dörfler fd9772def6 Fixed build on BeOS: MimeType.h doesn't exist; we need to use Mime.h.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16135 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-29 14:25:27 +00:00
Axel Dörfler 036b999b54 Unbroke the build (ps2.h was suddenly missing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16121 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-28 18:48:50 +00:00
Axel Dörfler afd6dfc8b4 Implemented first basic APM driver. Only tested with QEMU so far, that's why
it's currently disabled.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16120 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-28 18:11:20 +00:00
Axel Dörfler 1bb74eb185 This fixes the work-around made in r16105, and some more:
* cached_block::parent_data can be NULL in a sub transaction in case the
  block wasn't part of the parent transaction (but not in low memory
  situations). cache_abort_sub_transaction() and cache_detach_sub_transaction()
  didn't account for this, though, ie. the block data could end up
  corrupted.
* Renamed cached_block::original in original_data.
* Renamed cached_block::data in current_data.
* Added some comments.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-01-26 21:02:53 +00:00