Commit Graph

1191 Commits

Author SHA1 Message Date
Dmitrii Trifonov
eb2b406173 FontEditor: Added quick and dirty support to add cyrrilic fonts.
This is a hack to support cyrillic text in serenity OS.
2021-04-09 08:33:12 +02:00
thankyouverycool
08f11d01d9 FontEditor+ClipboardHistory: Use system-wide Clipboard
Glyphs can now be copied between editors.
2021-04-07 19:27:01 +02:00
thankyouverycool
ebf3ce7806 FontEditor: Reset selected glyph on init
Fixes glyphs not updating when loading between fonts at the same
index. Fixes GlyphEditor spinbox inadvertently modifying width
of last selected index.
2021-04-07 19:27:01 +02:00
thankyouverycool
bb9cd13a56 FontEditor: Convert to GML and add new edit commands to GlyphEditor
Adds cut, copy, paste and delete to GlyphEditor. Font preview has
moved to a separate resizable ToolWindow. Font metadata can now be
hidden. FontEditor and glyph widgets can now be re-initialized
instead of resetting window's main widget after loading new fonts.
2021-04-06 22:24:05 +02:00
thankyouverycool
d115b29a5b FontEditor: Inherit GlyphMapWidget from ScrollableWidget
This makes it easier to work in FontEditor at low resolution.
Previously glyph map resized itself and the parent window to
accomodate fonts, which isn't ideal. Users typically control
window size/position after launch; widgets have to make do.
2021-04-06 22:24:05 +02:00
Andreas Kling
ec1a72b759 FileManager: Set the default menu item in desktop context menus
This makes the "Run TextEditor" action show up in bold text as expected
when opening the context menu for TextEditor on the desktop. :^)
2021-04-06 17:55:47 +02:00
Andreas Kling
7b9754d976 SystemMonitor: Highlight kernel processes a bit better in SystemMonitor
Kernel processes are now displayed with a gear icon and a "(*)" suffix
in the process list.
2021-04-06 17:55:47 +02:00
Andreas Kling
516868e197 SystemMonitor: Add Alt shortcuts for top-level menus 2021-04-05 23:15:43 +02:00
Andreas Kling
0652c2e4cc FileManager: Add Alt shortcuts for top-level menus 2021-04-05 23:15:43 +02:00
Andreas Kling
1d46e8d50c Browser: Add Alt shortcuts for top-level menus 2021-04-05 23:15:43 +02:00
Andreas Kling
357f288fef Terminal: Add Alt shortcuts for top-level menus 2021-04-05 23:15:43 +02:00
Andreas Kling
6902adbb84 SystemMonitor: Only show the most important process stats by default
You can still enable additional columns via the context menu, and this
gives us a much more focused default interface.
2021-04-05 13:40:25 +02:00
Andreas Kling
52de9b1753 LibGUI: Do AbstractView::set_column_hidden() => set_column_visible()
This API felt backwards, so let's change it.
2021-04-05 11:57:47 +02:00
Andreas Kling
cbc582e0df SystemMonitor: Don't generate backtraces while not looking at them 2021-04-05 11:42:54 +02:00
Linus Groh
45d4bf156d SystemMonitor: Tweak default window size
This ensures that all information on the 'Graphs' tab is visible by
default without having to resize the window.

Fixes #6135.
2021-04-05 11:26:07 +02:00
Tim Waterhouse
3feaebfc2d PixelPaint: Empty Tool menu
Fix #4038 by not deferring the creation of the tools. The original
change that introduced this, 7973f76790,
mentions this was needed to avoid having the menu work on the wrong
window, but I don't see that issue with this change so that may not be
needed anymore.
2021-04-05 09:04:43 +02:00
Andreas Kling
7b7cbcecdf SystemMonitor: Scope the process-specific actions to the process list
We don't want the process-specific actions to activate via keyboard
shortcuts when we're not focusing the process list.
2021-04-04 22:45:45 +02:00
Andreas Kling
5d379fcfb4 SystemMonitor: Actually reuse existing process properties windows 2021-04-04 22:43:43 +02:00
Andreas Kling
eff7ea5b84 LibGUI: Add GUI::CommonActions::make_properties_action()
Many apps want a "Properties" action with the same icon and shortcut.
2021-04-04 22:43:43 +02:00
Andreas Kling
578f749791 SystemMonitor: Remove unnecessary splitter from UI layout 2021-04-04 22:43:43 +02:00
Andreas Kling
8f0f6af369 SystemMonitor: Show total CPU usage percentage in status bar 2021-04-04 22:43:43 +02:00
Andreas Kling
9cba533e36 SystemMonitor: Tweak main UI layout :^) 2021-04-04 22:43:43 +02:00
Andreas Kling
a1b7bd6fea SystemMonitor: Add ability to open process properties from context menu 2021-04-04 22:43:43 +02:00
Andreas Kling
af06eac364 SystemMonitor: Remove "Process" context menu from menu bar
This menu is only relevant while interacting with the process list,
so let's not have it in the menu bar where its presence implies
universal relevance.
2021-04-04 22:43:43 +02:00
Andreas Kling
58ae8aabea SystemMonitor: Show process-specific details in a separate window
When double-clicking a process in the process list, we now open the
detailed information in a new window instead of showing it in a view
below the process list.

This declutters the main UI, and allows you to view details for
multiple processes at the same time.

This is just a first cut, there are many refinements possible here. :^)
2021-04-04 22:43:43 +02:00
Andreas Kling
5fcce5c7e2 SystemMonitor: Start capturing CPU/memory graphs on startup
It felt really weird that the graphs didn't start filling in before
you opened the graph tab for the first time.
2021-04-04 22:43:43 +02:00
Andreas Kling
0f7443f010 SystemMonitor: Add a status bar to the main window
To get us started, this shows the number of processes and threads in
the last captured state.
2021-04-04 22:43:43 +02:00
Marco Cutecchia
1e912fb5a1 PixelPaint: Avoid notifying image when creating a layer's snapshot
This fixes a bug where the application would crash if the user
changed the default values for opacity or visibility of a layer
and then tried to draw on it.
2021-04-04 22:43:30 +02:00
Andreas Kling
0b8226811f Kernel+CrashReporter: Add metadata about page faults to crash reports
Crash reports for page faults now tell you what kind of memory access
failed and where. :^)
2021-04-04 20:13:55 +02:00
Andreas Kling
e238435c4f CrashReporter: Only create coredump metadata hash map once
We were rebuilding the metadata map a bunch of times on startup.
2021-04-04 20:13:55 +02:00
Dawid Wolosowicz
f05cca7a9a Spreadsheet: Declare the extern GML variable as an array, not a pointer
Part of #5906
Fixes #5943
2021-04-04 00:38:02 +02:00
thankyouverycool
14e074cd24 LibGUI+Calendar: Inherit from Frame class
Fixes incorrect painting with variable thickness and cuts down
on some layout boilerplate.
2021-04-02 22:23:21 +02:00
Daniël van de Burgt
a106f852d3 WindowServer+MouseSettings: Add ability to configure double-click speed (#5876)
This adds a double-click speed slider control to the Mouse Settings
panel, and value labels for both the movement speed and double-click
speed sliders.

To allow for updating and persisting the configured double-click
speed through the WindowServer, two IPC calls - `SetDoubleClickSpeed`
and `GetDoubleClickSpeed` - have been added.
2021-04-02 16:08:18 +02:00
Idan Horowitz
77601e09c8 FontEditor+TextEditor+Playground: Refuse to load device files
This prevents the undefined behaviour that would come up as a result of
doing so. (For example: opening "infinite" devices like /dev/full will
result in an infinite loop until exhaustion of memory)
2021-03-30 11:29:52 +02:00
thankyouverycool
4465b37897 LibGUI+Calendar: Add new month and year views to Calendar
And overhaul resize and paint events to fix layout edge cases in
which Calendar wasn't filling its parent widget completely. Ensures
month views always display prior month days for click navigation.
Converts Calendar app layout to GML.
2021-03-30 10:34:34 +02:00
Timothy Flynn
855920fe13 Browser+LibWeb+WebContent: Add action to clear resource cache 2021-03-30 10:27:49 +02:00
Edgar Araújo
ca90a2029d Everywhere: Change font properties to be described in GML 2021-03-29 09:10:23 +02:00
Edgar Araújo
243d7d9ecf Everywhere: Remove empty {} from GML objects 2021-03-29 09:10:23 +02:00
Idan Horowitz
9f656b6fa9 LibCoreDump+CrashDaemon: Compress coredumps
Most coredumps contain large amounts of consecutive null bytes and as
such are a prime candidate for compression.

This commit makes CrashDaemon compress files once the kernel finishes
emitting them, as well as adds the functionality needed in LibCoreDump
to then parse them.
2021-03-28 20:42:33 +02:00
AnotherTest
ccf84a4709 Spreadsheet: Ignore extra empty lines after the rows
We now ignore the last CRLF in e.g.
```csv
aaa,bbb,ccc CRLF
zzz,yyy,xxx CRLF
```
2021-03-28 11:46:47 +02:00
AnotherTest
894bfa30a2 Spreadsheet: Make the CSV reader more lenient
This adds an option "Lenient" that makes the reader conform to what
appears to be the norm in spreadsheet-land:
- Treat missing values as empty ones
- Update previously read rows if another row with more columns are seen
  afterwards
2021-03-28 11:46:47 +02:00
AnotherTest
102065a8a9 Spreadsheet: Show the error (if any) in csv import dialog's preview
...and don't try to read from a CSV that has errors.
Fixes #5942.
2021-03-28 11:46:47 +02:00
Andreas Kling
247717431d LibGUI: Make GUI::Widget::event() protected 2021-03-28 11:25:40 +02:00
Linus Groh
9734420dfa Browser: Set parent of tab child windows
By setting the parent of the JS console, DOM inspector, view source and
download windows, they will be destroyed automatically when the main
browser window is closed.

Fixes #2373.
2021-03-27 19:24:40 +01:00
Cesar Torres
fd126578d9 SoundPlayer: Add samplerate variable to visualizations
also fix conflict
2021-03-27 10:20:55 +01:00
Cesar Torres
2e28b8ebcc SoundPlayer: Add playlist supprt
And a M3U(8) parser
2021-03-27 10:20:55 +01:00
Cesar Torres
e4d6a56a28 AudioPlayer: Further decouple the player from the GUI 2021-03-27 10:20:55 +01:00
Cesar Torres
f9e4bff487 SoundPlayer: Reduce sample buffer size and add a sample load event 2021-03-27 10:20:55 +01:00
Cesar Torres
7aa5297835 SoundPlayer: Update the SoundPlayer interface
Also fix rebase conflict
2021-03-27 10:20:55 +01:00
Cesar Torres
45e928bfb2 SoundPlayer: Adapt the existing SampleWidget visualization to
the new abstraction
2021-03-27 10:20:55 +01:00