Age Message
4 years 1 month Put code to construct unique path into new utlity function uniquePath()

Two almost identical versions existed of this code.

I generalized the code by taking out the knowledge of sections.
No other uses of this code are planned, but it is easier to review in
isolation now.
4 years 1 month Put code for moving links to a different section into Menu class

This is another step in bringing the management of the links on the
file system into a single location (the Menu class).

Fixes were applied as well. For example a directory for the new section
is now created if it did not exist yet.
4 years 1 month Fix bug in section directory creation method

The child directory (the one bearing the section name) was never
created; instead the parent directory (named "sections") was created
4 years 1 month Make sure inserting a new section doesn't change the selected section
4 years 1 month Changed LinkApp::renameFile() to setFile()

The original method name suggested it might rename the file on disk,
which it does not.
4 years 1 month Add "/compile" to .gitignore

This file is put there by one of the GNU autotools.
4 years 1 month Moved section directory delete code to Menu class

It is better to have all the file handling code for menu entry files
in the same place.
4 years 1 month Only allow empty sections to be deleted

Since not all links can be deleted, an action that deletes a section
and all the links it contains cannot be reliably implemented.
Therefore, the action will only be offered if all links have already
been deleted (or were never added in the first place).
4 years 1 month Removed "gp2x.h" header

None of the definitions in it were used anymore.
4 years 1 month Set a window title

This is useful when testing on PC.
4 years 2 months Declare "dirp" and "dptr" pointers just before they're needed
4 years 2 months Cleaned up code that loads a manual from an OPK file

Most of it is for readability only, but there is also a leak that was
plugged: opk_close() is now called if extraction fails.
4 years 2 months Gave Layer class a protected constructor
4 years 2 months Removed unused MMSP2ADC struct definition

A leftover from platform code that was removed long ago?
4 years 2 months Fixed formatting string type mismatches

The "%zd" conversion specification seems to produce no warnings on both
32-bit and 64-bit systems.
4 years 2 months Removed unused methods in LinkApp class
4 years 2 months Suppress Clang analyzer warnings about dead assignments

The last assignment in the series is indeed dead, but for consistency
I want to keep it around.
4 years 2 months Quit GMenu2X when window is closed in main screen

This helps when testing on PC.

I didn't bother to implement the same functionality for all dialog
event loops, since that would be a lot of extra work and not necessary
for the scenario that I need it for: clean exit when running under
4 years 2 months Removed the "Rename section" option

This option is not compatible with section names being provided by
other sources than user-created links. Examples of other sources are
built-in action links, links installed by a distro in a read-only
directory and metadata from OPK files.
4 years 8 months Remove all touch-screen-related code

It didn't work anymore, at all. Touchscreen polling occurred only
*after* waiting for a button had completed. So the touchscreen events,
if any, would be ignored until the user had pressed a button, possibly
firing off another action with that button press and forwarding the
touchscreen event to the next interface that got brought up as a

Reusing this code and fixing it would require far more work than
rewriting everything anew with touchscreen devices in mind from the

MtH: Resolved conflicts, mainly from the GMenu2X pointer to reference
change I did on 2015-04-21.
Commit 2a2634b3640286bf05fa5158e5f71ba1d2490aea, by Nebuleon Fumika
4 years 2 months Removed include of <ini.h>

No functions from libini are used, so this line was probably left there
by accident.
4 years 2 months Keep track of Link objects using unique_ptr

This ensures the memory is freed when the pointers are removed. While
there was an explicit delete loop in the destructor, memory leaks could
occur when links were removed from the menu.
4 years 2 months Use const references to strings in Menu method arguments

This avoids unnecessary copying.

Removed sectionName argument to addLink(), since its only caller didn't
provide a value for it, meaning it always defaulted.
4 years 2 months Keep list of section names sorted at all times

Keeping it sorted when sections are inserted after startup improves the
user experience and if we have code for that already, we might as well
use it during startup too.
4 years 2 months Create sections for built-in action links if necessary

Previously, the built-in actions would only be added if their
respective sections already existed.

This also works around the fact that Menu::paint() crashes if there
are no sections present.