aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAge
* Scale header image to nicely fill username labelConfuSomu2024-03-24
| | | | | | | This is similar to what the Mastodon web interface (and other clients, such as SubwayTooter) does with header images, only in an empty zone above the display name label. We could evidently change this with ease in the future.
* Draw Actor header image centeredConfuSomu2024-03-20
| | | | | This looks visually more attractive and is way better than squishing the image to fit in the display name text boundaries.
* Use smart pointers with AP classes and InstanceConfuSomu2024-03-20
|
* Fix harmless missing return for non-void functionConfuSomu2024-02-06
| | | | | | choose_icon's switch statement was missing a return statement for the default case, which would be unreachable anyways (unless in the case of a bug) as all enum values are already covered.
* Display header image in actor info tabConfuSomu2024-01-26
|
* Use QStringLiteral in some placesConfuSomu2024-01-26
| | | | | | This should provide a light performance improvement as the QString is built at compile time, with the generated data being stored in the read-only segment of the built object file.
* Clear Activity list when invalid archive openedConfuSomu2024-01-26
|
* Show error message in actor info tab when no actorConfuSomu2024-01-24
|
* Implemement Actor information tabConfuSomu2024-01-20
| | | | | This class still has improvements to be made, but it works and I am satisfied with it!
* Show status list item tooltip regardless of NDEBUGConfuSomu2024-01-08
| | | | This shows the tooltip even when making a release build.
* Make status list item tooltip translatableConfuSomu2024-01-08
|
* Make mastodonpp support configurableConfuSomu2024-01-08
|
* Use configure_file instead of setting compile defsConfuSomu2024-01-07
| | | | | This should avoid unnecessary recompiles of the whole project when the git hash changes and the project is reconfigured.
* Make hyperlinks clickable in StatusInfoWidgetConfuSomu2024-01-06
| | | | | I had to make the widget a QTextBrowser as QTextEdit does not allow easy opening of hyperlinks.
* Display human-readable verison info if availableConfuSomu2024-01-05
| | | | Displayed in about dialog.
* Display commit hash in about dialogConfuSomu2024-01-05
|
* Implement about dialogConfuSomu2024-01-05
|
* Rerun search if new archive is openedConfuSomu2024-01-05
|
* Remove useless codeConfuSomu2024-01-04
|
* Move activity list to a tab widgetConfuSomu2024-01-03
| | | | | | | | This allows us to have more tabs in the future with additional information, such as information about the Actor or even other activity views. This commit was quite a lot of work and refactoring!
* Fix Qt 6 compilationConfuSomu2023-11-27
| | | | | | Compilation would fail due to QtConcurrent changes in Qt 6. See the following on Qt's website: https://doc.qt.io/qt-6/concurrent-changes-qt6.html#qtconcurrent-run
* Remove variants from QtConcurrent in main windowConfuSomu2023-11-27
| | | | | | The std::variants weren't used and were making the code more complex to no advantage. All code that would have benefited from variants has already been moved to QThreads elsewhere
* Fix extraneous margin around status info widgetConfuSomu2023-11-18
|
* Remove duplicate status info widgetConfuSomu2023-11-18
|
* Move status info widget to its own widgetConfuSomu2023-11-12
| | | | | | | It is responsable of processing list items which are given to it, via signals, and then displaying them on the interface. Making this widget separate and modular will allow creating more advanced status views that aren't only HTML-based and that are more intuitive to use.
* Define archive item ref type for Archive classesConfuSomu2023-09-12
| | | | | | This type allows extension and the implementation of a more complete archive item reference system in the future as it allows going beyond ints.
* Implement archive method for getting APActivityConfuSomu2023-09-12
| | | | | | This replaces the existing method that returns HTML with a method that gives us an APActivity object, which is more precise and allows more extension in the future.
* Implement basic Mastodon API supportConfuSomu2023-08-24
| | | | | | | Implement support for OAuth 2.0 code entry, which is then used to retrieve a token that is stored in the application's settings. Authentification allowed the implementation of a basic "get post from URL" feature mostly made for testing.
* Display status type icons in status listConfuSomu2023-08-16
| | | | | | | | These icons allow users to identify the type of status with ease. I had to make — hand draw — custom icons as I didn't find any suitable icons in the Free Desktop Icon Theme Specification. Note that these icons are currently suitable only for a light theme. Support for a dark theme shouldn't be too hard to add.
* Make quick_read_setting() a templated methodConfuSomu2023-08-16
| | | | | This allows terser usage and removes the need for manually invoking QVariant's .value<T>() method.
* Implement localtime/UTC time display settingConfuSomu2023-08-16
|
* Remove the commented-out AppSettings structConfuSomu2023-08-15
| | | | It was only used for reference and doesn't serve anything now.
* Create convinence method for reading settingsConfuSomu2023-08-15
| | | | | | | | | | This method avoids having to create a SettingsInterface object that will be only used to read a small number of settings before being destroyed. It creates a static object that persists between invocations. Through the use of QSettings for reading a value, we are assured of always reading the most up to date version of settings as this class guaranties that changes done to one QSettings object will be immediately visible in other QSettings objects.
* Implement "fill address" in instance settingsConfuSomu2023-08-15
| | | | | Implement the "fill address" action in the instance login settings frame that is in the network tab.
* Implement settings dialogConfuSomu2023-08-15
|
* Free last_search when destroying FindDialogConfuSomu2023-08-08
|
* Remove unnecessary include in finddialog.cppConfuSomu2023-08-08
|
* Create an Archive base classConfuSomu2023-08-03
| | | | | | | This class is inherited by MastodonArchive to provide Mastodon (and compatible) archive reading support. A base Archive class allows implementing reading support of other archive formats that are from other services.
* Fix ellipsis being outside of viewport in listConfuSomu2023-08-02
| | | | | | | | | | Some list widget items have lines which where horizontally extending outside of the viewport, creating a horizontal scrollbar and placing ellipsis outside of the visible area. This commit fixes this problem by making sure that ellipsis are placed at the end of the visible lines, made possible by forbidding horizontal scroll bars which forbids horizontal scrolling (hopefully this is not a bug as I don't see any similar property that can be adjusted).
* Initialize find dialog with text from main windowConfuSomu2023-08-02
| | | | | | Properly emit the text that was entered in the search bar before the find dialog was opened. This makes sure that it is queried as expected by the user.
* Make a QAction from the Search buttonConfuSomu2023-08-02
| | | | | This allows us to have an action in the menu bar and a keyboard shortcut.
* Implement find dialogConfuSomu2023-08-02
| | | | | This dialog consolidates options for searching through textual elements in lists which simplifies the logic present in the MainWindow class.
* Move APAttachmentFields to fields.hConfuSomu2023-07-18
| | | | | Finish consolidating every AP…Field in one file to avoid circular include dependencies which are very hard/impossible to work with.
* Implement Question object type supportConfuSomu2023-07-18
| | | | | | | This commit adds support for dealing with ActivityPub Questions, which are polls. They are like Notes (posts) but contain a few more keys that record information about the poll options, number of votes and poll closure date.
* Account for "@context" in outbox.json being arrayConfuSomu2023-07-15
| | | | | | | "@context" in the outbox.json file is not always a string and sometimes might be an array with multiple elements. This patch implements a json_check_item method which checks for the existence of "https://www.w3.org/ns/activitystreams" in both cases.
* Rename variables in Archive::get_html_status_infoConfuSomu2023-07-10
| | | | This fixes misleading variable names.
* Return error in Archive::init() in additional caseConfuSomu2023-07-10
|
* Implement basic multithreading supportConfuSomu2023-07-10
| | | | | | A few CPU heavy operations, which are opening an archive and displaying a selected Activity, have been moved to another thread to avoid having long-running operations on the main thread.
* Move implementation detail functions into ArchiveConfuSomu2023-07-06
| | | | | | | These functions were in archive_parser.cpp's compilation unit which has only functions related to the Archive class but it is better to make them private members of Archive as they are implementation details of this class to make the link more clear.
* Implement a small library of ActivityPub objectsConfuSomu2023-07-05
| | | | | | | | | | | | These objects allow, and will allow us, to move HTML rendering out of the archive parser and into separate classes. Each of the derived classes specialise HTML rendering for their specific requirements. Furthermore, these ActivityPub objects will be able to be expanded upon and have support to be written to disk, in a database, for instance. Separating ActivityPub object retrieving from rendering allows us to implement other retrieving sources and methods, such as downloading posts from a configured remote instance.