summaryrefslogtreecommitdiffstats
path: root/kernel/Makefile
AgeCommit message (Expand)Author
2019-09-27Merge branch 'next-integrity' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds
2019-09-20Merge tag 'kbuild-v5.4' of git://git.kernel.org/pub/scm/linux/kernel/git/masa...Linus Torvalds
2019-09-16Merge branch 'parisc-5.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds
2019-09-06kexec: add KEXEC_ELFSven Schnelle
2019-09-04kbuild: add $(BASH) to run scripts with bash-extensionMasahiro Yamada
2019-08-05MODSIGN: Export module signature definitionsThiago Jung Bauermann
2019-08-03memremap: move from kernel/ to mm/Christoph Hellwig
2019-05-24kheaders: Move from proc to sysfsJoel Fernandes (Google)
2019-05-14kernel/Makefile: don't assume that kernel/gen_ikh_data.sh is executableAndrew Morton
2019-05-07Merge tag 'driver-core-5.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/...Linus Torvalds
2019-04-29Provide in-kernel headers to make extending kernel easierJoel Fernandes (Google)
2019-04-03x86/uaccess, kcov: Disable stack protectorPeter Zijlstra
2019-03-07kernel/configs: use .incbin directive to embed config_data.gzMasahiro Yamada
2019-01-06kbuild: change filechk to surround the given command with { }Masahiro Yamada
2018-12-28Merge tag 'y2038-for-4.21' of ssh://gitolite.kernel.org:/pub/scm/linux/kernel...Linus Torvalds
2018-12-07y2038: futex: Move compat implementation into futex.cArnd Bergmann
2018-11-19audit: remove WATCH and TREE config optionsRichard Guy Briggs
2018-09-04x86/entry: Add STACKLEAK erasing the kernel stack at the end of syscallsAlexander Popov
2018-07-18kbuild: move bin2c back to scripts/ from scripts/basic/Masahiro Yamada
2018-06-14dma-mapping: move all DMA mapping code to kernel/dmaChristoph Hellwig
2018-06-10Merge branch 'core-rseq-for-linus' of git://git.kernel.org/pub/scm/linux/kern...Linus Torvalds
2018-06-06rseq: Introduce restartable sequences system callMathieu Desnoyers
2018-05-15memremap: split devm_memremap_pages() and memremap() infrastructureDan Williams
2018-01-12error-injection: Support fault injection frameworkMasami Hiramatsu
2017-11-02License cleanup: add SPDX GPL-2.0 license identifier to files with no licenseGreg Kroah-Hartman
2017-09-08kmod: move #ifdef CONFIG_MODULES wrapper to MakefileLuis R. Rodriguez
2017-09-08kmod: split out umh code into its own fileLuis R. Rodriguez
2017-08-17membarrier: Provide expedited private commandMathieu Desnoyers
2017-07-12kernel/watchdog: split up config optionsNicholas Piggin
2017-05-08crash: move crashkernel parsing and vmcore related code under CONFIG_CRASH_COREHari Bathini
2016-12-27cgroup: move cgroup files under kernel/cgroup/Tejun Heo
2016-12-14Merge branch 'akpm' (patches from Andrew)Linus Torvalds
2016-12-14kernel/watchdog.c: move hardlockup detector to separate fileBabu Moger
2016-12-14Remove last traces of ikconfig.hPaul Bolle
2016-08-08userns: Add per user namespace sysctls.Eric W. Biederman
2016-05-23ELF/MIPS build fixRalf Baechle
2016-03-22kernel: add kcov code coverageDmitry Vyukov
2016-01-31kernel/Makefile: remove the useless CFLAGS_REMOVE_cgroup-debug.oLi Bin
2015-09-11sys_membarrier(): system-wide memory barrier (generic, x86)Mathieu Desnoyers
2015-09-10kexec: split kexec_load syscall from kexec core codeDave Young
2015-09-10kexec: split kexec_file syscall code to kexec_file.cDave Young
2015-09-08Merge tag 'libnvdimm-for-4.3' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds
2015-09-08Merge branch 'upstream' of git://git.infradead.org/users/pcmoore/auditLinus Torvalds
2015-09-08Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/...Linus Torvalds
2015-08-14arch: introduce memremap()Dan Williams
2015-08-14Move certificate handling to its own directoryDavid Howells
2015-08-12modsign: Use extract-cert to process CONFIG_SYSTEM_TRUSTED_KEYSDavid Woodhouse
2015-08-07modsign: Add explicit CONFIG_SYSTEM_TRUSTED_KEYS optionDavid Woodhouse
2015-08-07modsign: Use single PEM file for autogenerated keyDavid Woodhouse
2015-08-07modsign: Extract signing cert from CONFIG_MODULE_SIG_KEY if neededDavid Woodhouse
.highlight .hll { background-color: #ffffcc } .highlight .c { color: #888888 } /* Comment */ .highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ .highlight .k { color: #008800; font-weight: bold } /* Keyword */ .highlight .ch { color: #888888 } /* Comment.Hashbang */ .highlight .cm { color: #888888 } /* Comment.Multiline */ .highlight .cp { color: #cc0000; font-weight: bold } /* Comment.Preproc */ .highlight .cpf { color: #888888 } /* Comment.PreprocFile */ .highlight .c1 { color: #888888 } /* Comment.Single */ .highlight .cs { color: #cc0000; font-weight: bold; background-color: #fff0f0 } /* Comment.Special */ .highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ .highlight .ge { font-style: italic } /* Generic.Emph */ .highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */ .highlight .gr { color: #aa0000 } /* Generic.Error */ .highlight .gh { color: #333333 } /* Generic.Heading */ .highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ .highlight .go { color: #888888 } /* Generic.Output */ .highlight .gp { color: #555555 } /* Generic.Prompt */ .highlight .gs { font-weight: bold } /* Generic.Strong */ .highlight .gu { color: #666666 } /* Generic.Subheading */ .highlight .gt { color: #aa0000 } /* Generic.Traceback */ .highlight .kc { color: #008800; font-weight: bold } /* Keyword.Constant */ .highlight .kd { color: #008800; font-weight: bold } /* Keyword.Declaration */ .highlight .kn { color: #008800; font-weight: bold } /* Keyword.Namespace */ .highlight .kp { color: #008800 } /* Keyword.Pseudo */ .highlight .kr { color: #008800; font-weight: bold } /* Keyword.Reserved */ .highlight .kt { color: #888888; font-weight: bold } /* Keyword.Type */ .highlight .m { color: #0000DD; font-weight: bold } /* Literal.Number */ .highlight .s { color: #dd2200; background-color: #fff0f0 } /* Literal.String */ .highlight .na { color: #336699 } /* Name.Attribute */ .highlight .nb { color: #003388 } /* Name.Builtin */ .highlight .nc { color: #bb0066; font-weight: bold } /* Name.Class */ .highlight .no { color: #003366; font-weight: bold } /* Name.Constant */ .highlight .nd { color: #555555 } /* Name.Decorator */ .highlight .ne { color: #bb0066; font-weight: bold } /* Name.Exception */ .highlight .nf { color: #0066bb; font-weight: bold } /* Name.Function */ .highlight .nl { color: #336699; font-style: italic } /* Name.Label */ .highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */ .highlight .py { color: #336699; font-weight: bold } /* Name.Property */ .highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */ .highlight .nv { color: #336699 } /* Name.Variable */ .highlight .ow { color: #008800 } /* Operator.Word */ .highlight .w { color: #bbbbbb } /* Text.Whitespace */ .highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */ .highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */ .highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */ .highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */ .highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ .highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ .highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ .highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ .highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
<template>
    <AppNavigation>
        <AddFeed v-if="showAddFeed" @close="closeShowAddFeed()" />
        <AppNavigationNew :text="t('news', 'Subscribe')"
            button-id="new-feed-button"
            button-class="icon-add"
            @click="showShowAddFeed()" />

        <ul id="locations" class="with-icon">
            <AppNavigationNewItem :title="t('news', 'New folder')"
                icon="icon-add-folder"
                @new-item="newFolder" />

            <AppNavigationItem :title="t('news', 'Unread articles')" icon="icon-rss">
                <template #actions>
                    <ActionButton icon="icon-checkmark" @click="alert('Edit')">
                        t('news','Mark read')
                    </ActionButton>
                </template>
                <template #counter>
                    <CounterBubble>5</CounterBubble>
                </template>
            </AppNavigationItem>
            <AppNavigationItem :title="t('news', 'All articles')" icon="icon-rss">
                <template #actions>
                    <ActionButton icon="icon-checkmark" @click="alert('Edit')">
                        t('news','Mark read')
                    </ActionButton>
                </template>
            </AppNavigationItem>
            <AppNavigationItem :title="t('news', 'Starred')" icon="icon-starred">
                <template #counter>
                    <CounterBubble>35</CounterBubble>
                </template>
            </AppNavigationItem>

            <AppNavigationItem v-for="folder in folders"
                :key="folder.name"
                :title="folder.name"
                icon="icon-folder"
                :allow-collapse="true">
                <template #default>
                    <AppNavigationItem v-for="feed in folder.feeds"
                        :key="feed.name"
                        :title="feed.title">
                        <template #icon>
                            <img v-if="feed.faviconLink"
                                :src="feed.faviconLink"
                                alt="feedIcon">
                            <div v-if="!feed.faviconLink" class="icon-rss" />
                        </template>
                        <template #actions>
                            <ActionButton icon="icon-checkmark" @click="alert('Mark read')">
                                {{ t("news", "Mark read") }}
                            </ActionButton>
                            <ActionButton icon="icon-pinned" @click="alert('Rename')">
                                {{ t("news", "Unpin from top") }}
                            </ActionButton>
                            <ActionButton icon="icon-caret-dark"
                                @click="deleteFolder(folder)">
                                {{ t("news", "Newest first") }}
                            </ActionButton>
                            <ActionButton icon="icon-caret-dark"
                                @click="deleteFolder(folder)">
                                {{ t("news", "Oldest first") }}
                            </ActionButton>
                            <ActionButton icon="icon-caret-dark"
                                @click="deleteFolder(folder)">
                                {{ t("news", "Default order") }}
                            </ActionButton>
                            <ActionButton icon="icon-full-text-disabled"
                                @click="deleteFolder(folder)">
                                {{ t("news", "Enable full text") }}
                            </ActionButton>
                            <ActionButton icon="icon-full-text-enabled"
                                @click="deleteFolder(folder)">
                                {{ t("news", "Disable full text") }}
                            </ActionButton>
                            <ActionButton icon="icon-updatemode-default"
                                @click="deleteFolder(folder)">
                                {{ t("news", "Unread updated") }}
                            </ActionButton>
                            <ActionButton icon="icon-updatemode-unread"
                                @click="deleteFolder(folder)">
                                {{ t("news", "Ignore updated") }}
                            </ActionButton>
                            <ActionButton icon="icon-icon-rss" @click="deleteFolder(folder)">
                                {{ t("news", "Open feed URL") }}
                            </ActionButton>
                            <ActionButton icon="icon-icon-rename"
                                @click="deleteFolder(folder)">
                                {{ t("news", "Rename") }}
                            </ActionButton>
                            <ActionButton icon="icon-delete" @click="deleteFolder(folder)">
                                {{ t("news", "Delete") }}
                            </ActionButton>
                        </template>
                    </AppNavigationItem>
                </template>
                <template v-if="folder.feedCount > 0" #counter>
                    <CounterBubble>{{ folder.feedCount }}</CounterBubble>
                </template>
                <template #actions>
                    <ActionButton icon="icon-checkmark" @click="alert('Mark read')">
                        {{ t("news", "Mark read") }}
                    </ActionButton>
                    <ActionButton icon="icon-rename" @click="alert('Rename')">
                        {{ t("news", "Rename") }}
                    </ActionButton>
                    <ActionButton icon="icon-delete" @click="deleteFolder(folder)">
                        {{ t("news", "Delete") }}
                    </ActionButton>
                </template>
            </AppNavigationItem>

            <AppNavigationItem :title="t('news', 'Explore')"
                icon="icon-link"
                :to="{ name: 'explore' }">
                <template #counter>
                    <CounterBubble>35</CounterBubble>
                </template>
            </AppNavigationItem>
        </ul>
    </AppNavigation>
</template>

<script>

import AppNavigation from '@nextcloud/vue/dist/Components/AppNavigation'
import AppNavigationNew from '@nextcloud/vue/dist/Components/AppNavigationNew'
import AppNavigationItem from '@nextcloud/vue/dist/Components/AppNavigationItem'
import AppNavigationNewItem from '@nextcloud/vue/dist/Components/AppNavigationNewItem'
// import AppNavigationCounter from '@nextcloud/vue/dist/Components/AppNavigationCounter'
import CounterBubble from '@nextcloud/vue/dist/Components/CounterBubble'
import ActionButton from '@nextcloud/vue/dist/Components/ActionButton'
import AddFeed from './AddFeed.vue'

export default {
    components: {
        AppNavigation,
        AppNavigationNew,
        AppNavigationItem,
        AppNavigationNewItem,
        // AppNavigationCounter,
        CounterBubble,
        ActionButton,
        AddFeed,
    },
    data: () => {
        return {
            showAddFeed: false,
        }
    },
    computed: {
        folders() {
            return this.$store.state.folders
        },
    },
    created() {
        // TODO?
    },
    methods: {
        newFolder(value) {
            const folderName = value.trim()
            const folder = { name: folderName }
            this.$store.dispatch('addFolder', { folder })
        },
        deleteFolder(folder) {
            this.$store.dispatch('deleteFolder', { folder })
            window.location.reload(true)
        },
        showShowAddFeed() {
            this.showAddFeed = true
        },
        closeShowAddFeed() {
            this.showAddFeed = false
        },
        alert(msg) {
            window.alert(msg)
        },
    },
}
</script>