* The areas allocated for BBitmaps were never deleted, even though the
app_server deleted its part when the memory got freed.
* This resulted in a constant memory increase if the application in question
would operate on many changing large bitmaps, like photos.
* Since the bitmaps are reference counted, we don't actually know when to delete
the areas, so that the app_server now notifies the client whenever that is
possible.
* This might fix#6824.
* Since bitmaps are reference counted, it might not be easy (and already not
the case) that holding the ServerApp lock can be enforced.
* To be on the safe side, allocations and freeing memory now performs its own
locking.
* Brought the documentation to the status quo.
- SetTopTap() -> SetTopTab().
- When reloading the decor, if the window in question is borderless,
short circuit. Previously, we wouldn't allocate a decorator for such
a window, but would then go through the remaining steps of attempting
to set the focus/top tab, which would obviously crash. Fixes#8500 and
possibly others.
- Add error check that adding tabs to the decorator actually succeeded.
* rename B_TRANSLATE_CONTEXT to B_TRANSLATION_CONTEXT and
B_TRANSLATE_WITH_CONTEXT to B_TRANSLATE_CONTEXT, squashing a TODO
* adjust all uses of both macros in Haiku's source tree
* use correct header guard for collecting/Catalog.h
The renamed macros require adjustments to all external applications
using catalogs.
* Since we won't always have a client, expose the connected status from the HWInterface to other classes.
Currently only used to simulate DPMS state.
* Cleanup.
AutoConfigLooper now remembers the last media state it received from the device,
and compares both to see if the active state actually changed. Should help with
quality changes where the link didn't actually drop. May also help on ethernet
if the chipset sends spurious link status change notifications.
Below is a mostly complete summary of the changes in this commit.
* Set the DeadKeys for the US-International Keymap to use the Option map.
* Rename American keymap to US
* Update the US, US-International, and United-Kingdom keymaps to take
out unneeded spaces in the option layer. Also updated the dead keys
and some other keys on the US-International keyboard to use UTF-8
characters rather than there ASCII equivalents when different.
* Make the Option key fall-through when there is no mapping in the Option
table. Option is for special characters, if none, print the regular one.
This is mostly meant for the US keymap which has an empty option map. But
also so that you don't have to repeat the normal, shift, and caps maps in
the option map needlessly. Although the keymaps are still not empty in
some cases that it could be like numpad keys and space.
* Update the /bin/keymap app to use fputs() instead of printf() when there
is no actual formatting taking place. I've gotten into trouble for doing
this before and it is faster to not process the string unnecessarily.
* Also several 80-char limit style fixes and updated comments.
* In Keymap class Reorder the modifier keys to match the keymap files.
Put B_CONTROL_KEY check above B_OPTION_KEY. Neither change has any effect,
they are purely aesthetic.
* Update DumpKeymap() method to use the abbreviated modifier letters so it
will fit in your 80-char wide terminal.
* Tiny style fix in InputServer
* 80-char limit style fix in BWindow and add a comment that the shortcut
gets eaten in the case of Cmd+Q
* Implement IndexForModifier() in KeyboardLayout, although I am not using it.
* Take Caps Lock out of the Modifier keys window because I couldn't get
it to work the way I wanted it to.
* Move key roles to the left column, and the key label on the left. Add column
header labels. Thanks Rimas!
* Add validation and improve marking menu options. Add a 'Disabled' option
to control, option, and command menus to disable the key. Make the key
role text grey if the key roles is disabled. Validation ensures that you
cannot repeat the same key twice in the Modifier keys window since that
won't work. You can't define 2 sets of option keys even if you really want
to. You can disable your control, option, and command keys if you
want, but that is not recommended.
* Rename kUpdateModifiers to kUpdateModifierKeys message to differetiate
it from kUpdateModifier.
* Add shift key to Modifier keys window, use the stop icon instead of the
warning icon to indicate conflicts.
* Allow the Layout system to control the size of the Modifier keys window
again, set the width's of the key role lables to the widest, set the width
of the menu fields to take up the rest of the space minus room for the
conflict views. I didn't like it that the Modifier keys window would change
size based on what options you had selected in the menu fields. Now it
doesn't, but, the layout system still makes it all fit.
Reintroduced the '=' padding modulo 3 characters from the original code from the mail kit,
and a packed option to avoid it.
Broadway uses this packed scheme to save bytes when sending many separate values.
TODO: merge this with the mail kit one somewhere?
This bug affected views added while the window was hidden, and would
result in that view not being hidden when the group was collapsed for
the first time.
When a BTwoDimensionalLayout has no visible elements, it has a max size
of B_SIZE_UNLIMITED in both dimensions. In this case, we want it to
shrink down to just the insets.
I.e. once there are no more notifications in the AppGroupView, we get
the NotificationWindow to delete it. As a result of this change, we no
longer need the AppGroupView.cpp _ResizeViews() method.
This is preferable to having them kick around for as long as the server
is running. They don't yet close when all of the notifications for the
view time out, that's coming next.
This implements an html5 rendering engine.
Inspired by the Broadway GDK backend for Gnome.
Work in progress. For now it just connects and dumps debug output.
* added optional feature package for freetype 2.4.6 gcc4/gcc2 x86 and gcc4 ppc.
* FT_CONFIG_OPTION_SUBPIXEL_RENDERING is disabled, --include-patented-code doesn't
change this setting anymore. This would require different packages.
* drop freetype sources and headers from the tree.
* fix decorators, test app server and appearance to use feature package headers.
* hybrid build untested.
* The assert in the Workspace constructor was definitely for the
wrong lock. One should be holding the all window lock either
in read or write mode. The Desktop message loop lock should be
unrelated.
* Added boolean to the constructor which controls the assert.
* Added documentation to Workspace class, since it's not at
all obvious how this is intended to be used.
* Fixed ServerApp to lock the Desktop correctly when using
Workspace desktop colors.
* Add new function to check for protocol support
* If IPv6 support is present assign ::1 to loopback
* ping6 ::1 functions 100%
* Still some route strangeness with link local addresses
* Check to ensure the address doesn't already exist on card
* In the future we will want to check interface address flags
for any local scoped addresses on a card.
* Remove old ioctl code, cleanup AutoLooper.
* Move link local code into NetServer
AutoLooper should only be used for things that
count as "auto-configuration" such as DHCP, router
advertisements, and DHCPv6
* Properly form IPv6 link local address from MAC address
* I think some IPv6 routes are needed still for proper
local link connectivity.
* Duplicate Address Detection is still a TODO
* Style cleanup
* This fixes the drawing issues in the "font aliasing" area that are
appeared as small white points on the gray background.
Signed-off-by: Siarzhuk Zharski <zharik@gmx.li>
The variable is used in the TRACE(), but that is only enabled for
DEBUG >= 2. This therefore avoids a warning on DEBUG=1 builds.
Inspired by patch in #8252 by Urias McCullough.