Commit Graph

38565 Commits

Author SHA1 Message Date
Michael Lotz
0dfaf59dbb Implement basic storage and lookup functions.
* Add reading/writing a yet unprotected flat BMessage as the storage
  backend for the keys.
* Factor out the identifier based lookup logic into _FindKey() and use
  that from _AddKey() to detect duplicates.
* Add _FindKey() variant that does the lookup based on given type and
  purpose constraints.
2013-03-05 10:59:55 -05:00
Michael Lotz
37ac7cb2de Update the cookie from the reply message. 2013-03-05 10:59:53 -05:00
Michael Lotz
05480477ff Add a simple command line tool to interact with the keystore.
The app is yet almost empty but will gradually grow to include
enumeration and possibly modification functions for the keystore.
2013-03-05 10:59:52 -05:00
Michael Lotz
c494c06109 Add B*Key::PrintToStream() method for debugging convenience. 2013-03-05 10:59:51 -05:00
Michael Lotz
8d9bc9e0ee Add a skeleton keystore_server.
It will handle the BKeyStore messages but is yet relatively empty. It
only returns an error to two messages right now.
2013-03-05 10:59:49 -05:00
Michael Lotz
005a15bbcd Move keystore message constants and use a messenger.
* The keystore backend will (at least for the time being) reside in a
  separate server. This one can be reached via normal messaging, so use
  a BMessenger for sending key messages.
* Move the message constants from RegistrarDefs.h into a new
  KeyStoreDefs.h that also contains the server signature.
* Update the message constants to reflect the new situation.
2013-03-05 10:59:47 -05:00
Michael Lotz
1c3996496b Implement all KeyStore methods except for password generation.
* Add all relevant message constants.
* Implement the messaging to send/retrieve key info.
* Implement _Flatten/_Unflatten for sending flat BKey objects.
* Remove application list from BKey, the key can't only differ by
  allowed applications as the identifiers would still collide, so the
  comparison isn't needed to uniquely identify the key. The applications
  can be enumerated via the BKeyStore instead.
2013-03-05 10:59:46 -05:00
Michael Lotz
b73982892d Rename [Un]Register* functions to Add/Remove*. 2013-03-05 10:59:44 -05:00
Michael Lotz
dc1acef865 Flesh out the API and implement stubs.
* Modified the API greatly to be based on BKey* instead of BPassword*.
* Added BKeyPurpose and used it instead of BKeyType. It is supposed to
  indicate the purpose of a key so that an app can look up keys on a
  more granular level. The BKeyType on the other hand actually
  identifies the type (i.e. subclass of BKey) so an app knows how to
  handle a given key or may only enumerate/use keys it is compatible
  with.
* Made everything based on a raw data buffer for now, only BPasswordKey
  is implemented yet which stores the (0 terminated) string into that
  data buffer.
* Removed the additional data BMessage as I don't yet see where it fits
  in. While I could imagine adding meta data to a key may be nice it
  might be an interoperability concern when keys are shared by
  different apps.
* Moved the app functions to the keystore as per the TODO, but not sure
  how to actually implement them.
2013-03-05 10:59:43 -05:00
Michael Lotz
3b3884d9ee KeyStore and Key interface/stubs draft per Axel Dörfler.
A draft API and (mostly) stubs to back it up. Initial import of yet
unmodified sources.
2013-03-05 10:59:41 -05:00
Ryan Leavengood
fa392c2a24 Remove unused ShowImage Undo code. 2013-03-05 08:59:54 -05:00
Ryan Leavengood
a95895186d Change the cursor hiding so it isn't done constantly when enabled. 2013-03-04 22:58:23 -05:00
John Scipione
ff9b4ff8c9 Lock BMenuBar::_Track() atomically. Fixes #9481 2013-03-04 22:22:03 -05:00
John Scipione
afecfa9ca8 A few more bitmap icon updates, edge cases.
* Support downscaling icons to a size smaller than the source.
* For > 4x icon scaling do a scale4x followed by a bilinear scale.

Note that I tried to do a combination of scale2x/scale3x with bilinear scaling
and the results were worse than scale2x/scale3x with down scaling.

The 24x24 icon case looks pretty bad either using bilinear or scale2x followed
by a downscale because I am currently upscaling the 16x16 icon in Deskbar (we
didn't up until now support bitmap icon downscaling so I had no choice). It
might be a better idea to downscale the 32x32 version instead.

Note that all of the above has to do with bitmap icons ONLY and none of it
applies to HVIF icons that scale beautifully without these tricks.
2013-03-04 12:56:12 -05:00
John Scipione
b09c265cb4 Update bitmap downscaling for BeOS icons.
Implemented a simple down sampling algorithm in the scale_down() function. For
non-integer scaling first scale up using the scale2x, scale3x, or scale4x
algorithm doubling, tripling, or quadrupling the icon then use the downscaling
algorithm to shrink to the desired size. This produces nicer looking results
than bilinear scaling alone.

Note that this only applies to bitmap-based BeOS icons and not vector-based
HVIF icons.
2013-03-04 04:45:06 -05:00
John Scipione
f3ac8bc089 Show the full window title in Deskbar in a tooltip
... if it gets truncated in vertical expando mode.
2013-03-03 23:36:08 -05:00
Ryan Leavengood
f44a56ca9a Add back moving the pen to origin in BControlLook arrow drawing.
Removing this did not affect scrollbar arrow buttons, but made the
arrows disappear on the Deskbar.

Clearly, BControlLook cannot be changed without extensive testing.
2013-03-03 23:10:51 -05:00
Ryan Leavengood
dca92a6c75 Removed unused colors from BScrollBar Draw. 2013-03-03 17:50:51 -05:00
Ryan Leavengood
f9b1a47fa3 Use be_control_look for BScrollBar and FakeScrollBar.
Remove all code which checks for be_control_look being NULL.

Also fix the DrawArrowShape method in be_control_look so the arrow is aligned,
as per the previous commit. In addition the code to offset the arrow when the
scroll button is pressed was unnecessary.

There is still some room for improvement, and I am not happy with the
BControlLook behavior here, as noted in some TODOs.
2013-03-03 17:50:51 -05:00
Ryan Leavengood
8a9200992e Fix Scrollbar arrow button alignment.
The arrow symbol on the right and down buttons was off by one pixel.

Because of the resurrected FakeScrollbar in the Appearance preflet I had to
change this code in two places, which makes me unhappy. This needs to be pulled
into BControlLook.

Fixes #9104.
2013-03-03 17:50:51 -05:00
John Scipione
97ef596f27 Fix color preview drawing bug in Appearance. Fixes #9501
Also updated to use color constants intead of hardcoding colors. This draws a
nice 3d-ish bevelled border around the color preview box.
2013-03-03 14:49:41 -05:00
Matt Madia
703912cc4f Aesthetical changes. No functional change.
Manually applied humdinger's Decorator_aesthetics.diff patch from #7874.
2013-03-02 19:38:27 -05:00
Matt Madia
ca51eb367d Add FreeType headers dependencies, #8716.
This allows MacDecorator to build once again.

Due to other errors, BeDecorator and WinDecorator do not (yet) fail on the
missing FreeType header -- hence it being only a comment for now.
2013-03-02 19:20:17 -05:00
Matt Madia
74252cefbc Inform the decorators where to find DoublyLinkedList.h
Prior to this, jam -q [ClassicBe|MacDecorator|WinDecorator] would fail.
They still fail, but for one less reason at least.
2013-03-02 19:14:17 -05:00
Ziusudra
f0e995c8d4 Create TimeZoneListView class and move GetToolTipAt into it, fixes #7726
Signed-off-by: Matt Madia <mattmadia@gmail.com>
2013-03-02 16:45:20 -05:00
Tri-Edge AI
be7b42ea99 Bluetooth: Added device class to settings, in case it can't be retrieved from the dongle.
Signed-off-by: Matt Madia <mattmadia@gmail.com>
2013-03-02 14:12:04 -05:00
Tri-Edge AI
e381b02559 Bluetooth: Added settings to remember last used device.
Signed-off-by: Matt Madia <mattmadia@gmail.com>
2013-03-02 14:07:44 -05:00
Alexander von Gluck IV
79dd1ff2af iprowifi4965: Re-add working wlan card pciid
* Centrino Advanced-N 6235
* Originally introduced in hrev44579
* Likely removed in last wlan driver sync
* Confirmed working 100%
* Upstream bug:
  http://www.freebsd.org/cgi/query-pr.cgi?pr=173898
2013-03-01 01:47:00 +00:00
Matt Madia
9590a81c9c GCC 4 build fix. Suggested by leavengood.
Closes #968.
2013-02-28 17:03:27 -05:00
Tri-Edge AI
dc4fe6be00 Extended ResourceEdit.
Signed-off-by: Matt Madia <mattmadia@gmail.com>
2013-02-27 22:09:21 -05:00
Tri-Edge AI
49126a0e9b Added ResourceEdit and modified BColumnListView, BRow and BMenu.
Signed-off-by: Matt Madia <mattmadia@gmail.com>
2013-02-27 22:08:46 -05:00
Alexander von Gluck IV
9e3038ae8e radeon_hd: Revert a change from hrev45219
* Causes a regression in proper UNIPHY
  mode setting.
* These encoder setup routines do not
  get performed by any dpms stuff and
  are required to put the encoder in the
  correct state for programming.
* Resolves #8913 and maybe others
* Thanks Justin for testing!
2013-02-26 22:36:20 -06:00
John Scipione
d06f58081a Revert "Prevent a deadlock condition in Deskbar. Fixes #8539"
This reverts commit 733be65954.

It didn't fix the bug, will try again.
2013-02-25 15:53:55 -05:00
John Scipione
b37d5096dc Remove this #include directive too 2013-02-25 12:06:30 -05:00
John Scipione
2a5c1f12b9 Fix #9469 again in a better way.
Pass fTime into the IsHidden() method to check the hidden state from
the point of view of fTime which will ignore the hidden state. of the
window. Remove the Hide(), Show(), and IsHidden() overrides in
TimeView as they are no longer needed.

Thanks Stippi and Axel.
2013-02-25 11:57:18 -05:00
John Scipione
733be65954 Prevent a deadlock condition in Deskbar. Fixes #8539
If the window is locked by the menu_tracking thread Deskbar will wait
on the sMonThread thread to exit forever so we have to kill it to
prevent a deadlock.

This is a workaround of a bigger problem, which is that fExpando gets
created and destroyed on each change which is slow allowing these kinds
of bugs to exist. The real solution is to live update fExpando but that
is a fair amount of work.
2013-02-24 04:39:16 -05:00
John Scipione
88571c9241 Refactor TExpandoMenuBar::MouseDown() style.
No functional change intended.
* Check for NULL fields in the beginning and return decreasing the
  indent level of the rest of the method.
* Move some comments to next line indented
2013-02-24 04:36:58 -05:00
John Scipione
da179153e8 Small whitespace fix in MenuBar.cpp 2013-02-24 04:36:57 -05:00
Alexander von Gluck IV
59dc9ee955 radeon_hd: Fix DVI-I detection once and for all
* Reduced the logic down and only use it where
  possible.
* Remove the duplicate gpio pin check. While this
  is a determining factor... i'd rather get it
  right while detecting displays vs relying on
  connector order in the ASIC. This gpio pin check
  was also severely bugged (missing {}'s)
* Should fix #8913 and maybe others
2013-02-24 06:39:24 +00:00
John Scipione
2c765fafc5 Rename ColorWell to ColorPreview in Appearance prefs.
No functional change intended.

I'd like to use the name "ColorWell" for a different type of
class eventually so I'm making room for it. ColorPreview is
arguably a better name for the class anyway.

Also did a style cleanup of the ColorWell => ColorPreview class at
the same time.
2013-02-23 15:51:50 -05:00
John Scipione
ca00f398da Fix Deskbar clock show/hide when Deskbar is hidden.
Bug #9469 happens because I set the showClock checkbox or not based on whether
or not the clock is currently hidden. This works most of the time, but if
Deskbar is hidden the clock is also considered to be hidden and that isn't what
I want in this case.

The solution is to override BView's Show(), Hide(), and IsHidden() methods
in TimeView to ignore whether or not the window is hidden when considering if
the clock is hidden.

The commit also deletes some no-longer-used private member variables of
TimeView.

Fixes #9469
2013-02-23 14:41:54 -05:00
John Scipione
a2d1b65a85 Silly style fixes 2013-02-23 14:40:26 -05:00
John Scipione
5dd0761042 Move BVolumeRoster docs to Haiku Book.
With this commit every class in the storage kit is now documented
in the Haiku book!

Thanks to Ingo, Axel, Vincent Dominguez, Tyler Dauwalder, and
everyone who helped document these classes.
2013-02-22 18:11:14 -05:00
John Scipione
9d5f5318a5 Move BVolume docs to the Haiku book 2013-02-21 20:15:53 -05:00
François Revol
32bd2dedd9 bootloader: Fix an overlooked condition in mmu_allocate()
The size variable at this point is actually a page count.
The test should never be true anyway though. Maybe we should use a
pages variable for clarity?
2013-02-21 16:35:37 +01:00
François Revol
8dc3f98eda RemoteDesktop: Fix build 2013-02-21 16:24:58 +01:00
John Scipione
fff103f567 WebPositive close x fixes.
* Remove the Close tab and Close find bar tooltips.
* Offset the x again.
* Add some comments.
2013-02-20 21:46:04 -05:00
John Scipione
434716ced8 Add BSymLink class docs to Haiku Book 2013-02-20 16:20:53 -05:00
John Scipione
5bff846db2 Move BStatable docs to Haiku Book. 2013-02-19 19:07:15 -05:00
John Scipione
789e7d856e Tweak close x so it doesn't look disabled 2013-02-18 22:32:24 -05:00