asynts
b68a873067
AK: Move memory streams into their own header.
2020-09-01 17:25:26 +02:00
asynts
9ce4475907
Streams: Distinguish recoverable and fatal errors.
2020-09-01 17:25:26 +02:00
Andreas Kling
daeb2bdc60
LibGUI: Don't return early from AbstractView::set_cursor()
...
Calling set_cursor() with the same cursor index is not necessarily
a no-op! For example, we may want to toggle the selection.
2020-09-01 16:33:31 +02:00
Andreas Kling
37df36dbed
LibGUI: Implement move_cursor() in ColumnsView
2020-09-01 16:26:32 +02:00
Andreas Kling
386c7201d8
LibC: Move the static String in getlogin() out of the function
...
For some reason, this stops it from adding __cxa_guard_acquire/release
calls around its initialization. This unbreaks building ports.
2020-09-01 16:17:17 +02:00
Andreas Kling
27e86c03da
LibGUI: Implement the virtual IconView::scroll_into_view()
...
This is virtual in AbstractView so let's not shadow it with an IconView
specific variant.
2020-09-01 16:17:17 +02:00
Andreas Kling
72443bd1ab
LibGUI: Teach IconView to use AbstractView::move_cursor()
...
This makes it possible to manipulate the cursor programmatically via
the AbstractView interface.
2020-09-01 16:17:17 +02:00
Erlend Fagerheim
22265f1445
LibC: add getopt.h to unistd.h
2020-09-01 15:45:35 +02:00
Andreas Kling
e002cbb06b
Build: Add some -Wno-unknown-warning-option flags to CXXFLAGS
...
Patch from Anonymous.
2020-09-01 12:00:53 +02:00
AnotherTest
084a5c6a90
LibLine: Reset suggestion state on any non-tab key
...
This fixes the following (and more!):
```sh
$ /bin/dis<tab><tab><backspace><backspace><backspace><backspace><tab>
$ /bink_benchmark
```
2020-08-31 23:06:07 +02:00
Luke
124c52b3b5
LibWeb: Implement document ready state
2020-08-31 23:05:51 +02:00
Luke
8aabec1c94
LibWeb: Expose window.self and window.frames
...
"self" is a way to refer to the global object that will work in both
a window context and a web worker context.
"frames" apparently used to return a list of frame objects according
to MDN, but it now just returns the window object.
2020-08-31 23:05:10 +02:00
asynts
1c8312fa50
LibCompress: Fix a bug when wrapping around the buffer.
2020-08-31 23:04:55 +02:00
asynts
0ebf56efb0
LibCompress: Add support for dynamic deflate blocks.
2020-08-31 23:04:55 +02:00
asynts
d5c5507a0e
LibCompress: Deflate: Don't assert that the codes are valid.
2020-08-31 23:04:55 +02:00
asynts
c4799576ea
LibCompess: Add missing state update in DeflateDecompressor::read.
2020-08-31 23:04:55 +02:00
asynts
ef7bec6a3b
LibCompress: CanonicalCode: Don't leave unused code uninitialized.
2020-08-31 23:04:55 +02:00
Peter Nelson
259f8541fc
LibGfx: implement GIF RestorePrevious frame disposal mode
2020-08-31 18:54:44 +02:00
Peter Nelson
c3ee5e3451
LibGfx: clear previous GIF frame to transparent instead of whole image
2020-08-31 18:54:44 +02:00
Andreas Kling
a8d52a68f6
LibWeb: Take care of a FIXME in the "in table text" insertion mode
2020-08-31 18:51:34 +02:00
AnotherTest
9adbbff4dd
LibC: Partially implement 'freopen'
2020-08-31 09:14:11 +02:00
thankyouverycool
199c1da31c
LibGUI: Hide ResizeCorner in StatusBar when window is maximized
...
Fully expands status bars when maximized and prevents maximized
windows from being erroneously resized.
2020-08-31 09:08:26 +02:00
Sergey Bugaev
f808810d00
LibC: Deprecate strcpy(), strncpy(), strcat() and strncat() :^)
...
And also mark strlcpy() and strlcat() with __attribute__((warn_unused_result)).
Since our code is warning-free, this ensures we never misuse those functions.
(Or are very sure about doing it when turning off the warning for a particular
piece of code.)
2020-08-30 17:35:27 +02:00
Sergey Bugaev
1cdd798ac7
LibC: Replace some strncpy() calls with memcpy()
...
In case we know exactly how many bytes we're copying (and not copying a string
while limiting its length to that of a buffer), memcpy() is a more appropriate
function to call.
Also, fix null-terminating the %c pointer.
2020-08-30 17:35:27 +02:00
Sergey Bugaev
34353e18cf
LibC: Misc fixes and improvements in netdb
2020-08-30 17:35:27 +02:00
Sergey Bugaev
0817ef563e
LibC: strcpy a socket address at compile time
...
This way, we'd get compile-time errors if the address was too long for the buffer.
2020-08-30 17:35:27 +02:00
Sergey Bugaev
852454746e
Everywhere: Port to String::copy_characters_to_buffer()
2020-08-30 17:35:27 +02:00
Sergey Bugaev
17109a3a31
LibC: Use AK::String-backed buffers instead of static buffers
...
Also, refactor the hell out of pwd.cpp & grp.cpp
2020-08-30 17:35:27 +02:00
Linus Groh
16da91b7e7
LibWeb: Remove redundant .prettierrc
...
Now that LibJS's .prettierrc has been moved to the repository root (as
we start having .js files in /res), we don't need to keep a second,
identical copy for the LibWeb tests.
2020-08-30 17:31:08 +02:00
Nico Weber
9ad5a261f7
LibCore: Let DateTime::create()/set_time() take summer time into account
...
DateTime::create() takes a date/time in local time, but it set
tm_isdst to 0, which meant it was in local winter time always.
Set tm_isdst to -1 so that times during summer time are treated
in summer time, and times in winter time are treated as winter
time (when appropriate). When the time is adjusted backward by
one hour, the same time can be in winter time or summer time,
so this isn't 100% reliable, but for most of the year it should
work fine.
Since LibJS uses DateTime, this means that the Date tuple
ctor (which creates a timestamp from year/month/day/hours/etc
in local time) and getTime() should now have consistent (and
correct) output, which should fix #3327 .
In Serenity itself, dst handling (and timezones) are unimplemented
and this doens't have any effect yet, but in Lagom this has an effect.
2020-08-30 16:56:47 +02:00
Andreas Kling
57dd3b66c5
Kernel+LibC+UE: Implement sleep() via sys$clock_nanosleep()
...
This doesn't need to be its own syscall either. :^)
2020-08-30 13:21:24 +02:00
Andreas Kling
f857f3ce4c
Kernel+LibC+UE: Implement usleep() via sys$clock_nanosleep()
...
This doesn't need to be its own syscall. Thanks @BenWiederhake for
the idea. :^)
2020-08-30 10:45:51 +02:00
Andreas Kling
95ed363b15
LibGfx: Fix Lagom build (possible uninitialized variable warnings)
2020-08-30 10:40:40 +02:00
Ben Wiederhake
db422fa499
LibJS: Avoid unnecessary lambda
...
Especially when it's evaluated immediately and unconditionally.
2020-08-30 10:31:04 +02:00
Peter Nelson
b742d593dd
LibGfx: use Gfx::Color instead of local struct for GIF colour map
2020-08-30 10:27:36 +02:00
Peter Nelson
c8eccc00b1
LibGfx: only cache last decoded GIF frame
...
GIFLoader now uses a single frame buffer to cache the last decoded
frame. This drastically reduces memory usage at the small expense of
re-decoding frames on each loop.
2020-08-30 10:27:36 +02:00
Peter Nelson
786872e4c9
LibGfx: add support for interlaced GIFs
2020-08-30 10:27:36 +02:00
Peter Nelson
1341025da7
LibGfx: correctly handle GIF frame disposal modes
...
RestoreBackground disposal mode is now a transparent fill to allow
background to show through.
RestorePrevious disposal mode now restores the previous frame.
2020-08-30 10:27:36 +02:00
asynts
3f1dfc2e97
LibCompress: Implement gzip.
2020-08-30 09:56:10 +02:00
asynts
9664453739
LibCore: Add InputFileStream and OutputFileStream.
2020-08-30 09:56:10 +02:00
Ben Wiederhake
e59c415ae3
LibVT+Terminal: Mark default action in context menu
2020-08-30 09:47:49 +02:00
Ben Wiederhake
d8e22fedc3
Libraries: Unbreak building with extra debug macros
2020-08-30 09:43:49 +02:00
AnotherTest
e75247a75b
DisplaySettings+LibGUI: Move ItemListModel into LibGUI
...
Without this model, comboboxes are abysmal to work with, so let's not
redefine it every time.
2020-08-29 17:42:03 +02:00
thankyouverycool
2f9a071072
Base+LibGUI: Refresh filetype icons for consistency
...
Improves ini icon depth and adds complementary 16x16/32x32 icons
for music and sound filetypes.
2020-08-29 16:19:02 +02:00
Andreas Kling
b084411258
LibGUI: Make Del/Backspace clear cell w/ "any key pressed" edit trigger
...
This doesn't feel 100% right but it's better than inserting some goofy
whitespace when pressing these keys.
2020-08-29 01:04:22 +02:00
Andreas Kling
c3b3a078f3
LibGUI: Make SortingProxyModel update all view cursors on resort
...
Otherwise they will be stale indexes, which is no good. :^)
2020-08-29 00:18:35 +02:00
Andreas Kling
fed53e19c7
LibGUI: Make AbstractView::set_cursor() scrolling into view optional
...
Sometimes you just want to set the cursor programmatically without
scrolling the view to make the cursor visible.
2020-08-29 00:17:42 +02:00
Andreas Kling
734035857e
LibGUI: Allow AbstractView::set_cursor(ModelIndex(), ...)
...
This should be a valid way to clear the cursor.
2020-08-29 00:16:58 +02:00
Andreas Kling
6316525d50
LibGUI: Add optional "tab key navigation" to AbstractView
...
If enabled, the view cursor will move right/left when pressing
tab/shift+tab.
2020-08-28 21:09:38 +02:00
Andreas Kling
70d3dd5b87
LibGUI: Make TableView::move_cursor() public
...
It was already public in the base class, so hiding it here was just
a mistake.
2020-08-28 21:02:46 +02:00