Coder Social home page Coder Social logo

exlauncher's People

Contributors

harteex avatar pcercuei avatar zear avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

pcercuei zear

exlauncher's Issues

ScrollView

Add a scrollview which inherits collectionview to handle scrolling.

Support attribute template classes

Something similar to CSS, although unsure what syntax that will be used yet.
Classes should be supported that can be used on views, but also support a class that alters all views of a specific type.

Overloading should be supported, likely in the following order:
class affecting all views overloaded by class specified on specific view overloaded by attributes directly in a specific class

Replace match parent size value with * to fill available space

Currently, match parent is used as a value for size, which means it will take up all space from its position to the end of the parent.
Replace it with a star, which should fill up the remaining space.
This means we could have views a, b, and c like:
|a bbb c|
where a and c have fixed size and b uses a *

Old behaviour would cause the following:
|a bbb|c

Content size isn't updated properly on recalculated layout

If the parent of a view which is recalculating its layout has a fixed size (specified or match parent), it will not be updated.
The problem with this is that the contentsize of that view isn't updated.

This can be solved by either:

  1. Recalculate layout of any parent having a child with wrap_content
  2. Ignore contentSize completely for views that has a fixed size or those that match the parent.

This bug can be triggered by loading contentsizebug.xml

Implement OPK support

Implement OPK parsing and launching in AppManager

  • Load all OPKs and get the titles
  • Load icon from OPKs
  • Launch OPK

CollectionView

Have a category of views that are specialized to handle large collections of items. With builtin support for selection and scrolling.

These views might be forced to use a single item template. Possibly support some minor variation here.
Might / might not force same size of items.

General linux and GCW Zero makefile

A makefile needs to be added.

Currently it's possible to compile with:
g++ --std=c++11 *.cpp */*.cpp -I/usr/include/SDL2 -lSDL2 -lSDL2_ttf -lSDL_mixer -lSDL2_image -o exLauncher

Handle initial item selection

We need to handle the initial item selection.
To do this we need:

  1. Make inputView type CollectionView instead of View and enforce this (exception if the specified inputView isn't inheriting CollectionView)
  2. Create a method in CollectionView to initialize or update selections, and then call this from ScreenMenu

Recent app item

Support recent app items, which are filled with recently launched apps.

Allow XAML-style attributes

Allow attributes to be specified in XAML style, especially important for the itemTemplate attribute, to inline the template

CMake improvements for Windows / Visual Studio

  • Since autodetection of libraries doesn't work that good on Windows, some documentation is probably needed, especially for the cmake variable SDL2_LIBRARY, which you might think you need to fill yourself.
  • When running the compiled application, a console window pop ups next to the ExLauncher window. This is fixed by going into project properties in visual studio -> Linker -> System and setting SubSystem from Console to Windows. A fix which does this already in CMake would be great, if possible.
  • The generated projects ALL_BUILD and ZERO_CHECK doesn't seem necessary.
  • It would be nice if resources and include files are included in the project, not just source files.

Support multiple inputviews

Instead of having a set input view per screen, support having multiple one, and have some mechanism to move between them.
A suggestion would be configurable actions when leaving an input view upwards, downwards or to the left and right.

This could be useful for example if the icon area should be an input view, for things such as wifi settings.

System menu

System menu containing system info, shutdown, reboot and optionally exit if not run as launcher.

Selectors

Introduce selectors. A view that switches between views depending on on a certain state.
This would be used to show an item as selected.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.